Você está na página 1de 511

1 Publicao 1756-RM003C-PT-P - Novembro 2000

Resumo das Alteraes


Introduo
Informaes Atualizadas
Este documento contm as seguintes alteraes::
Estas instrues: Consulte:
Acesso ao objeto AXIS (Eixo) 3-33
Acesso ao objeto CONTROLLERDEVICE 3-42
Comparao (CMP) 4-2
Diviso (DIV) 5-15
Mdulo (MOD) 5-19
Comparao e Busca de Arquivo (FSC) (grfico atualizado da instruo) 7-19
Cpia de Arquivo Sncrona (CPS) 7-30
A verso desse documento contm informaes novas e atualizadas.
Publicao 1756-RM003C-PT-P - Novembro 2000
2 Resumo das Alteraes
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Localizador de Instruo
Onde Encontrar uma
Instruo
Use este localizador para encontrar detalhes de referncia sobre as
instrues do Logix (as instrues em cinza esto disponveis em
outros manuais) . Este localizador tambm lista as linguagens de
programao que esto disponveis para as instrues.
Se o localizador listar: A instruo est documentada em:
um nmero de pgina este manual
controle de processo Manual de Referncia do Conjunto de Instrues dos Inversores e
Controle de Processo dos Controladores Logix5000 ,
publicao 1756-RM006
posicionamento Logix5000 Controllers Motion Instruction Set Reference Manual,
publicao 1756-RM007
Instruo: Local: Linguagens:
ABL 16-5 lgica ladder
ABS 5-29 lgica ladder
bloco de funo
ACB 16-7 lgica ladder
ACL 16-9 lgica ladder
ACS 13-14 lgica ladder
bloco de funo
adio 5-6 lgica ladder
bloco de funo
AFI 10-17 lgica ladder
AHL 16-11 lgica ladder
ALM controle de
processo
bloco de funo
AND 6-17 lgica ladder
bloco de funo
ARD 16-14 lgica ladder
ARL 16-17 lgica ladder
ASN 13-11 lgica ladder
bloco de funo
ATN 13-16 lgica ladder
bloco de funo
AVE 7-39 lgica ladder
AWA 16-21 lgica ladder
AWT 16-24 lgica ladder
BAND controle de
processo
bloco de funo
BNOT controle de
processo
bloco de funo
BOR controle de
processo
bloco de funo
BRK 11-5 lgica ladder
BSL 8-2 lgica ladder
BSR 8-6 lgica ladder
BTD 6-10 lgica ladder
BTDT 6-13 bloco de funo
BTR (tipo MSG) 3-2 lgica ladder
BTW (tipo MSG) 3-2 lgica ladder
BXOR controle de
processo
bloco de funo
CLR 6-16 lgica ladder
CMP 4-2 lgica ladder
COP 7-30 lgica ladder
COS 13-5 lgica ladder
bloco de funo
CPT 5-2 lgica ladder
CTD 2-27 lgica ladder
CTU 2-23 lgica ladder
CTUD 2-31 bloco de funo
D2SD controle de
processo
bloco de funo
D3SD controle de
processo
bloco de funo
DDT 12-10 lgica ladder
DEDT controle de
processo
bloco de funo
Instruo: Local: Linguagens:
Publicao 1756-RM003C-PT-P - Novembro 2000
2 Localizador de Instruo
Instruo: Local: Linguagem:
DFF controle de
processo
bloco de funo
DIV 5-15 lgica ladder
bloco de funo
DTR 12-18 lgica ladder
ESEL controle de
processo
bloco de funo
EQU 4-6 lgica ladder
bloco de funo
FAL 7-7 lgica ladder
FBC 12-2 lgica ladder
FFL 8-10 lgica ladder
FGEN controle de
processo
bloco de funo
FFU 8-16 lgica ladder
FLL 7-35 lgica ladder
FOR 11-2 lgica ladder
FRD 15-12 lgica ladder
bloco de funo
FSC 7-19 lgica ladder
GEQ 4-10 lgica ladder
bloco de funo
GRT 4-13 lgica ladder
bloco de funo
GSV 3-30 lgica ladder
HLL controle de
processo
bloco de funo
HPF controle de
processo
bloco de funo
INTG controle de
processo
bloco de funo
JKFF controle de
processo
bloco de funo
JMP 10-2 lgica ladder
JSR 10-4 lgica ladder
bloco de funo
LBL 10-2 lgica ladder
LDL2 controle de
processo
bloco de funo
LDLG controle de
processo
bloco de funo
LEQ 4-16 lgica ladder
bloco de funo
LES 4-19 lgica ladder
bloco de funo
LFL 8-22 lgica ladder
LFU 8-28 lgica ladder
LIM 4-22 lgica ladder
bloco de funo
LN 14-2 lgica ladder
bloco de funo
LOG 14-4 lgica ladder
bloco de funo
LPF controle de
processo
bloco de funo
MAAT posicionamento lgica ladder
MAFR posicionamento lgica ladder
MAG posicionamento lgica ladder
MAH posicionamento lgica ladder
MAHD posicionamento lgica ladder
MAJ posicionamento lgica ladder
MAM posicionamento lgica ladder
MAPC posicionamento lgica ladder
MAR posicionamento lgica ladder
MAS posicionamento lgica ladder
MASD posicionamento lgica ladder
MASR posicionamento lgica ladder
MATC posicionamento lgica ladder
MAVE controle de
processo
bloco de funo
MAW posicionamento lgica ladder
MAXC controle de
processo
bloco de funo
MCCP posicionamento lgica ladder
MCD posicionamento lgica ladder
MCR 10-13 lgica ladder
MDF posicionamento lgica ladder
MDO posicionamento lgica ladder
MDR posicionamento lgica ladder
MDW posicionamento lgica ladder
Instruo: Local: Linguagem:
Publicao 1756-RM003C-PT-P - Novembro 2000
Localizador de Instruo 3
Instruo: Local: Linguagem:
MGSD posicionamento lgica ladder
MGSR posicionamento lgica ladder
MGSP posicionamento lgica ladder
MINC controle de
processo
bloco de funo
MOD 5-19 lgica ladder
bloco de funo
MOV 6-2 lgica ladder
MRAT posicionamento lgica ladder
MRHD posicionamento lgica ladder
MRP posicionamento lgica ladder
MSF posicionamento lgica ladder
MSG 3-2 lgica ladder
MSO posicionamento lgica ladder
MSTD controle de
processo
bloco de funo
MUL 5-12 lgica ladder
bloco de funo
MUX controle de
processo
bloco de funo
MVM 6-4 lgica ladder
MVMT 6-7 bloco de funo
NEG 5-26 lgica ladder
bloco de funo
NEQ 4-32 lgica ladder
bloco de funo
NOP 10-18 lgica ladder
NOT 6-29 lgica ladder
bloco de funo
NTCH controle de
processo
bloco de funo
ONS 1-8 lgica ladder
OR 6-21 lgica ladder
bloco de funo
OSF 1-13 lgica ladder
OSFI 1-17 bloco de funo
OSR 1-10 lgica ladder
OSRI 1-15 bloco de funo
OTE 1-5 lgica ladder
OTL 1-6 lgica ladder
OTU 1-7 lgica ladder
PI controle de
processo
bloco de funo
PID 12-21 lgica ladder
PIDE controle de
processo
bloco de funo
PMUL controle de
processo
bloco de funo
POSP controle de
processo
bloco de funo
RAD 15-5 lgica ladder
bloco de funo
RES 2-35 lgica ladder
RESD controle de
processo
bloco de funo
RET 10-4 e11-6 lgica ladder
bloco de funo
RLIM controle de
processo
bloco de funo
RMPS controle de
processo
bloco de funo
RTO 2-10 lgica ladder
RTOR 2-20 bloco de funo
SBR 10-4 lgica ladder
bloco de funo
SCL controle de
processo
bloco de funo
SCRV controle de
processo
bloco de funo
SEL controle de
processo
bloco de funo
SETD controle de
processo
bloco de funo
SIN 13-2 lgica ladder
bloco de funo
SNEG controle de
processo
bloco de funo
SOC controle de
processo
bloco de funo
SQI 9-2 lgica ladder
SQL 9-12 lgica ladder
Instruo: Local: Linguagem:
Publicao 1756-RM003C-PT-P - Novembro 2000
4 Localizador de Instruo
Instruo: Local: Linguagem:
STD 7-47 lgica ladder
SUB 5-9 lgica ladder
bloco de funo
TAN 13-8 lgica ladder
bloco de funo
TOD 15-8 lgica ladder
bloco de funo
TOF 2-6 lgica ladder
TOFR 2-17 bloco de funo
TON 2-2 lgica ladder
TONR 2-14 bloco de funo
TOT controle de
processo
bloco de funo
TRN 15-15 lgica ladder
bloco de funo
UID 10-15 lgica ladder
UIE 10-11 lgica ladder
UPDN controle de
processo
bloco de funo
XIC 1-1 lgica ladder
XIO 1-3 lgica ladder
XOR 6-25 lgica ladder
bloco de funo
XPY 14-7 lgica ladder
bloco de funo
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Prefcio
Introduo
Este manual um dos diversos documentos de instruo baseado em Logix.
Quem Deve Utilizar este
Manual
Este documento fornece ao programador detalhes sobre cada
instruo disponvel para um controlador baseado em Logix. Voc j
deve estar familiarizado de como o controlador baseado em Logix
armazena e processa dados.
Os programadores novos devem ler todos os detalhes sobre uma
instruo antes de us-la. Os programadores experientes podem
consultar as informaes sobre as instrues para verificar os detalhes.
Tarefa/Meta: Documentos:
Programao do controlador para aplicaes
sequenciais
Manual de Referncia Geral do Conjunto de Instrues dos Controladores Logix5000,
publicao 1756-RM003
Programao do controlador para aplicaes
de processo ou inversores
Manual de Referncia do Conjunto de Instrues dos Inversores e Controle de
Processo , publicao 1756-RM006
Programao do controlador para aplicaes
de posicionamento
Logix5000 Controllers Motion Instruction Set Reference Manual,
publicao 1756-RM007
Importao de um arquivo de texto ou tags
em um projeto
Manual de Referncia de Exportao/Importao do Controlador Logix5000,
publicao 1756-6.8.4PT
Exportao de um projeto ou tags para um
arquivo texto
Converso de uma aplicao CLP-5 ou SLC
500 para uma aplicao Logix5000
Manual de Referncia do Controlador Logix5550 para Converso da Lgica do CLP-5
ou SLC500 para a Lgica do Logix5000, publicao 1756-6.8.5PT
Voc est aqui
Publicao 1756-RM003C-PT-P - Novembro 2000
2 Prefcio
Objetivo do Manual
Este manual fornece uma descrio de cada instruo neste formato.
Essa seo: Fornece este tipo de informao:
Nome da instruo identifica a instruo
define se a instruo de entrada ou de sada
Operandos de Lgica
Ladder
lista todos os operandos da instruo se esta estiver disponvel na Lgica Ladder
exibe um instruo inicial
Operandos do bloco de
funo
lista todos os operandos da instruo se esta estiver disponvel no bloco de funo
exibe um bloco de funo inicial
Os pinos mostrados no bloco de funo inicial so somente pinos bsicos. A tabela de
operandos lista todos os pinos possveis para um bloco de funo.
Estrutura da insturo lista os valores e os bits de status de controle da instruo, se houver
Descrio descreve o uso da instruo
define quaisquer diferenas quando a instruo estiver habilitada e desabilitada, se
apropriado
Flags de Status Aritmtico: define se a instruo interfere ou no nos flags de status aritmtico
consulte o apndice Atributos Comuns
Condies de Falha: define se a instruo gera falhas graves ou de advertncia
se necessrio, define o cdigo e o tipo da falha
Execuo de Lgica Ladder Se disponvel na Lgica Ladder, define os detalhes de como a instruo opera durante:
pr-varredura
entrada da condio da linha for falsa
entrada da condio da linha for verdadeira
Exemplo de Lgica Ladder Se disponvel na Lgica Ladder, fornece pelo menos um exemplo de programao
inclui uma descrio explicando cada exemplo
Execuo do bloco de
funo
Se disponvel no bloco de funo, define os detalhes de como a instruo opera durante:
pr-varredura
primeira varredura da instruo
primeira operao da instruo
EnableIn falso
EnableIn verdadeiro
Exemplo do bloco de
funo
Se disponvel no bloco de funo, fornece pelo menos um exemplo de programao
inclui uma descrio explicando cada exemplo
Publicao 1756-RM003C-PT-P - Novembro 2000
Prefcio 3
Os cones a seguir ajudam a identificar as informaes especficas da
linguagem:
Informaes Comuns para
Todas as Instrues
O conjunto de instrues do Logix5000 possui alguns atributos comuns:
Convenes e Termos
Relacionados
Energizar e desenergizar (zerar)
Este manual usa energizar e desenergizar para definir o status de bits
(booleanos) e valores (no booleanos):
Se um operando ou parmetro suporta mais do que um tipo de dados,
os tipos de dados em negrito indicam os tipos de dados timos. Uma
instruo executa mais rapidamente e requer menos memria se todos
os operandos da instruo usam o mesmo tipo de dado timo,
geralmente DINT ou REAL.
Este cone: Indica esta linguagem de
programao:
Lgica Ladder
bloco de funo
Para obter esta
informao:
Consulte este apndice
atributos comuns apndice Atributos Comuns define:
flags de status aritmtico:
tipos de dados
palavras-chaves
atributos do bloco de
funo
apndice Atributos de Bloco de Funo define:
controle do programa e operador
modos de temporizao
Este termo: Significa:
energizar o bit est energizado em 1 (ON)
um valor est energizado em um nmero diferente de
zero
desenergizar o bit est desenergizado em 0 (OFF)
todos os bits em um valor so desenergizados em 0
Publicao 1756-RM003C-PT-P - Novembro 2000
4 Prefcio
Condio de linha de Lgica Ladder
O controlador avalia as instrues de lgica ladder com base na condio
da linha que antecede a instruo (entrada da condio da linha). Com
base na entrada da condio da linha e na instruo, o controlador define
a condio da linha seguindo a instruo (sada da condio da linha)
que, por sua vez, afeta qualquer instruo subseqente.
Se a condio da entrada da linha para uma instruo de entrada for
verdadeira, o controlador avalia a instruo e energiza a condio da
sada da linha com base nos resultados da instruo. Se a instruo
avaliar em verdadeira, a condio da sada da linha verdadeira; se a
instruo avaliar em falsa, a condio da sada da linha falsa.
O controlador tambm efetua a pr-varredura das instrues. A
pr-varredura uma varredura especial de todas as rotinas no
controlador. O controlador efetua a varredura de todas as rotinas e
sub-rotinas principais durante a pr-varredura, mas ignora os saltos
que poderiam pular a execuo das instrues. 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 a pr-varredura de instrues de Lgica
Ladder para resetar as E/S no retentivas e os valores internos.
Durante a pr-varredura, os valores de entrada no so atuais e as
sadas no so escritas. As condies a seguir geram a pr-varredura:
Passagem de modo de Programa para Operao
Entrada automtica no modo de Operao de uma condio de
energizao.
A pr-varredura no ocorre para um programa quando:
O programa se torna determinado enquanto o controlador est
operando.
O programa no determinado quando o controlador entra no
modo de Operao.
instruo de entrada
condio da entrada da linha
instruo de sada
condio da sada da linha
Publicao 1756-RM003C-PT-P - Novembro 2000
Prefcio 5
Estados do bloco de funo
O controlador avalia as instrues do bloco de funo baseado no
estado de diferentes condies.
Toda instruo do bloco de funo tambm inclui os parmetros
EnableIn e EnableOut:
as instrues do bloco de funo executam normalmente
quando o EnableIn energizado.
Quando o EnableIn desenergizado, a instruo do bloco de
funo executa a lgica da pr-varredura, a lgica da
ps-varredura ou apenas pula a execuo do algoritmo normal.
O EnableOut espelha o EnableIn, porm, se a execuo do
bloco de funo detecta uma condio de overflow, o
EnableOut tambm desenergizado.
a execuo do bloco de funo reinicia onde parou quando o
EnableIn passa de desenergizado para energizado. Porm
existem algumas instrues de bloco de funo que especificam
funcionalidade especial, como re-inicializao, quando o
EnableIn passa de desenergizado para energizado. Para
instrues do bloco de funo com parmetros baseados no
tempo, sempre quando o modo de temporizao estiver no
Oversample, a instruo sempre reiniciar onde parou quando o
EnableIn passa de desenergizado para energizado.
Se o parmetro EnableIn no estiver conectado, a instruo sempre
executa como normal e o EnableIn se mantm energizado. Se
desenergizar o EnableIn, este se alterar para energizar na prxima
vez que a instruo executar.
Condio Possvel: Descrio:
pr-varredura A pr-varredura para as rotinas do bloco de funo igual a das rotinas de Lgica Ladder. A
nica diferena que o parmetro EnableIn para cada instruo do bloco de funo
desenergizada durante a pr-varredura.
primeira varredura da
instruo
A primeira varredura da instruo se refere primeira vez que uma instruo executada
aps pr-varredura. O controlador usa a primeira varredura da instruo para ler as
entradas em corrente e determinar o estado apropriado em que se deve estar.
primeira operao da
instruo
A primeira operao da instruo se refere primeira vez que a instruo executa com uma
nova instncia de estrutura de dados. O controlador usa a primeira operao da instruo
para gerar coeficientes e outros armazenamentos de dados que no se alteram para um
bloco de funo aps o descarregamento inicial.
Publicao 1756-RM003C-PT-P - Novembro 2000
6 Prefcio
IMPORTANTE
Ao programar o bloco de funo, limite a amplitude das unidades
de medida para +/-10
+/-15
pois os clculos de ponto flutuante
interno so feitos atravs de um nico ponto flutuante de preciso.
As unidades de medida fora desta amplitude podem resultar em
perda de preciso se os resultados ficarem prximos s limitaes
do nico ponto flutuante de preciso (+/-10
+/-38
).
Publicao 1756-RM003C-PT-P - Novembro 2000
Prefcio 7
Notas:
Publicao 1756-RM003C-PT-P - Novembro 2000
8 Prefcio
i Publicao 1756-RM003C-PT-P - Novembro 2000
Sumrio
Captulo 1
Instrues Binrias
(XIC, XIO, OTE, OTL, OTU, ONS,
OSR, OSF, OSRI, OSFI)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Examinar Se Desenergizado (XIC) . . . . . . . . . . . . . . . . . . . 1-1
Examinar Se Energizado (XIO) . . . . . . . . . . . . . . . . . . . . . 1-3
Energizar Sada
(OTE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5
Energizar Sada com Reteno (OTL) . . . . . . . . . . . . . . . . . 1-6
Desenergizar Sada com Reteno (OTU) . . . . . . . . . . . . . . 1-7
Monoestvel (ONS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
Monoestvel com Borda de Subida (OSR) . . . . . . . . . . . . . 1-10
Monoestvel com Borda de Descida (OSF). . . . . . . . . . . . . 1-13
Monoestvel com Borda de Subida com Entrada (OSRI) . . . 1-15
Monoestvel com Borda de Descida com Entrada (OSFI) . . 1-17
Captulo 2
Instrues do Temporizador e do
Contador
(TON, TOF, RTO, TONR, TOFR,
RTOR, CTU, CTD, CTUD, RES)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
Temporizador de Energizao (TON). . . . . . . . . . . . . . . . . 2-2
Temporizador de Desenergizao (TOF) . . . . . . . . . . . . . . 2-6
Temporizador Retentivo Ligado (RTO) . . . . . . . . . . . . . . . . 2-10
Temporizador de Energizao com Reset (TONR) . . . . . . . 2-14
Temporizador de Desenergizao com Reset (TOFR) . . . . . 2-17
Temporizador Retentivo Energizado com Reset (RTOR) . . . 2-20
Contagem Crescente (CTU) . . . . . . . . . . . . . . . . . . . . . . . . 2-23
Contagem Decrescente (CTD) . . . . . . . . . . . . . . . . . . . . . . 2-27
Contagem Crescente/Decrescente (CTUD) . . . . . . . . . . . . . 2-31
Reset (RES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-35
Captulo 3
Instrues de Entrada/Sada
(MSG, GSV, SSV)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
Mensagem (MSG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
Cdigos de Erro MSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8
Cdigos de erro do ControlLogix (CIP) . . . . . . . . . . . . . 3-8
Cdigos de erros estendidos do ControlLogix . . . . . . . . 3-9
Cdigos de erro do CLP e SLC (.ERR) . . . . . . . . . . . . . . 3-10
Cdigos de erro estendiddos do CLP e SLC (.EXERR) . . 3-11
Cdigos de erro de Block-Transfer . . . . . . . . . . . . . . . . 3-12
Cdigos de erro do Logix5550 . . . . . . . . . . . . . . . . . . . 3-13
Cdigos de erros estendidos do Logix5550 . . . . . . . . . . 3-13
Especificao dos Detalhes de Configurao (Guia Configuration)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14
Especificao de Mensagens CIP. . . . . . . . . . . . . . . . . . 3-15
Uso de mensagens CIP genricas para resetar os mdulos de
E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16
Especificao das mensagens do CLP-5. . . . . . . . . . . . . 3-18
Especificao de Mensagens do SLC . . . . . . . . . . . . . . . 3-19
Especificao das mensagens de block-transfer . . . . . . . 3-20
Publicao 1756-RM003C-PT-P - Novembro 2000
ndice ii
Especificao das mensagens do CLP-3. . . . . . . . . . . . . 3-21
Especificao das mensagens do CLP-2. . . . . . . . . . . . . 3-22
Exemplos de Configurao MSG . . . . . . . . . . . . . . . . . . . . 3-23
Especificaes dos Detalhes de Comunicao (Guia Communication)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-24
Especificao de um percurso de conexo . . . . . . . . . . 3-24
Especificao de um mtodo de comunicao: . . . . . . . 3-28
Seleo de uma opo de cache: . . . . . . . . . . . . . . . . . 3-29
Obteno do Valor do Sistema (GSV) e Definio do Valor do
Sistema (SSV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30
Objetos GSV/SSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-32
Acesso ao objeto AXIS (Eixo) . . . . . . . . . . . . . . . . . . . . 3-33
Acesso ao objeto CONTROLLER . . . . . . . . . . . . . . . . . 3-42
Acesso ao objeto CONTROLLERDEVICE . . . . . . . . . . . . 3-42
Acesso ao objeto CST. . . . . . . . . . . . . . . . . . . . . . . . . . 3-44
Acesso ao objeto DF1 . . . . . . . . . . . . . . . . . . . . . . . . . 3-45
Acesso ao objeto FAULTLOG . . . . . . . . . . . . . . . . . . . . 3-48
Acesso ao objeto MESSAGE . . . . . . . . . . . . . . . . . . . . . 3-48
Acesso ao objeto MODULE . . . . . . . . . . . . . . . . . . . . . 3-51
Acesso ao objeto MOTIONGROUP . . . . . . . . . . . . . . . 3-52
Acesso ao objeto PROGRAM . . . . . . . . . . . . . . . . . . . . 3-53
Acesso ao objeto ROUTINE . . . . . . . . . . . . . . . . . . . . . 3-54
Acesso ao objeto SERIALPORT . . . . . . . . . . . . . . . . . . . 3-54
Acesso ao objeto TASK . . . . . . . . . . . . . . . . . . . . . . . . 3-56
Acesso ao objeto WALLCLOCKTIME . . . . . . . . . . . . . . . 3-57
Exemplo de Programao GSV/SSV . . . . . . . . . . . . . . . . . . 3-58
Obteno de informaes de falha . . . . . . . . . . . . . . . . 3-58
Configurao de flags de habilitao e desabilitao . . . 3-59
Captulo 4
Instrues de Comparao
(CMP, EQU, GEQ, GRT, LEQ, LES,
LIM, MEQ, NEQ)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1
Comparao (CMP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
expresses CMP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
Operadores Vlidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
Formatao de expresses . . . . . . . . . . . . . . . . . . . . . . 4-5
Determinao da seqncia de operao . . . . . . . . . . . 4-6
Igual a (EQU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
Maior ou Igual a (GEQ). . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10
Maior que (GRT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13
Menor ou Igual a (LEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . 4-16
Menor Que (LES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19
Limite (LIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22
Mscara Igual a (MEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27
Insero de um valor de mscara imediato . . . . . . . . . . 4-28
Diferente de (NEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
Publicao 1756-RM003C-PT-P - Novembro 2000
ndice iii
Captulo 5
Instrues Matemticas/Clculo
(CPT, ADD, SUB, MUL, DIV, MOD,
SQR, NEG, ABS)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
Clculo (CPT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
Operadores vlidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Formatao de expresses . . . . . . . . . . . . . . . . . . . . . . 5-4
Determinao da seqncia de operao . . . . . . . . . . . 5-5
Adio (ADD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6
Subtrao (SUB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
Multiplicao (MUL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-12
Diviso (DIV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15
Mdulo (MOD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19
Raiz Quadrada (SQR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-23
Negao (NEG). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26
Valor Absoluto (ABS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-29
Captulo 6
Instrues de Movimentao/
Lgica
(MOV, MVM, BTD, MVMT, BTDT,
CLR, AND, OR, XOR, NOT)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Movimentao (MOV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2
Movimentao Mascarada (MVM). . . . . . . . . . . . . . . . . . . . 6-4
Insero de um valor de mscara imediato . . . . . . . . . . 6-5
Movimentao Mascarada com Target (MVMT). . . . . . . . . . 6-7
Distribuio do Campo do Bit (BTD) . . . . . . . . . . . . . . . . . 6-10
Distribuio do Campo do Bit com Target (BTDT) . . . . . . . 6-13
Zeramento (CLR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16
Bitwise AND (AND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17
Bitwise OR (OR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21
Bitwise Exclusive OR (XOR) . . . . . . . . . . . . . . . . . . . . . . . 6-25
Bitwise NOT (NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-29
Captulo 7
Instrues de Arquivo/Diversos
(FAL, FSC, COP, FLL, AVE, SRT,
STD)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Seleo do Modo de Operao . . . . . . . . . . . . . . . . . . . . . 7-1
Modo All (Todos) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Modo Numerical (numrico) . . . . . . . . . . . . . . . . . . . . 7-3
Modo Incremental (incremento) . . . . . . . . . . . . . . . . . 7-5
Arquivamento Aritmtico e Lgico (FAL) . . . . . . . . . . . . . . 7-7
expresses FAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-17
Operadores vlidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-17
Expresses de formatao . . . . . . . . . . . . . . . . . . . . . . 7-18
Determinao da seqncia de operao . . . . . . . . . . . 7-18
Comparao e Busca de Arquivo (FSC) . . . . . . . . . . . . . . . 7-19
Expresses FSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-27
Operadores vlidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-28
Formatao das expresses . . . . . . . . . . . . . . . . . . . . . 7-28
Determinao da seqncia de operao . . . . . . . . . . . 7-29
Publicao 1756-RM003C-PT-P - Novembro 2000
ndice iv
Cpia de Arquivo(COP)
Cpia de Arquivo Sncrona (CPS). . . . . . . . . . . . . . . . . . . . 7-30
Preenchimento de Arquivo (FLL) . . . . . . . . . . . . . . . . . . . . 7-35
Mdia de Arquivo (AVE) . . . . . . . . . . . . . . . . . . . . . . . . . . 7-39
Classificao de Arquivo (SRT) . . . . . . . . . . . . . . . . . . . . . 7-43
Desvio Padro do Arquivo (STD) . . . . . . . . . . . . . . . . . . . 7-47
Captulo 8
Instrues de Deslocamento/
Matriz (Arquivo)
(BSL, BSR, FFL, FFU, LFL, LFU)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
Deslocamento de Bit para a Esquerda (BSL). . . . . . . . . . . . 8-2
Deslocamento de Bit para a Direita (BSR) . . . . . . . . . . . . . 8-6
Carga FIFO (FFL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10
Descarga FIFO (FFU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-16
Carga LIFO (LFL). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-22
Descarga LIFO (LFU). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-28
Captulo 9
Instrues de Seqenciador
(SQI, SQO, SQL)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
Entrada do Sequenciador (SQI) . . . . . . . . . . . . . . . . . . . . . 9-2
Insero de um valor de mscara imediato . . . . . . . . . . 9-3
Utilizao de SQI sem SQO . . . . . . . . . . . . . . . . . . . . . 9-6
Sada do Sequenciador (SQO) . . . . . . . . . . . . . . . . . . . . . . 9-7
Insero de um valor de mscara imediato . . . . . . . . . . 9-8
Utilizao de SQI com SQO . . . . . . . . . . . . . . . . . . . . . 9-11
Reset da posio de SQO. . . . . . . . . . . . . . . . . . . . . . . 9-11
Carga do Sequenciador (SQL) . . . . . . . . . . . . . . . . . . . . . . 9-12
Captulo 10
Instrues de Controle de
Programa
(JMP, LBL, JSR, RET, SBR, TND,
MCR, UID, UIE, AFI, NOP)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1
Salto para Label (JMP)
Label (LBL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
Salto para Sub-rotina (JSR)
Sub-rotina (SBR)
Retorno (RET). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4
Fim Temporrio (TND) . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11
Rearme do Controle Mestre (MCR). . . . . . . . . . . . . . . . . . 10-13
Desabilitao da Interrupo pelo Usurio (UID)
Habilitao da Interrupo pelo Usurio (UIE) . . . . . . . . . 10-15
Instruo Sempre Falsa (AFI) . . . . . . . . . . . . . . . . . . . . . . 10-17
Sem Operao (NOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-18
Captulo 11
Instrues For/Break
(FOR, BRK, RET)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1
For (FOR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2
Break (BRK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-5
Publicao 1756-RM003C-PT-P - Novembro 2000
ndice v
Retorno (RET). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-6
Captulo 12
Instrues Especiais
(FBC, DDT, DTR, PID)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1
Comparao de Bit de Arquivo (FBC) . . . . . . . . . . . . . . . . 12-2
Seleo do modo de busca. . . . . . . . . . . . . . . . . . . . . . 12-4
Deteco de Diagnstico (DDT) . . . . . . . . . . . . . . . . . . . 12-10
Seleo do modo de busca. . . . . . . . . . . . . . . . . . . . . 12-12
Dados Transicionais (DTR) . . . . . . . . . . . . . . . . . . . . . . . 12-18
Insero de uma valor de mscara imediato . . . . . . . . 12-19
Proporcional, Integral e Derivativo (PID) . . . . . . . . . . . . . 12-21
Configurao de uma Instruo PID. . . . . . . . . . . . . . . . . 12-26
Especificao do ajuste . . . . . . . . . . . . . . . . . . . . . . . 12-27
Especificao da configurao . . . . . . . . . . . . . . . . . . 12-27
Especificao de alarmes . . . . . . . . . . . . . . . . . . . . . . 12-28
Especificao de converso de escala . . . . . . . . . . . . . 12-29
Utilizao das Instrues PID. . . . . . . . . . . . . . . . . . . . . . 12-29
Windup anti-reset e transferncia ininterrupta de manual para
automtico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-31
Temporizao da instruo PID . . . . . . . . . . . . . . . . . 12-32
Reinicializao ininterrupta. . . . . . . . . . . . . . . . . . . . . 12-35
Polarizao derivativa . . . . . . . . . . . . . . . . . . . . . . . . 12-36
Configurao da zona morta. . . . . . . . . . . . . . . . . . . . 12-37
Uso da limitao de sada. . . . . . . . . . . . . . . . . . . . . . 12-37
Feedforward ou polarizao da sada (bias) . . . . . . . . 12-38
Malhas em cascata . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-38
Controle de um ndice . . . . . . . . . . . . . . . . . . . . . . . . 12-38
Teoria PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-40
processo PID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-40
processo PID com malhas mestre/escravo. . . . . . . . . . 12-40
Captulo 13
Instrues Trigonomtricas
(SIN, COS, TAN, ASN, ACS, ATN)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1
Seno (SIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-2
Co-seno (COS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-5
Tangente (TAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-8
Arco Seno (ASN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-11
Arco Co-seno (ACS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-14
Arco Tangente (ATN) . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-16
Captulo 14
Instrues Matemticas
Avanadas
(LN, LOG, XPY)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1
Log Natural (LN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-2
Base Log de 10 (LOG). . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-4
X Elevado Potncia de Y (XPY) . . . . . . . . . . . . . . . . . . . 14-7
Publicao 1756-RM003C-PT-P - Novembro 2000
ndice vi
Captulo 15
Instrues de Converso
Matemtica
(DEG, RAD, TOD, FRD, TRN)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-1
Graus (DEG). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-2
Radianos (RAD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-5
Converso para BCD (TOD) . . . . . . . . . . . . . . . . . . . . . . . 15-8
Converso para Inteiro (FRD) . . . . . . . . . . . . . . . . . . . . . 15-12
Truncagem (TRN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-15
Captulo 16
Instrues de Porta Serial ASCII
(ABL, ACB, ACL, AHL, ARD, ARL,
AWA, AWT)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1
Cdigos de Erro ASCII . . . . . . . . . . . . . . . . . . . . . . . . . 16-4
Teste ASCII Para Linha do Buffer (ABL) . . . . . . . . . . . . . . . 16-5
Caracteres ASCII no Buffer (ACB) . . . . . . . . . . . . . . . . . . . 16-7
Remoo de Buffer e da Fila ASCII (ACL). . . . . . . . . . . . . . 16-9
Linhas ASCII Handshake (AHL) . . . . . . . . . . . . . . . . . . . . 16-11
Leitura ASCII (ARD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-14
Linha de Leitura ASCII (ARL) . . . . . . . . . . . . . . . . . . . . . . 16-17
Anexar Leitura ASCII (AWA) . . . . . . . . . . . . . . . . . . . . . . 16-21
Escrita ASCII (AWT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-24
Apndice A
Atributos Comuns Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
Valores Imediatos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
Converses de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
SINT ou INT para DINT . . . . . . . . . . . . . . . . . . . . . . . . A-3
Inteiro para REAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-5
DINT para SINT para INT. . . . . . . . . . . . . . . . . . . . . . . A-5
REAL para um inteiro. . . . . . . . . . . . . . . . . . . . . . . . . . A-6
Apndice B
Atributos de Bloco de Funo Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1
Dados Retentivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1
Ordem de Execuo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2
Respostas de Bloco de Funo para Condies de Overflow B-5
Modos de Temporizao . . . . . . . . . . . . . . . . . . . . . . . . . . B-5
Parmetros comuns de instruo para modos de temporizao
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-7
Caractersticas dos modos de temporizao. . . . . . . . . . B-9
Controle de Programa/pelo Operador . . . . . . . . . . . . . . . B-10
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 1
Instrues Binrias
(XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Introduo
Use as instrues binrias (tipo rel) para monitorar e controlar o
status dos bits.
Examinar Se
Desenergizado (XIC)
A instruo XIC examina os dados binrios para ver se esto
energizados.
Operandos de Lgica
Ladder:
Se voc quiser: Use esta instruo: Consulte
pgina:
habilitar as sadas quando o bit estiver energizado XIC 1-1
habilitar as sadas quando o bit for desenergizado XIO 1-3
energizar o bit OTE 1-5
energizar um bit (retentivo) OTL 1-6
desenergizar um bit (retentivo) OTU 1-7
energizar as sadas para uma varredura cada vez
que uma linha se torna verdadeira
ONS 1-8
energizar o bit para uma varredura cada vez que
uma linha se torna verdadeira
OSR 1-10
energizar o bit para uma varredura cada vez que
uma linha se torna falsa
OSF 1-13
energizar um bit para uma varredura toda vez que
o bit de entrada for energizado no bloco de funo
OSRI 1-15
energizar um bit para uma varredura toda vez que
o bit de entrada for desenergizado no bloco da
funo
OSFI 1-17
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
dados
binrios
BOOL tag bit para ser testado
Publicao 1756-RM003C-PT-P - Novembro 2000
1-2 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Operandos de Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo XIC examina os dados binrios para ver se esto
energizados.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo da Lgica
Ladder:
Exemplo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
examinar dados
binrios
dado binrio = 0
dado binrio = 1
sada da condio da linha
energizada quando falsa
sada da condio da linha
energizada quando
verdadeira
entrada da condio da linha for verdadeira
fim
Se limit_switch_1 estiver energizado, isto habilitar a prxima
instruo (a sada da condio da linha verdadeira).
Se S:V estiver energizado (indica que um overflow ocorreu), isto
habilitar a prxima instruo (a sada da condio da linha
verdadeira).
exemplo 1
exemplo 2
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-3
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Examinar Se Energizado
(XIO)
A instruo XIO examina os dados binrios para ver se foram
desenergizados.
Operandos de Lgica
Ladder
Operandos de Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo XIO examina os dados binrios para ver se foram
desenergizados.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
dados
binrios
BOOL tag bit para ser testado
Publicao 1756-RM003C-PT-P - Novembro 2000
1-4 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Execuo da Lgica
Ladder :
Exemplo da Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
examinar dados
binrios
dado binrio = 0
dado binrio = 1
sada da condio da linha
energizada quando verdadeira
sada da condio da linha
energizada quando falsa
entrada da condio da linha for verdadeira
fim
Se limit_switch_2 for desenergizado, isto habilitar a prxima
instruo (a sada da condio da linha verdadeira).
Se S:V for desenergizado (indica que nenhum overflow ocorreu),
isto habilitar a prxima instruo (a sada da condio da linha
verdadeira).
exemplo 1
exemplo 2
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-5
Energizar Sada
(OTE)
A instruo OTE energiza ou desenergiza o dado binrio.
Operandos de Lgica
Ladder :
Operandos de Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a instruo OTE est habilitada, o controlador energiza o
dado binrio. Quando a instruo OTE est desabilitada, o
controlador desenergiza o dado binrio.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder :
Exemplo de Lgica
Ladder :
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
dados
binrios
BOOL tag bit para ser energizado ou desenergizado
Condio: Ao:
pr-varredura O dado binrio est desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O dado binrio est desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O dado binrio est energizado.
A sada da condio da linha est definida como verdadeira.
Quando habilitada, a instruo OTE energiza (acende) light_1. Quando desabilitada, a instruo OTE desenergiza (apaga) light_1.
Publicao 1756-RM003C-PT-P - Novembro 2000
1-6 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Energizar Sada com
Reteno (OTL)
A instruo OTL energiza (com reteno) o dado binrio.
Operandos de Lgica
Ladder :
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo OTL energiza o dado binrio. O dado
binrio permanece energizado at ser desenergizado, geralmente por
uma instruo OTU. Quando desabilitada, a instruo OTL no muda
o status do dado binrio.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder :
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
dados
binrios
BOOL tag bit para ser energizado
Condio: Ao:
pr-varredura O dado binrio no modificado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O dado binrio no modificado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O dado binrio est energizado.
A sada da condio da linha est definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-7
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Desenergizar Sada com
Reteno (OTU)
A instruo OTU desenergiza (com reteno) o dado binrio.
Operandos de Lgica
Ladder :
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo OTU desenergiza o dado binrio.
Quando desabilitada, a instruo OTU no muda o status do
dado binrio.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Quando habilitada, a instruo OTL energiza light_2. Este bit permanece energizado
at ser desenergizado, geralmente por uma instruo OTU.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
dados
binrios
BOOL tag bit para ser desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
1-8 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Execuo de Lgica
Ladder :
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Monoestvel (ONS)
A instruo ONS habilita ou desabilita o restante da linha,
dependendo do status do bit de armazenamento.
Operandos de Lgica
Ladder :
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura O dado binrio no modificado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O dado binrio no modificado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O dado binrio est desenergizado.
A sada da condio da linha est definida como verdadeira.
Quando habilitada, a instruo OTU desenergizalight_2.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
bit de
armazenam
ento
BOOL tag bit de armazenamento interno
armazena a entrada da condio da linha
desde a ltima vez que a instruo
foi executada
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-9
Descrio: Quando habilitada e o bit de armazenamento est desenergizado, a
instruo ONS habilita o restante da linha. Quando habilitada ou
quando o bit de armazenamento est energizado, a instruo ONS
desabilita o restante da linha.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder :
Condio: Ao:
pr-varredura O bit de armazenamento est energizado para prevenir um disparo invlido durante a
primeira varredura.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit de armazenamento desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira
fim
examinar o bit de
armazenamento
bit de armazenamento
= 0
bit de armazenamento = 1
bit de armazenamento est
energizado
sada da condio da linha
energizada quando verdadeira
bit de armazenamento
permanece energizado
sada da condio da linha
energizada quando falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
1-10 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Exemplo de Lgica
Ladder :
Geralmente, voc antecede a instruo ONS com uma instruo de
entrada porque realiza a varredura da instruo ONS quando a mesma
est habilitada e quando est desabilitada para que a mesma opere
corretamente. Uma vez que a instruo ONS est habilitada, a
condio de entrada de linha deve ser desenergizada ou o bit de
armazenamento deve ser desenergizado para a instruo ONS ser
habilitada novamente.
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Monoestvel com Borda de
Subida (OSR)
A instruo OSR energiza ou desenergiza o bit de sada, dependendo
do status do bit de armazenamento.
Operandos de Lgica
Ladder :
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como OSRI,
consulte a pgina 1-15.
Em qualquer varredura para a qual o limit_switch_1 est desenergizado ou o storage_1 est energizado, esta linha no tem efeito. Em qualquer
varredura para a qual o limit_switch_1 est energizado e o storage_1 est desenergizado, a instruo ONS energiza o storage_1 e a instruo ADD
incrementa a soma (ADD) em 1. Durante o perodo em que o limit_switch_1 permanece energizado, a soma permanece no mesmo valor. O
limit_switch_1 deve ir de desenergizado para energizado novamente para que a soma seja incrementada novamente.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
bit de
armazenam
ento
BOOL tag bit de armazenamento interno
armazena a entrada da condio da linha
desde a ltima vez que a instruo
foi executada
bit de sada BOOL tag bit para ser energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-11
Descrio: Quando habilitada e o bit de armazenamento est desenergizado, a
instruo OSR energiza o bit de sada. Quando habilitada e o bit de
armazenamento est energizado ou quando desabilitada, a instruo
OSR desenergiza o bit de sada
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
entrada da condio da
bit de armazenamento
bit de sada
a instruo
executada
instruo resetada durante a prxima
execuo de varredura
Publicao 1756-RM003C-PT-P - Novembro 2000
1-12 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Execuo de Lgica
Ladder :
Exemplo de Lgica
Ladder :
Condio: Ao:
pr-varredura O bit de armazenamento est energizado para prevenir um disparo invlido durante a
primeira varredura.
O bit de sada desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit de armazenamento desenergizado.
O bit de sada no modificado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira
fim
examinar o bit de
armazenamento
bit de armazenamento = 0
bit de armazenamento = 1
bit de armazenamento est
energizado
bit de sada energizado
sada da condio da linha
energizada quando verdadeira
bit de armazenamento
permanece energizado
bit de sada desenergizado
sada da condio da linha
energizada quando verdadeira
Cada vez que limit_switch_1 vai de desenergizado para energizado, a instruo OSR energiza o output_bit_1 e a instruo ADD incrementa a soma
em 5. Durante o perodo em que olimit_switch_1 permanece energizado, a soma permanece no mesmo valor. O limit_switch_1 deve ir de
desenergizado para energizado novamente para que a soma seja incrementada novamente. Voc pode usar o output_bit_1 em mltiplas linhas para
disparar outras operaes.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-13
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como OSRI,
consulte a pgina 1-15.
Monoestvel com Borda de
Descida (OSF)
A instruo OSF energiza ou remove o bit de sada, dependendo do
status do bit de armazenamento.
Operandos de Lgica
Ladder :
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como OSFI,
consulte a pgina 1-17.
Descrio: Quando desabilitada e o bit de armazenamento est energizado, a
instruo OSF energiza o bit de sada. Quando desabilitada e o bit de
armazenamento est desenergizado, ou quando habilitada, a instruo
OSF remove o bit de sada.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
bit de
armazenam
ento
BOOL tag bit de armazenamento interno
armazena a entrada da condio da linha
desde a ltima vez que a instruo
foi executada
bit de sada BOOL tag bit para ser energizado
entrada da
bit de
bit de sada
a instruo
executada
instruo resetada
durante a prxima
execuo de varredura
Publicao 1756-RM003C-PT-P - Novembro 2000
1-14 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Execuo de Lgica
Ladder :
Exemplo de Lgica
Ladder :
Condio: Ao:
pr-varredura O bit de armazenamento desenergizado para prevenir um disparo invlido durante a
primeira varredura.
O bit de sada desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit de armazenamento energizado.
O bit de sada desenergizado.
A sada da condio da linha est definida como verdadeira.
entrada da condio da linha for falsa
fim
examinar o bit de
armazenamento
bit de
armazenamento = 0
bit de armazenamento = 1
bit de armazenamento
permanece desenergizado
bit de sada desenergizado
sada da condio da linha
energizada quando falsa
bit de armazenamento
desenergizado
bit de sada energizado
sada da condio da linha
energizada quando falsa
Cada vez que o limit_switch_1 vai de energizado para desenergizado, a instruo OSF energiza o output_bit_2 e a instruo ADD incrementa a soma
em 5. Durante o perodo que limit_switch_1 permanece desenergizado, a soma permanece no mesmo valor. O limit_switch_1 deve ir de energizado
para desenergizado novamente para que a soma seja incrementada novamente. Voc pode usar o output_bit_2 em linhas mltiplas para disparar
outras operaes.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-15
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como OSFI,
consulte a pgina 1-17.
Monoestvel com Borda de
Subida com Entrada (OSRI)
A instruo OSRI energiza o bit de sada para um ciclo de execuo
quando o bit de entrada passa de desenergizado para energizado.
Operandos de Lgica
Ladder :
Esta instruo est disponvel em lgica ladder como OSR, consulte a
pgina 1-10.
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag de bloco FBD_ONESHOT estrutura Estrutura OSRI
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial energizado
InputBit BOOL Bit de entrada. Isto equivalente condio de linha para a instruo OSR de lgica ladder .
o valor inicial desenergizado
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
OutputBit BOOL Bit de sada
Publicao 1756-RM003C-PT-P - Novembro 2000
1-16 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Descrio: Quando o InputBit energizado e o InputBit
n-1
desenergizado, a
instruo OSRI energiza o OutputBit. Quando o InputBit
n-1

energizado ou quando o bit de entrada desenergizado, a instruo
OSRI desenergiza o OutputBit.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder :
Esta instruo est disponvel em lgica ladder como OSR, consulte a
pgina 1-10.
Execuo do Bloco de
Funo:
InputBit
OutputBit
40048
a instruo
executada
instruo resetada durante a prxima
execuo de varredura
InputBit
n-1
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeiro a instruo efetua a varredura InputBit
n-1
energizado.
primeiro a instruo efetua a operao InputBit
n-1
energizado.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado Em uma transio de desenergizado para energizado do EnableIn, a instruo energiza o
InputBit
n-1
.
A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-17
Exemplo do Bloco de
Funo:
Monoestvel com Borda de
Descida com Entrada (OSFI)
A instruo OSFI energiza OutputBit para um ciclo de execuo
quando o InputBit passa de energizado para desenergizado.
Operandos de Lgica
Ladder :
Esta instruo est disponvel na lgica ladder como OSF, consulte a
pgina 1-13.
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Quando limit_switch1 vai de desenergizado para energizado, a instruo OSRI energiza o OutputBit para uma varredura. Quando o OutputBit
energizado, ele habilita a instruo ADD para incrementar o valor em SourceB pelo valor em SourceA.
Bloco de Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag de bloco FBD_ONESHOT estrutura Estrutura OSFI
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial energizado
InputBit BOOL Bit de entrada. Isto equivalente condio de linha para a instruo OSF de lgica ladder
o valor inicial desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
1-18 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Parmetros de sada
Descrio: Quando o InputBit desenergizado e o InputBit
n-1
energizado, a
instruo OSFI energiza o OutputBit. Quando o InputBit
n-1

desenergizado ou quando o InputBit energizado, a instruo OSFI
desenergiza o bit de sada.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder :
Esta instruo est disponvel na lgica ladder como OSF, consulte a
pgina 1-13.
Execuo do Bloco de
Funo:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
OutputBit BOOL Bit de sada
InputBit
OutputBit
a instruo
executada
a instruo resetada durante a prxima
execuo de varredura
InputBit
n-1
40047
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeiro a instruo efetua a varredura InputBit
n-1
desenergizado.
primeiro a instruo efetua a operao InputBit
n-1
desenergizado.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado Em uma transio de desenergizado para energizado do EnableIn, a instruo
desenergiza o InputBit t
n-1.
A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-19
Exemplo do Bloco de
Funo:
Quando o limit_switch1 vai de energizado para desenergizado, a instruo OSFI energiza o OutputBit para uma varredura. Quando o OutputBit
energizado, ele habilita a instruo ADD para incrementar o valor em SourceB pelo valor em SourceA.
Publicao 1756-RM003C-PT-P - Novembro 2000
1-20 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 2
Instrues do Temporizador e do Contador
(TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Introduo
Operaes de controle de temporizador e contador baseado no tempo
ou nmero de eventos.
A base de tempo para todos os temporizadores 1 ms.
Se voc quiser: Use esta instruo: Consulte
pgina:
cronometrar em quanto tempo o
temporizador habilitado
TON 2-2
cronometrar em quanto tempo um
temporizador desabilitado
TOF 2-6
acumular tempo RTO 2-10
determinar por quanto tempo o temporizador
habilitado com um reset incorporado ao
bloco de funo
TONR 2-14
determinar por quanto tempo um
temporizador desabilitado com um reset
incorporado ao bloco de funo
TOFR 2-17
acumular tempo com o reset incorporado ao
bloco de funo
RTOR 2-20
realizar uma contagem crescente CTU 2-23
realizar um contagem decrescente CTD 2-27
realizar uma contagem crescente e
decrescente no bloco de funo
CTUD 2-31
resetar um temporizador ou contador RES 2-35
Publicao 1756-RM003C-PT-P - Novembro 2000
2-2 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador de
Energizao (TON)
A instruo TON um temporizador no retentivo que acumula
tempo quando a instruo habilitada (entrada da condio da linha
verdadeira).
Operandos de Lgica
Ladder :
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como TONR,
consulte a pgina 2-14.
Descrio: Quando habilitada, a instruo TON acumula tempo at que:
a instruo 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.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Temporizador TIMER tag estrutura do temporizador
Preset DINT imediato Quanto tempo para retardar (tempo
acumulado)
Accum DINT imediato totalizar os ms que o temporizador contou
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo TON est habilitada.
.TT BOOL O bit de temporizao indica que uma operao de temporizao est em andamento.
.DN BOOL O bit executado est definido quando .ACC .PRE.
.PRE DINT O valor pr-selecionado especifica o valor (unidades de 1 ms) que o acumulador deve atingir
antes da instruo energizar o bit .DN.
.ACC DINT O valor acumulado especifica a quantidade de milissegundos que transcorreram desde o
momento em que a instruo TON foi habilitada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-3
Quando a instruo TON desabilitada, o valor .ACC
desenergizado.
Flags de Status Aritmtico: no afetados
Condies de Falha:
entrada da condio da linha
bit habilitado do temporizador (.EN)
bit executado do temporizador (.DN)
valor acumulado do temporizador
bit de temporizao do temporizador (.TT)
valor pr-programado
0
16649
temporizador no
atingiu o valor .PRE
em
atraso
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
.PRE < 0 4 34
.ACC < 0 4 34
Publicao 1756-RM003C-PT-P - Novembro 2000
2-4 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Execuo da Lgica
Ladder :
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .TT desenergizado.
O bit .DN desenergizado.
O valor .ACC desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .EN desenergizado.
O bit .TT desenergizado.
O bit .DN desenergizado.
O valor .ACC desenergizado.
A sada da condio 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 condio da linha for verdadeira
examinar .ACC
.ACC .PRE
.ACC < .PRE
bit .TT energizado
.ACC = .ACC + (current_time - last_time)
last_time = current_time
valor .ACC
renova
no
sim
.ACC = 2.147.483.647
examinar bit .EN
bit .EN = 0
bit .EN = 1
sada da condio da linha
definida como verdadeira
fim
.DN energizado
bit .TT desenergizado
bit .EN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-5
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como TONR,
consulte a pgina 2-14.
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 instruo TON seja desabilitada. Se o limit_switch_1 for
desenergizado enquanto otimer_1 est cronometrando, o light_2 desenergiza.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-6 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador de
Desenergizao (TOF)
A instruo TOF um temporizador no retentivo que acumula tempo
quando a instruo est habilitada (entrada da condio da linha
falsa).
Operandos de Lgica
Ladder :
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como TOFR,
consulte a pgina 2-17.
Descrio: Quando habilitada, a instruo TOF acumula tempo at que:
a instruo 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.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Temporizador TIMER tag estrutura do temporizador
Preset DINT imediato Quanto tempo para retardar (tempo
acumulado)
Accum DINT imediato totalizar os ms que o temporizador contou
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo TOF est habilitada.
.TT BOOL O bit de temporizao indica que uma operao de temporizao est em andamento.
.DN BOOL O bit executado est definido quando .ACC .PRE.
.PRE DINT O valor pr-determinado especifica o valor (unidades de 1 ms) que o acumulado deve atingir
antes da instruo desenergizar o bit .DN.
.ACC DINT O valor acumulado especifica o nmero de milissegundos que transcorreram desde o
momento em que a instruo TOF foi habilitada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-7
Quando a instruo TOF desabilitada, o valor .ACC desenergizado.
Flags de Status Aritmtico: no afetados
Condies de Falha:
entrada da condio da linha
bit habilitado do temporizador (.EN)
bit executado do temporizador (.DN)
valor acumulado do temporizador (.ACC)
bit de temporizao do temporizador (.TT)
0 16650
temporizador no atingiu o valor .PRE
valor pr-programado
atraso na
desenergizao
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
.PRE < 0 4 34
.ACC < 0 4 34
Publicao 1756-RM003C-PT-P - Novembro 2000
2-8 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Execuo de Lgica
Ladder :
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .TT desenergizado.
O bit .DN desenergizado.
O valor .ACC energizado para igualar-se ao valor .PRE.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN energizado.
O bit .TT desenergizado.
O bit .DN energizado.
O valor .ACC desenergizado.
A sada da condio da linha est definida como verdadeira.
examinar bit .DN
bit .DN = 0
bit .DN = 1
bit .EN desenergizado.
bit .TT energizado
last_time = current_time
entrada da condio da linha for falsa
examinar .ACC
.ACC .PRE
.ACC < .PRE
bit .TT energizado
.ACC = .ACC + (current_time - last_time)
last_time = current_time
valor .ACC
renova
no
sim
.ACC = 2.147.483.647
examinar bit .EN
bit .EN = 1
bit .EN = 0
sada de condio da linha
definida como falsa
fim
bit .DN desenergizado.
bit .TT desenergizado
bit .EN desenergizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-9
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como TOFR,
consulte a pgina 2-17.
Quando o limit_switch_2 desenergizado, o light_2 fica energizado durante 180 ms (otimer_2 est cronometrando). Quando o timer_2.acc atinge
180, o light_2 desenergiza e o light_3 energiza. O Light_3 permanece energizado at que a instruo TOF seja habilitada. Se olimit_switch_2for
energizado enquanto o timer_2 est cronometrando, o light_2 desenergiza.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-10 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador Retentivo
Ligado (RTO)
A instruo RTO um temporizador retentivo que acumula tempo
quando a instruo habilitada.
Operandos de Lgica
Ladder :
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como RTOR,
consulte a pgina 2-20.
Descrio: Quando habilitada, a instruo RTO acumula tempo at ser
desabilitada. Quando a instruo RTO desabilitada, ela retm o valor
ACC. Deve-se remover o valor .ACC, tipicamente com uma instruo
RES fazendo referncia mesma estrutura TIMER.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Temporizador TIMER tag estrutura do temporizador
Preset DINT imediato Quanto tempo para retardar (tempo
acumulado)
Accum DINT imediato quantidade de ms que o temporizador
contou
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo RTO est habilitada.
.TT BOOL O bit de temporizao indica que uma operao de temporizao est em andamento.
.DN BOOL O bit executado indica que .ACC .PRE.
.PRE DINT O valor pr-selecionado especifica o valor (unidades de 1 ms) que o acumulado deve atingir
antes da instruo energizar o bit .DN.
.ACC DINT O valor acumulado especifica o nmero de milissegundos que transcorreram desde o
momento em que a instruo RTO foi habilitada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-11
A base de tempo sempre 1 ms. Por exemplo, para um temporizador
de 2 segundos, insira 2000 para o valor .PRE.
Flags de Status Aritmtico: no afetados
Condies de Falha:
entrada da condio da linha
bit habilitado do temporizador (.EN)
bit executado do temporizador (.DN)
valor acumulado do temporizador (.ACC)
bit de temporizao do temporizador (.TT)
valor
pr-programado
0
16651
condio da linha que controla a instruo RES
temporizador no atingiu o valor .PRE
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
.PRE < 0 4 34
.ACC < 0 4 34
Publicao 1756-RM003C-PT-P - Novembro 2000
2-12 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Execuo Lgica
Ladder :
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .TT desenergizado.
O bit .DN desenergizado.
O valor .ACC no modificado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .EN desenergizado.
O bit .TT desenergizado.
O bit .DN no modificado.
O valor .ACC no modificado.
A sada da condio da linha definida como falsa.
examinar bit .DN
bit .DN = 1
bit .DN = 0
bit .EN est energizado
bit .TT est energizado
last_time = current_time
entrada da condio da linha for verdadeira
examinar .ACC
.ACC .PRE
.ACC < .PRE
bit .TT est energizado
.ACC = .ACC + (current_time - last_time)
last_time = current_time
valor .ACC
renova
no
sim
.ACC = 2.147.483.647
examinar bit .EN
bit .EN = 0
bit .EN = 1
sada da condio da linha
definida como verdadeira
fim
.DN energizado
bit .TT desenergizado
bit .EN est energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-13
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como RTOR,
consulte a pgina 2-20.
Quando o limit_switch_1 energizado, o light_1 fica ligado durante 180 ms (o timer_2 est cronometrando). Quando o timer_3.acc atinge 180, o
light_1 apaga e o light_2 acende. O Light_2 permanece at que o timer_3 seja resetado. Se o light_switch_1 for desenergizado enquanto o timer_3
est cronometrando, o light_1 permanece aceso. Quando o limit _switch_2 est energizado, a instruo RES reseta o timer_3 (remove os bits de
status e o valor .ACC).
Publicao 1756-RM003C-PT-P - Novembro 2000
2-14 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador de
Energizao com Reset
(TONR)
A instruo TONR um temporizador no retentivo que acumula
tempo quando TimerEnable energizado.
Operandos de Lgica
Ladder :
Esta instruo est disponvel em Lgica Ladder como duas
instrues separadas: TON (consulte a pgina 2-2) e RES (consulte a
pgina 2-35).
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag de bloco FBD_TIMER estrutura estrutura TONR
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial energizado
TimerEnable BOOL Se energizada, habilita o temporizador a operar e acumular tempo.
o valor inicial desenergizado
PRE DINT Valor pr-selecionado do temporizador. Este o valor em 1 unidade de milissegundo que o
ACC deve alcanar antes que a temporizao termine. Se invlido, a instruo energiza o bit
apropriado em Status e o temporizador no executa.
vlido = 0 ao nmero inteiro positivo mximo
Reset BOOL Solicitao para zerar o temporizador. Quando energizado, o temporizador zera.
o valor inicial desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-15
Parmetros de sada
Descrio: Quando habilitada, a instruo TONR acumula tempo at que:
a instruo TONR seja desabilitada
ACC PRE
A base de tempo sempre 1 ms. Por exemplo, para um temporizador
de 2 segundos, digite 2000 para o valor PRE.
Energize o parmetro de entrada Reset para resetar a instruo. Se
TimerEnable for energizado quando Reset energizado, a instruo
TONR inicia a temporizao novamente quando Reset for
desenergizado.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
ACC BOOL Tempo acumulado em milissegundos.
EN BOOL Sada habilitada de temporizador. indica que a instruo do temporizador est habilitada.
TT BOOL Sada de temporizao do temporizador. Quando energizado, uma operao de temporizao
est em progresso.
DN BOOL Sada da temporizao concluda. Indica quando o tempo acumulado for maior ou igual ao
valor pr-selecionado.
Status: DINT Status do bloco de funo.
InstructFault (Status.0) BOOL A instruo detectou um dos seguintes erros de execuo. Isto no um erro grave ou de
advertncia do controlador. Verifique os bits de status restantes para determinar o que
ocorreu.
PresetInv (Status.1) BOOL O valor pr-selecionado invlido.
TimerEnable
bit habilitado (EN)
bit executado de temporizador (DN)
valor acumulado do temporizador (ACC)
bit de temporizao do temporizador (TT)
valor pr-programado
0
16649
em
atraso
o temporizador no
alcanou o valor PRE
Publicao 1756-RM003C-PT-P - Novembro 2000
2-16 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Execuo de Lgica
Ladder :
Esta instruo est disponvel na Lgica Ladder como duas instrues
separadas: TON (consulte a pgina 2-2) e RES (consulte a pgina
2-35).
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo EN, TT e DN so desenergizados.
o valor ACC definido em 0.
primeira operao da instruo EN, TT e DN so desenergizados.
o valor ACC definido em 0.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado Quando o EnableIn efetua a transio de desenergizado para energizado, a instruo
inicializa como descrito para a primeira varredura da instruo.
A instruo executada.
EnableOut energizado.
reset Quando o parmetro de entrada Reset energizado, a instruo desenergiza EN, TT e
DN e define ACC = zero.
Para cada varredura cujo limit_switch1 energizado, a instruo TONR incrementa o valor ACC
pelo tempo transcorrido at que o valor ACC alcance o valor PRE. Quando ACC PRE, o parmetro
DN energizado, o que habilita a instruo do bloco de funo seguindo a instruo TONR.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-17
Temporizador de
Desenergizao com Reset
(TOFR)
A instruo TOFR um temporizador no retentivo que acumula
tempo quando TimerEnable desenergizado.
Operandos de Lgica
Ladder :
Esta instruo est disponvel na Lgica Ladder como duas instrues
separadas: TOF (consulte a pgina 2-6) e RES (consulte a pgina
2-35).
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag de bloco FBD_TIMER estrutura estrutura TOFR
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial energizado
TimerEnable BOOL Se desenergizado, habilita o temporizador para operar e acumular tempo.
o valor inicial desenergizado
PRE DINT Valor pr-selecionado do temporizador. Este o valor em unidades de 1 ms que o ACC deve
alcanar antes que a temporizao termine. Se invlido, as instrues energizam o bit
apropriado em Status e o temporizador no executa.
vlido = 0 ao inteiro positivo mximo
Reset BOOL Solicitao para zerar o temporizador. Quando energizado, o temporizador reseta.
o valor inicial desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
2-18 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Parmetros de sada
Descrio: Quando habilitada, a instruo TOFR acumula tempo at que:
a instruo TOFR seja desabilitada
ACC PRE
A base de tempo sempre 1 ms. Por exemplo, para um temporizador
de 2 segundos, digite 2000 para PRE value.
Energize o parmetro de entrada Reset para resetar a instruo. Se o
TimerEnable for desenergizado quando o Reset for energizado, a
instruo TOFR no inicia a temporizao novamente quando o Reset
for desenergizado.
Flags de Status Aritmtico: no afetados
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
ACC BOOL Tempo acumulado em milissegundos.
EN BOOL Sada habilitada pelo temporizador. Indica que a instruo do temporizador est habilitada.
TT BOOL Sada de temporizao do temporizador. Quando energizada, uma operao de temporizao
est em progresso.
DN BOOL Sada concluda de temporizao. Indica quando o tempo acumulado maior ou igual ao
pr-selecionado.
Status: DINT Status do bloco de funo.
InstructFault (Status.0) BOOL A instruo detectou um dos seguintes erros de execuo. Isto no um erro grave ou de
advertncia do controlador. Verifique os bits de status restantes para determinar o que
ocorreu.
PresetInv (Status.1) BOOL O valor pr-selecionado invlido.
TimerEnable
bit habilitado (EN)
bit executado do temporizador (DN)
valor acumulado do temporizador (ACC)
bit de temporizao do temporizador (TT)
0
atraso na
desenergizao
16650
o temporizador no atingiu o PRE value
valor pr-programado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-19
Condies de Falha: nenhuma
Execuo da Lgica
Ladder :
Esta instruo est disponvel na Lgica Ladder como duas instrues
separadas: TOF (consulte a pgina 2-6) e RES (consulte a pgina
2-35).
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo EN, TT e DN so desenergizados.
o valor ACC energizado para PRE.
primeira varredura da instruo EN, TT e DN so desenergizados.
o valor ACC energizado para PRE.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado Quando EnableIn faz a transio de desenergizado para energizado, a instruo se
inicializa como descrito para a primeira varredura da instruo.
A instruo executada.
EnableOut energizado.
reset Quando o parmetro de entrada Reset for energizado, a instruo desenergizar o EN,
TT e DN e definir o ACC = PRE. Note que isto diferente de usar uma instruo RES em
uma instruo TOF.
Cada varredura aps limit_switch1 desenergizada, a instruo TOFR incrementa o valor ACC atravs do
tempo transcorrido at que o valor ACC alcance o valor PRE. Quando ACC PRE, o parmetro DN
desenergizado, o que desabilita a instruo do bloco de funo que segue a instruo TOFR.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-20 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador Retentivo
Energizado com Reset
(RTOR)
A instruo RTOR um temporizador retentivo que acumula tempo
quando o TimerEnable energizado.
Operandos de Lgica
Ladder :
Esta instruo est disponvel na Lgica Ladder como duas instrues
separadas: RTO (consulte a pgina 2-10) e RES (consulte a pgina
2-35).
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag do bloco FBD_TIMER estrutura estrutura RTOR
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial energizado
TimerEnable BOOL Se energizado, habilita o temporizador para operar e acumular tempo.
o valor inicial desenergizado
PRE DINT Valor pr-selecionado do temporizador. Este o valor em unidades de 1 ms que o ACC deve
alcanar antes que a temporizao termine. Se invlida, a instruo energiza o bit apropriado
em Status e o temporizador no executa.
vlido = 0 ao inteiro positivo mximo
Reset BOOL Solicitao para resetar o temporizador. Quando energizado, o temporizador reseta.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-21
Parmetros de sada
Descrio: Quando habilitada, a instruo RTO acumula tempo at que seja
desabilitada. Quando a instruo RTO desabilitada, ela retm o valor
ACC. Deve-se desenergizar o valor ACC atravs da entrada Reset.
A base de tempo sempre 1 ms. Por exemplo, para um temporizador
de 2 segundos, digite 2000 para o PRE value.
Energize o parmetro de entrada Reset para resetar a instruo. Se o
TimerEnable for energizado quando o Reset for energizado, a instruo
RTOR inicia a temporizao novamente quando o Reset for desenergizado.
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
ACC DINT Tempo acumulado em milissegundos. Este valor retido at durante a desenergizao da
entrada TimerEnable. Isto torna o comportamento deste bloco diferente do bloco TONR.
EN BOOL Sada habilitada do temporizador. Indica que a instruo do temporizador habilitada.
TT BOOL Sada de temporizao do temporizador. Quando energizada, a operao de temporizao
est em progresso.
DN BOOL Sada de temporizao concluda. Indica quando o tempo acumulado superior ou igual ao
pr-selecionado.
Status: DINT Status do bloco de funo.
InstructFault (Status.0) BOOL Esta instruo detectou um dos seguintes erros de execuo. Esto no um erro grave ou de
advertncia do controlador. Verifique os bits de status restantes para determinar o que
ocorreu.
PresetInv (Status.1) BOOL O valor pr-selecionado invlido.
TimerEnable
bit habilitado (EN)
bit executado do temporizador (DN)
valor acumulado do temporizador (ACC)
bit de temporizao do temporizador (TT)
valor pr-programado
0
16651
Reset
o temporizador no alcanou o PRE value
Publicao 1756-RM003C-PT-P - Novembro 2000
2-22 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder :
Esta instruo est disponvel na Lgica Ladder como duas instrues
separadas: RTO (consulte a pgina 2-10) e RES (consulte a pgina
2-35).
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo EN, TT e DN so desenergizados
o valor ACC no alterado
primeira operao da instruo EN, TT e DN so desenergizados
o valor ACC no alterado
primeira operao do OLC EN, TT e DN so desenergizados
o valor ACC no alterado
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado Quando EnableIn faz a transio de desenergizado para energizado, a instruo
inicializa como descrito para a primeira varredura da instruo.
A instruo executada.
EnableOut energizado.
reset Quando o parmetro de entrada Reset for energizado, a instruo desenergiza EN, TT e
DN e define ACC = zero.
Para cada varredura cujo limit_switch1 energizado, a instruo RTOR incrementa o valor ACC
atravs do tempo transcorrido at que o valor ACC alcance o valor PRE. Quando ACC PRE, o
parmetro DN energizado, o que habilita a instruo do bloco de funo seguindo a instruo
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-23
Contagem Crescente (CTU)
A instruo CTU conta em ordem crescente.
Operandos de Lgica
Ladder :
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como CTUD,
consulte a pgina 2-31.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Contador COUNTER tag estrutura do contador
Preset DINT imediato valor mximo de contagem
Accum DINT imediato quantidade de vezes que o contador contou
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.CU BOOL O bit de habilitao do contador crescente indica que a instruo CTU est habilitada.
.DN BOOL O bit executado indica que .ACC .PRE.
.OV BOOL O bit de overflow 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 underflow 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 instruo
energizar o bit .DN.
.ACC DINT O valor acumulado especifica o nmero de transies que a instruo contou.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-24 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Descrio: Quando habilitada e o bit .CU estiver desenergizado, a instruo CTU
incrementa o contador em um. Quando habilitada e o bit .CU estiver
energizado ou quando desabilitada, a instruo CTU retm o seu valor
.ACC>
O valor acumulado continua a incrementar, mesmo depois que o bit
.DN energizado. Para remover o valor acumulado, use uma
instruo RES que se refira estrutura do contador ou escreva 0 no
valor acumulado.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
entrada da condio da linha
bit de contagem crescente (.CU)
bit executado de contagem crescente (.DN)
valor acumulado do contador (.ACC)
valor pr-programado
16636
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-25
Execuo de Ladder
Rel:
Condio: Ao:
pr-varredura O bit .CU est energizado para prevenir incrementos invlidos durante a primeira
varredura do programa.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .CU desenergizado.
A sada da condio da linha definida como falsa.
examinar bit .CU
bit .CU = 0
bit .CU = 1
entrada da condio da linha for verdadeira
valor .ACC renova
sim
no
examinar bit .UN
bit .UN = 0
bit .UN = 1
bit .CU est
energizado
.ACC = .ACC + 1
examinar bit .OV
bit .OV = 0
examinar bit .UN
bit .UN = 1
bit .UN = 0
bit .UN desenergizado
bit .DN desenergizado.
bit . OV desenergizado
bit . OV est energizado
examinar .ACC
.ACC .PRE
.ACC < .PRE
bit .DN est energizado.
sada da condio da linha
definida como verdadeira
fim
bit .OV = 1
bit .DN desenergizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-26 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como CTUD,
consulte a pgina 2-31.
Depois que o limit_switch_1 passa de desabilitado para habilitado 10 vezes, o bit .DN energizado e o light_1 acende. Se olimit_switch_1 continuar a
mudar de desabilitado para habilitado, o counter_1 continuar a incrementar a sua contagem e o bit .DN permanecer energizado. Quando o
limit_switch_2 estiver habilitado, a instruo RES resetar o counter_1 (desenergizar os bits de status e o valor .ACC) e o light_1 ser desligado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-27
Contagem Decrescente
(CTD)
A instruo CTD conta no sentido decrescente.
Operandos de Lgica
Ladder :
Estrutura:
Operandos de Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como CTUD,
consulte a pgina 2-31.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Contador COUNTER tag estrutura do contador
Preset DINT imediato valor mnimo de contagem
Accum DINT imediato quantidade de vezes que o contador contou
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.CD BOOL O bit de habilitao do contador decrescente indica que a instruo CTD est habilitada.
.DN BOOL O bit executado indica que .ACC .PRE.
.OV BOOL O bit de overflow 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 underflow 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 instruo
energizar o bit .DN.
.ACC DINT O valor acumulado especifica o nmero de transies que a instruo contou.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-28 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Descrio: A instruo CTD tipicamente usada com uma instruo CTU que
refere mesma estrutura do contador.
Quando habilitada e o bit .CD estiver removido, a instruo CTD
decrementa o contador em um. Quando habilitada e o bit .CD estiver
energizado ou quando desabilitada, a instruo CTD retm o seu valor
.ACC.
O valor acumulado continua a decrementar mesmo depois que o
bit .DN for energizado. Para remover o valor acumulado, use uma
instruo RES que se refira estrutura do contador ou escreva 0 no
valor acumulado.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
entrada da condio da linha
bit de habilitao de contagem decrescente (.CD)
bit executado de contagem decrescente (.DN)
valor acumulado do contador (.ACC)
valor pr-programado
16637
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-29
Execuo da Lgica
Ladder :
Condio: Ao:
pr-varredura O bit .CD est energizado para prevenir decrementos invlidos durante a primeira
varredura do programa.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .CD desenergizado.
A sada da condio da linha definida como falsa.
examinar bit .CD
bit .CD = 0
bit .CD = 1
entrada da condio da linha for verdadeira
valor .ACC
renova
sim
no
examinar bit .UN
bit .UN = 0
bit .UN = 1
bit .CD est
energizado
.ACC = .ACC - 1
examinar bit .OV
bit .OV = 0
examinar bit .OV
bit .OV = 1
bit .OV = 0
bit . OV desenergizado
bit .DN desenergizado.
bit .UN desenergizado
bit .UN est energizado
examinar .ACC
.ACC .PRE
bit .DN est energizado.
sada da condio da linha
definida como verdadeira
fim
bit .OV = 1
.ACC < .PRE
bit .DN desenergizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-30 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como CTUD,
consulte a pgina 2-31.
Um esteira transportadora traz peas para uma zona de buffer. Cada vez que uma pea entra, o limit_switch_1 habilitado e o counter_1
incrementa em 1. Cada vez que uma pea sai, o limit_switch_2 habilitado e o counter_1 decrementa em 1. Se houver 100 peas em uma zona
de buffer (o counter_1.dn estiver energizado), o conveyor_a liga e interrompe a operao da esteira, impedindo que mais peas sejam trazidas,
at que o buffer tenha espao.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-31
Contagem
Crescente/Decrescente
(CTUD)
A instruo CTUD faz a contagem crescente em um quando o
CUEnable faz a transio de desenergizado para energizado. Esta
instruo faz a contagem decrescente em um quando o CDEnable faz
a transio de desenergizado para energizado.
Operandos de Lgica
Ladder :
Esta instruo est disponvel em Lgica Ladder como instrues
separadas, CTU (pgina 2-23), CTD (pgina 2-27), e RES (pgina
2-35).
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag do bloco FBD_COUNTER estrutura estrutura CTUD
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial energizado
CUEnable BOOL Habilita a contagem crescente. Quando a entrada passa de desenergizada para energizada, o
acumulador faz a contagem crescente em um.
o valor inicial desenergizado
CDEnable BOOL Habilita a contagem decrescente. Quando a entrada passa de desenergizada para
energizada, o acumulador faz a contagem decrescente em um.
o valor inicial desenergizado
PRE DINT Valor pr-selecionado do contador. Este o valor que o valor acumulado deve alcanar antes
que o DN seja energizado.
vlido = qualquer inteiro
o valor inicial 0
Reset BOOL Solicita que o temporizador seja zerado. Quando energizado, o contador zera.
o valor inicial desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
2-32 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Parmetros de sada
Descrio: Quando habilitadas e o CUEnable est energizado, as instrues
CTUD incrementam o contador em um. Quando habilitada e o
CDEnable est energizado, a instruo CTUD decrementa o contador
em um.
Tanto o parmetro de entrada CUEnable como o CDEnable podem ser
alternados durante a mesma varredura. A instruo executa a
contagem crescente antes da decrescente.
Efetuando a contagem crescente
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
ACC DINT Valor acumulado.
CU BOOL Contagem crescente habilitada.
CD BOOL Contagem decrescente habilitada.
DN BOOL Contagem concluda. Energiza quando o valor acumulado for maior ou igual ao
pr-selecionado.
OV BOOL Overflow do contador. Indica que o contador excedeu o limite mximo de 2.147.483.647.
O contador ento reverte para 2.147.483.648 e inicia a contagem decrescente novamente.
UN BOOL Underflow do contador. Indica que o contador excedeu o limite inferior de 2.147.483.648.
O contador reverte para 2.147.483.647 e indica a contagem decrescente novamente.
CUEnable
bit de contagem crescente (CU)
bit executado de contagem crescente (DN)
valor acumulado do contador (ACC)
valor pr-programado
16636
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-33
Efetuando a contagem decrescente
Quando desabilitada, a instruo CTUD retm seu valor acumulado.
Energize o parmetro de entrada Reset para resetar a instruo.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder :
Esta instruo est disponvel na Lgica Ladder como trs instrues
separadas, CTU (pgina 2-23), CTD (pgina 2-27) e RES (pgina 2-35).
Execuo do Bloco de
Funo:
CDEnable
bit de contagem decrescente (CD)
bit executado de contagem decrescente (DN)
valor acumulado do contador (ACC)
valor pr-programado
16637
Condio: Ao:
pr-varredura No requer inicializao.
primeira varredura da instruo o CUEnable
n-1
e o CDEnable
n-1
esto energizados.
primeira operao da instruo o CUEnable
n-1
e o CDEnable
n-1
esto energizados.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado Em uma transio de desenergizado para energizado de EnableIn, a instruo energiza
CUEnable
n-1
e CDEnable
n-1
.
A instruo executada.
EnableOut energizado.
reset Quando energizada, a instruo desenergiza CUEnable
n-1
, CDEnable
n-1
, CU, CD, DN, OV e UN
e define ACC = zero.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-34 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Exemplo do Bloco de
Funo:
Quando limit_switch1 vai de desenergizado para energizado, o CUEnable energizado para uma
varredura e a instruo CTUD incrementa o valor ACC em 1. Quando ACC PRE, o parmetro DN
energizado, o que habilita a instruo do bloco de funo seguindo a instruo CTUD.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-35
Reset (RES)
A instruo RES reseta uma estrutura de TEMPORIZADOR,
CONTADOR ou CONTROLE .
Operandos de Lgica
Ladder :
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo RES desenergiza esses elementos:
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
estrutura TIMER
CONTROL
COUNTER
tag estrutura para reset
Ao usar a instruo RES
para um: A instruo desenergiza:
TIMER valor .ACC
bits de status de controle
COUNTER valor .ACC
bits de status de controle
CONTROL valor .POS
bits de status de controle
ATENO
!
Como a instruo RES desenergiza o valor .ACC, o
bit .DN e o bit .TT, no use a instruo RES para
resetar um temporizador TOF.
Publicao 1756-RM003C-PT-P - Novembro 2000
2-36 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Execuo de Lgica
Ladder :
Exemplo de Lgica
Ladder :
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A instruo RES reseta a estrutura especificada.
A sada da condio da linha est definida como verdadeira.
Exemplo: Descrio:
Quando habilitado, resete o timer_3.
Quando habilitado, resete o counter_1.
Quando habilitado, resete o control_1.
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 3
Instrues de Entrada/Sada
(MSG, GSV, SSV)
Introduo
As instrues de entrada/sada realizam a leitura ou escrevem do/para
o controlador ou um bloco de dados de/para outro mdulo em
outra rede.
Se voc quiser: Use esta instruo: Consulte pgina:
enviar dados de/para outro mdulo MSG 3-2
obter informaes de status do
controlador
GSV 3-30
definir informaes de status do
controlador
SSV 3-30
Publicao 1756-RM003C-PT-P - Novembro 2000
3-2 Instrues de Entrada/Sada (MSG, GSV, SSV)
Mensagem (MSG)
A instruo MSG realiza a leitura ou escreve de forma assncrona em
um bloco de dados para outro mdulo em uma rede.
Operandos de Lgica
Ladder :
Estrutura:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Controle de
mensagem
MESSAGE tag estrutura da mensagem
Mnemnico: Tipo de
Dados:
Descrio:
.FLAGS INT O membro .FLAGS fornece acesso aos membros de status (bits) em uma palavra de 16 bits.
Este bit: Corresponde a este membro:
2 .EW
4 .ER
5 .DN
6 .ST
7 .EN
8 .TO
9 .EN_CC
Importante: Enquanto uma MSG est habilitada, o reset dos bits de status MSG pode romper a
comunicao.
.ERR INT Se o bit .ER for energizado, a palavra de cdigo de erro identifica os cdigos de erro para a instruo MSG.
.EXERR INT A palavra de cdigo de erro estendido especifica as informaes de cdigo de erro adicionais para alguns
cdigos de erro.
.REQ_LEN INT O comprimento requisitado especifica quantas palavras a instruo de mensagem tentar transferir.
.DN_LEN INT O comprimento executado identifica quantas palavras realmente foram transferidas.
.EW BOOL O bit de espera habilitado est energizado quando o controlador detecta que um pedido de mensagem entrou
na fila. O controlador reseta o bit.EW quando o bit .ST estiver energizado.
.ER BOOL O bit de erro energizado quando o controlador detecta uma falha na transferncia. O bit .ER resetado na
prxima vez que a entrada da condio da linha passar de falsa para verdadeira.
.DN BOOL O bit executado energizado quando o ltimo pacote de mensagens for transferido com sucesso. O bit .DN
resetado na prxima vez que a entrada da condio da linha passar de falsa para verdadeira.
.ST BOOL O bit de partida energizado quando o controlador comear a executar a instruo MSG. O bit .ST resetado
quando o bit .DN ou o bit .ER for energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-3
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
.EN BOOL O bit habilitado energizado quando a entrada da condio da linha se tornar verdadeira e permanecer
energizada at que o bit .DN ou .ER for energizado e a entrada da condio da linha se tornar falsa. Se a
entrada da condio da linha se tornar falsa, mas os bits .DN e .ER forem desenergizados, o bit .EN
permanecer energizado.
.TO BOOL Se voc energizar o bit .TO manualmente, o controlador interrompe o processamento da mensagem e
energiza o bit .ER.
.EN_CC BOOL O bit habilitado do cache determina como controlar a conexo MSG. Consulte "Seleo de uma opo de
cache:" na pgina 3-29 As conexes para as instrues MSG que saem da porta serial no so copiadas
para o cache, mesmo que o bit .EN_CC seja energizado.
Mnemnico: Tipo de
Dados:
Descrio:
ATENO
!
O controlador processa os bits .ST, .EW, .DN e .DR de forma
assncrona para a varredura do programa. Para verificar estes
bits em lgica de diagrama ladder, copie as palavras .FLAGS
para um tag INT e verifique os bits a partir deste ponto. Caso
contrrio, problemas de temporizao podem invalidar a sua
aplicao com possveis danos ao equipamento e ferimentos
pessoais.
Publicao 1756-RM003C-PT-P - Novembro 2000
3-4 Instrues de Entrada/Sada (MSG, GSV, SSV)
Descrio A instruo MSG transfere os elementos dos dados. O tamanho de cada
elemento depende dos tipos de dados especificados e do tipo de
comando de mensagem usado.
conexo com .EN_CC = 1
entrada da condio da linha
bit .EW
conexo com .EN_CC = 0
41382
bit .ST
bit .DN ou .ER
bit .EN
1 2 3 4 5 6 7
Onde: Descrio:
1 entrada da condio da linha for verdadeira
.EN est energizado
.EW est energizado
a conexo est aberta*
2 a mensagem enviada
.ST est energizado
.EW desenergizado.
3 a mensagem foi executada ou apresentou erro e a entrada da
condio da linha falsa
.DN ou .ER est energizado
.ST desenergizado.
a conexo fechada (se .EN_CC = 0)
.EN desenergizado (porque a entrada da condio da linha falsa)
4 a entrada da condio da linha verdadeira e .DN ou .ER foi
energizado anteriormente
.EN est energizado
.EW est energizado
a conexo est aberta*
.DN ou .ER desenergizado
*O bit .EW no energizado se a mensagem no puder ser executada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-5
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
5 a mensagem enviada
.ST est energizado
.EW desenergizado.
6 a mensagem foi executada ou apresentou erro e a entrada da
condio da linha ainda verdadeira
.DN ou .ER est energizado
.ST desenergizado.
a conexo fechada (se .EN_CC = 0)
7 a entrada da condio da linha se torna falsa e .DN ou .ER
energizado
.EN desenergizado.
Onde: Descrio:
*O bit .EW no energizado se a mensagem no puder ser executada.
Publicao 1756-RM003C-PT-P - Novembro 2000
3-6 Instrues de Entrada/Sada (MSG, GSV, SSV)
Execuo de Lgica Ladder
:
Condio: Ao:
entrada da condio da linha for falsa
fim
sada da condio da linha
definida como falsa
examinar bit .EN
bit .EN = 1
bit .EN = 0
examinar o bit .EW
bit .EW = 1
bit .EW = 0
examinar o bit .ST
bit .ST = 1
bit .ST = 0
examinar bit .DN
bit .DN = 1
bit .DN = 0
examinar bit .DN
bit .DN = 1
bit .DN = 0
examinar bit .ER
bit .ER = 1
bit .ER = 0
bit .EN desenergizado.
examinar bit .ER
bit .ER = 1
bit .ER = 0
comando de
block-transfer
caminho vlido do
mdulo
sim no
no
executar pedido de
mensagem
bit .EW est energizado
conexo do mdulo
em funcionamento
no
sim
sim
bit .ER est energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-7
Condio: Ao:
entrada da condio da linha for verdadeira
fim
sada da condio da linha
definida como falsa
bit .EN = 0
examinar o bit .EW
bit .EW = 1
bit .EW = 0
examinar o bit .ST
bit .ST = 1
bit .ST = 0
examinar bit .DN
bit .DN = 1
bit .DN = 0
examinar bit .ER
bit .ER = 1
bit .ER = 0
comando de
block-transfer
caminho vlido do
mdulo
sim no
no
bits .EW, .ST, .TO, .DN e .ER so desenergizados
bit .EN est energizado
executar pedido de mensagem
bit .EW est energizado
conexo do mdulo
em funcionamento
no
sim
sim
bit .ER est energizado
examinar bit .EN
bit .EN = 1
examinar o bit .EW
bit .EW = 0
examinar o bit .ST
bit .ST = 0
bits .EW, .ST, .TO, .DN e .ER so
desenergizados
bit .EN est energizado
bit .EN est
energizado
bit .EW = 1
bit .ST = 1
Publicao 1756-RM003C-PT-P - Novembro 2000
3-8 Instrues de Entrada/Sada (MSG, GSV, SSV)
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Cdigos de Erro MSG
Os cdigos de erro dependem do tipo dos cdigos de erro do
ControlLogix (CIP) da instruo MSG
Cdigos de erro do ControlLogix (CIP)
Para os cdigos de erro do ControlLogix (CIP), o software de
programao nem sempre exibe a descrio completa.
Cdigo de erro
(hex):
Descrio: Display do software:
0001 Falha de conexo (consulte os cdigos de erro estendidos) igual descrio
0002 Recurso insuficiente igual descrio
0003 Valor invlido igual descrio
0004 Erro de sintaxe IOI (consulte os cdigos de erro estendidos) igual descrio
0005 Destino desconhecido, classe no suportada, instncia
indefinida ou elemento de estrutura indefinida (consulte os
cdigos de erro estendidos)
igual descrio
0006 Espao insuficiente no pacote igual descrio
0007 Perda de conexo igual descrio
0008 Servio no suportado igual descrio
0009 Erro no segmento de dados ou valor de atributo invlido igual descrio
000A Erro na lista de atributo igual descrio
000B Estado j existe igual descrio
000C Conflito no modelo do objeto igual descrio
000D Objeto j existe igual descrio
000E Atributo no configurvel igual descrio
000F Permisso negada igual descrio
0010 Conflito com o estado do dispositivo igual descrio
0011 A resposta no ser adequada igual descrio
0012 Fragmento primitivo igual descrio
0013 Dados de comando insuficientes igual descrio
0014 Atributo no suportado igual descrio
0015 Excesso de dados igual descrio
001A Pedido de ponte muito grande igual descrio
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-9
Cdigos de erros estendidos do ControlLogix
Estes so os cdigos de erros estendidos do ControlLogix (CIP). O
software no exibe texto para estes cdigos de erros. Estes so os
cdigos de erro estendidos para o cdigo de erro 0001.
001B Resposta da ponte muito grande igual descrio
001C Falta de lista de atributos igual descrio
001D Lista de atributos invlidos igual descrio
001E Erro no servio incorporado igual descrio
001F Falha relacionada conexo (consulte os cdigos de erro
estendidos)
igual descrio
0022 Resposta recebida invlida igual descrio
0025 Erro de segmento principal igual descrio
0026 Erro de IOI invlido igual descrio
0027 Atributo inesperado na lista igual descrio
0028 Erro na DeviceNet - Identificao de membro invlido igual descrio
0029 Erro na DeviceNet - membro no configurvel igual descrio
Cdigo de erro
(hex):
Descrio: Display do software:
Cdigo de
erro
estendido
(hex):
Descrio:
0100 Conexo em uso
0103 Transporte no suportado
0106 Conflito de Dispositivo de Armazenamento de
Configurao
0107 Conexo no encontrada
0108 Tipo de conexo invlida
0109 Tamanho de conexo invlida
0110 Mdulo no configurado
0111 EPR no suportado
0114 Mdulo errado
0115 Tipo de dispositivo errado
0116 Reviso errada
0118 Formato de configurao invlido
011A Aplicao fora das conexes
0203 Perodo de espera da conexo
0204 Perodo de espera de mensagem no conectada
0205 Erro de parmetro enviado no conectado
0206 Mensagem muito grande
0301 Sem espao de memria no buffer
0302 Largura de faixa no disponvel
0303 No h disponibilidade de screeners
0305 Correspondncia de assinatura
0311 Porta no disponvel
0312 Endereo de rede no disponvel
0315 Tipo de segmento invlido
0317 Conexo no programada
Cdigo de
erro
estendido
(hex):
Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-10 Instrues de Entrada/Sada (MSG, GSV, SSV)
Estes so os cdigos de erro estendidos para o cdigo de erro 001F.
Estes so os cdigos de erro estendidos para os cdigos de erro 0004 e
0005.
Cdigos de erro do CLP e SLC (.ERR)
Para os cdigos de erro do CLP e SLC, o software de programao nem
sempre exibe a descrio completa.
Cdigo de erro
estendido (hex):
Descrio:
0203 Perodo de espera da conexo
Cdigo de erro
estendido (hex):
Descrio:
0000 status estendido fora da memria
0001 status estendido fora dos exemplos
Cdigo de erro
(hex):
Descrio: Display do software:
0010 Comando ilegal ou formato do controlador local Conflito com o estado do dispositivo
0020 Mdulo de comunicao no est funcionando erro desconhecido
0030 N remoto est faltando, desconectado ou desligado erro desconhecido
0040 Controlador conectado, mas com falha (hardware) erro desconhecido
0050 Nmero de estao errado erro desconhecido
0060 Funo requisitada no est disponvel erro desconhecido
0070 Controlador est no modo de Programa erro desconhecido
0080 Arquivo de compatibilidade do controlador no existe erro desconhecido
0090 N remoto no consegue comandar o buffer erro desconhecido
00B0 Controlador est descarregando, portanto no pode ser
acessado
erro desconhecido
00F0 Erro de PCCC (consulte os cdigos de erro estendidos) erro desconhecido
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-11
Cdigos de erro estendiddos do CLP e SLC (.EXERR)
O software no exibe texto para estes cdigos de erros. Estes so os
cdigos de erro estendidos para o cdigo de erro 00F0.
Cdigo de
erro
estendido
(hex):
Descrio:
0001 Controlador converteu incorretamente o
endereo
0002 Endereo incompleto
0003 Endereo incorreto
0004 Formato ilegal do endereo - smbolo no
encontrado
0005 Formato ilegal do endereo - o smbolo tem o
valor 0 ou maior do que o nmero mximo de
caracteres suportados pelo dispositivo
0006 Arquivo de endereo no existe no controlador
alvo.
0007 Arquivo de destino muito pequeno para o
nmero de palavras solicitado.
0008 No consegue completar o pedido
Situao alterada durante operao com vrios
pacotes
0009 Dados ou arquivo muito grande
Memria no disponvel
000A Controlador alvo no consegue colocar as
informaes requisitadas em pacotes
000B Erro de privilgio; acesso negado
000C Funo requisitada no est disponvel
000D Pedido redundante
000E Comando no pode ser executado
000F Overflow; overflow do histograma
0010 Sem acesso
0011 Tipo de dados requisitados no corresponde
aos dados disponveis
0012 Parmetros de comando incorretos
0013 Referncia de endereo existe para uma rea
apagada
0014 Falha na execuo do comando por motivo
desconhecido
Overflow do histograma do CLP-3
0015 Erro na converso dos dados
0016 Scanner no est disponvel para comunicao
com um adaptador de gaveta 1771
0017 Adaptador no est disponvel para
comunicao com o mdulo
0018 Resposta do mdulo 1771 no foi vlida
0019 Etiqueta duplicada
001A Controlador que armazena a configurao do
arquivo ativo - o arquivo est sendo usado
001B Controlador que armazena a configurao do
programa ativo - algum est descarregando
dados ou fazendo edio online
001C Arquivo do disco est protegido contra
gravao ou no pode ser acessado (somente
offline)
001C Arquivo do disco est protegido contra
gravao ou no pode ser acessado (somente
offline)
001D O Arquivo do disco est sendo usado por outra
aplicativo
Atualizao no realizada (somente offline)
Cdigo de
erro
estendido
(hex):
Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-12 Instrues de Entrada/Sada (MSG, GSV, SSV)
Cdigos de erro de Block-Transfer
Estes so os cdigos de erro especficos para block-transfer no
ControlLogix.
Cdigo de erro
(hex):
Descrio: Display do software:
00D0 O scanner no recebeu uma resposta de block-transfer do mdulo de block-transfer dentro
de 3,5 s do pedido
erro desconhecido
00D1 O checksum da resposta de leitura no corresponde ao checksum do conjunto de dados erro desconhecido
00D2 O scanner solicitou uma leitura ou escrita, mas o mdulo de block-transfer forneceu uma
resposta contrria.
erro desconhecido
00D3 O scanner solicitou um comprimento e o mdulo de block-transfer respondeu com um
comprimento diferente.
erro desconhecido
00D6 O scanner recebeu uma resposta do mdulo de block-transfer, indicando que o pedido de
escrita apresentou falha.
erro desconhecido
00EA O scanner no foi configurado para comunicar-se com a gaveta que teria este mdulo de
block-transfer
erro desconhecido
00EB A ranhura lgica especfica no est disponvel para o tamanho de gaveta determinado erro desconhecido
00EC No momento, h um pedido de block-transfer em andamento e uma resposta requerida
antes que outro pedido possa ser iniciado
erro desconhecido
00ED O tamanho de pedido de block-transfer no est de acordo com os pedidos de tamanho
vlidos para block-transfer
erro desconhecido
00EE O tipo de pedido de block-transfer no est de acordo com o BT_READ ou BT_WRITE
previsto
erro desconhecido
00EF O scanner no conseguiu encontrar uma ranhura disponvel na tabela de block-transfer
para acomodar o pedido de block-transfer
erro desconhecido
00F0 O scanner recebeu um pedido para resetar os canais de E/S remota enquanto havia
block-transfers em aberto.
erro desconhecido
00F3 As filas para block-transfers remotos esto cheias erro desconhecido
00F5 Nenhum canal de comunicao est configurado para a ranhura ou gaveta solicitada erro desconhecido
00F6 Nenhum canal de comunicao est configurado para E/S remota erro desconhecido
00F7 O perodo de espera de block-transfer configurado na instruo encerrou a temporizao
antes da concluso
erro desconhecido
00F8 Erro no protocolo de block-transfer - block-transfer no solicitado erro desconhecido
00F9 Os dados de block-transfer foram perdidos devido a um canal de comunicao em ms
condies
erro desconhecido
00FA O mdulo de block-transfer solicitou um comprimento diferente daquele associado
instruo de block-transfer.
erro desconhecido
00FB O checksum dos dados de leitura do block-transfer estava errado erro desconhecido
00FC Houve uma transferncia invlida dos dados de escrita de block-transfer entre o adaptador
e o mdulo de block-transfer
erro desconhecido
00FD O tamanho do block-transfer mais o tamanho do ndice na tabela de dados de
block-transfer era maior do que o tamanho do arquivo da tabela de dados de block-transfer
erro desconhecido
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-13
Cdigos de erro do Logix5550
Estes so os cdigos de erro do Logix5550.
Cdigos de erros estendidos do Logix5550
Estes so os cdigos de erros estendidos do Logix5550. O software no
exibe texto para estes cdigos de erros. Estes so os cdigos de erro
estendidos para o cdigo de erro 00FF.
Cdigo de erro
(hex):
Descrio: Display do software:
00D0 Instncia de mapa indefinido erro desconhecido
00D1 Mdulo no est no estado de operao erro desconhecido
00FB Porta de mensagem no suportada erro desconhecido
00FC Tipo de dados no suportados pela mensagem erro desconhecido
00FD Mensagem no inicializada erro desconhecido
00FE Perodo de espera de mensagem erro desconhecido
00FF Erro geral (consulte os cdigos de erro estendidos) erro desconhecido
Cdigo de
erro
estendido
(hex):
Descrio:
2001 Excesso de IOI
2002 Valor deficiente para o parmetro
2018 Sinalizao rejeitada
201B Tamanho muito pequeno
201C Tamanho invlido
2100 Falha de privilgio
2101 Posio da chave seletora de modo invlida
2102 Senha invlida
2103 Sem emisso de senha
2104 Endereo fora da faixa
2105 Endereo e quantidade esto fora da faixa
2106 Dados em uso
2107 Tipo invlido ou no suportado
2108 Controlador no modo de carga ou descarga
2109 Tentativa de alterar o nmero das dimenses da
matriz
210A Nome invlido do smbolo
210B Smbolo no existe
210E Busca apresentou falha
210F Tarefa no pode ser iniciada
2110 No h condies de escrita (gravao)
2111 No h condies de leitura
2112 Rotina compartilhada que no pode ser editada
2113 Controlador no modo de falha
2114 Modo de operao inibido
Cdigo de
erro
estendido
(hex):
Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-14 Instrues de Entrada/Sada (MSG, GSV, SSV)
Especificao dos Detalhes
de Configurao (Guia
Configuration)
Depois de inserir a instruo MSG e especificar a estrutura MESSAGE,
use a janela Message Configuration no software de programao para
especificar os detalhes da mensagem.
Os detalhes de configurao dependem do tipo de mensagem
selecionado.
Clique aqui para configurar a instruo MSG
Se o dispositivo alvo for um: Selecione um dos seguintes tipos de
mensagens:
Consulte pgina:
Dispositivo ControlLogix ou mdulo de E/S
1756
leitura da tabela de dados CIP 3-15
escrita da tabela de dados CIP
CIP genrico
controlador CLP-5 leitura de tipo para CLP-5 3-18
escrita de tipo para CLP-5
leitura da faixa de palavras do CLP-5
escrita da faixa de palavras do CLP-5
controlador SLC leitura de tipo para SLC 3-19
leitura de tipo para SLC
Mdulo de block-transfer em uma rede de
E/S Remota Universal
leitura de block-transfer 3-20
escrita de block-transfer
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-15
Voce deve especificar essa informao de configurao:
Se voc especificar um tag na matriz do Logix550 como Source ou
Destination, especifique somente o nome do tag da matriz. No inclua
entre colchetes ou subscrito de posio.
Especificao de Mensagens CIP
Os tipos de mensagem CIP so determinados para transferir dados de
/para outros dispositivos do ControlLogix, como por exemplo, enviar
uma mensagem de um controlador Logix 5550 para outro.
Controlador CLP-3 leitura de tipo para CLP-3 3-21
escrita de tipo para CLP-3
leitura da faixa de palavra do CLP-3
escrita da faixa de palavra do CLP-3
Controlador CLP-2 leitura sem proteo do CLP-2 3-22
escrita sem proteo do CLP-2
No campo: Especifique
Source Element/Tag Se voc selecionar um tipo de mensagem de leitura, o Source Element o endereo de
dados que voc realizar a leitura no dispositivo alvo. Use a sintaxe de endereamento
do dispositivo alvo.
Se voc selecionar um tipo de mensagem de escrita, o Source Tag ser o tag do dado
no controlador Logix5550 que voc enviar para o dispositivo alvo.
Nmero de Elementos O nmero de elementos que voc l/grava depende do tipo de dado que est sendo
usado. Um elemento se refere a um "fragmento" dos dados relacionados. Por exemplo,
o tag temporizador1 um elemento composto de uma estrutura de controle
do temporizador.
Destination Element/Tag Se voc selecionar um tipo de mensagem de leitura, o Destination Tag ser o tag no
controlador Logix5550 onde voc armazenar os dados lidos do dispositivo alvo.
Se voc selecionar o tipo de mensagem de escrita, o Destination Element o endereo
do local no dispositivo alvo onde voc escrever os dados.
Selecione este comando: Se voc quiser:
CIP Data Table Read ler os dados a partir de outro controlador.
Os tipos Source e Destination devem corresponder.
CIP Data Table Write escrever os dados em outro controlador.
Os tipos Source e Destination devem corresponder.
Generic CIP configurar uma mensagem customizada para enviar os dados de configurao para um
mdulo de E/S
Publicao 1756-RM003C-PT-P - Novembro 2000
3-16 Instrues de Entrada/Sada (MSG, GSV, SSV)
Uso de mensagens CIP genricas para resetar os mdulos de E/S
Especifique esta informao para criar uma mensagem customizada,
usando o tipo de mensagem Generic CIP.
Se voc quiser No campo: Insira:
Realizar um teste de pulso em
um mdulo de sada digital
Service Code (Cdigo de
Servio)
4c
Object Type (Tipo de
Objeto)
1e
Object ID (Identificao
do Objeto)
1
Object Attribute
(Atributo do Objeto)
deixe em branco
Source tag_name do tipo INT [5]
Esta matriz contm:
tag_name[0] mscara de bit dos pontos para teste (teste
somente um ponto de cada vez)
tag_name[1] reservado, coloque 0
tag_name[2] largura de pulso (centenas de s, geralmente 20)
tag_name[3] atraso para cruzamento zero para o ControlLogix I/O
(centenas de s, geralmente 40)
tag_name[4] verifique o atraso
Nmero de Elementos 10
Destination deixe em branco
Resetar os fusveis eletrnicos
em um mdulo de sada digital
Service Code (Cdigo de
Servio)
4d
Object Type (Tipo de
Objeto)
1e
Object Attribute
(Atributo do Objeto)
deixe em branco
Object ID (Identificao
do Objeto)
1
Source tag_name do tipo DINT
Este tag representa uma mscara de bit dos pontos para resetar os fusveis
para energizado.
Nmero de Elementos 4
Destination deixe em branco
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-17
Resete o diagnstico de
retentivo em um mdulo de E/S
digital
Service Code (Cdigo de
Servio)
4b
Object Type (Tipo de
Objeto)
para um mdulo de
entrada
1d
para um mdulo de
sada
1e
Object Attribute
(Atributo do Objeto)
deixe em branco
Object ID (Identificao
do Objeto)
1
Source tag_name do tipo DINT
Esse tag representa uma mscara de bit dos pontos para resetar o
diagnstico para energizado.
Nmero de Elementos 4
Destination deixe em branco
Resetar um status retentivo em
um mdulo analgico
Service Code (Cdigo de
Servio)
4b
Object Type (Tipo de
Objeto)
a
Object Attribute
(Atributo do Objeto)
insira o cdigo para o atributo desejado
Object ID (Identificao
do Objeto)
0
Source deixe em branco
Nmero de Elementos 0
Destination deixe em branco
Se voc quiser No campo: Insira:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-18 Instrues de Entrada/Sada (MSG, GSV, SSV)
Especificao das mensagens do CLP-5
Os tipos de mensagem do CLP-5 so determinados para os
controladores CLP-5.
Os comandos Typed Read e Typed Write tambm funcionam com os
controladores SLC 5/03 (OS303 e acima), controladores SLC 5/04
(OS402 e acima) e os controladores SLC 5/05.
Selecione este comando: Se voc quiser:
Leitura do Tipo para CLP-5 leitura de inteiros ou dados do tipo REAL .
Para os inteiros, este comando l os inteiros de 16 bits do controlador CLP-5 (tipos de
arquivo S, B e N), armazena-os nas matrizes de dados SINT, INT ou DINT no controlador
Logix5550 e mantm a integridade dos dados.
Este comando tambm l os dados de ponto flutuante do controlador CLP-5 (tipo de
arquivo F) e armazena-os em um tag com tipo de dados REAL em um controlador
Logix5550.
Escrita de tipo para CLP-5 escrita de inteiros ou dados do tipo REAL.
Este comando grava os dados SINT ou INT para um controlador CLP-5 (tipos de arquivo
S, B e N) e mantm a integridade dos dados. Voc pode gravar os dados DINT desde
que os dados se adequem a um tipo de dados INT (32,768 dados 32,767).
Este comando tambm grava os dados do tipo REAL do controlador Logix5550 para um
arquivo de ponto flutuante do CLP-5 (tipo de arquivo F).
Leitura da faixa de palavras do
CLP-5
realiza a leitura de uma faixa contnua de palavras de 16 bits na memria do CLP-5,
independente do tipo de dados.
Este comando comea no endereo especificado como Source Element e realiza uma
leitura seqencial das palavras de 16 bits solicitadas.
Os dados do Source Element (Elemento da Fonte) so armazenados, iniciando no
endereo especificado como Destination Tag (tag de Destino).
Escrita da Faixa de Palavras do
CLP-5
escreve (grava) uma faixa contnua de palavras de 16 bits da memria do Logix5550,
independente do tipo de dados para a memria do CLP-5.
Este comando comea no endereo especificado como Source Tag (Tag da Fonte) e
realiza uma leitura seqencial das palavras de 16 bits solicitadas.
Os dados de Source Tag so armazenados, iniciando no endereo especificado como
Destination Element (Elemento do Destino) no controlador CLP-5.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-19
Os diagramas a seguir mostram como os comandos de faixa de palavra
e de tipo so diferentes. O exemplo usa os comandos de leitura de um
controlador CLP-5 para um controlador Logix5550.
Especificao de Mensagens do SLC
Os tipos de mensagem do SLC so elaboradas para os controladores
SLC e MicroLogix1000.
O tipo de tag do Logix5550 deve estar de acordo com o tipo de dado
do SLC. Voc s pode transferir dados DINT (que so mapeados para o
tipo de dados binrios do SLC) ou dados INT (que so mapeados para
o tipo de dados inteiros do SLC)
palavras de 16 bits no
controlador CLP-5
palavras de 32 bits no
controlador Logix5550
Os comandos de tipo mantm o valor e a estrutura dos dados.
1
2
3
4
Comando de leitura de tipo
1
2
3
4
palavras de 16 bits no
controlador CLP-5
palavras de 32 bits no
controlador Logix5550
Os comandos de faixa de palavra preenchem o tag de destino
de forma contnua. O valor e a estrutura dos dados so
modificados dependendo do tipo de dado de destino.
1
2
3
4
Comando de leitura da faixa de palavra
1
3
2
4
Selecione este
comando:
Se voc quiser:
leitura de tipo para SLC realizar a leitura de dados INT ou DINT.
leitura de tipo para SLC escrever dados do tipo INT ou DINT.
Publicao 1756-RM003C-PT-P - Novembro 2000
3-20 Instrues de Entrada/Sada (MSG, GSV, SSV)
Especificao das mensagens de block-transfer
Os tipos de mensagem de block-transfer so usados para comunicao
com mdulos de block-transfer em uma rede de E/S Remota Universal.
Os tags de fonte (para BTW) e destino (para BTR) devem ser grandes
para aceitar os dados solicitados, exceto para as estruturas MESSAGE,
AXIS e MODULE.
Alm disso, voc deve especificar quantos inteiros de 16 bits (INT)
sero enviados ou recebidos. possvel especificar de 0 a 64 inteiros.
Se voc especificar 0 para uma mensagem BTR, o mdulo de
block-transfer determinar quantos inteiros de 16 bits sero enviados.
Se voc especificar 0 para uma mensagem BTW, o controlador enviar
64 inteiros.
O mdulo de E/S que receber o block-transfer dever estar
identificado no organizador do controlador.
Ao selecionar um tipo de mensagem block-transfer, voc no seleciona
um mtodo de comunicao na guia Configuration. As selees CIP e
DH+ so acinzentadas.
Selecione este
comando:
Se voc quiser:
Leitura de Block-Transfer ler dados de um mdulo de block-transfer.
Este tipo de mensagem substitui a instruo BTR.
Escrita de Block-Transfer escrever dados em um mdulo de block-transfer.
Este tipo de mensagem substitui a instruo BTW.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-21
Especificao das mensagens do CLP-3
Os tipos de mensagem do CLP-3 so determinados para os
controladores CLP-3.
Selecione este comando: Se voc quiser:
Leitura de Tipo para CLP-3 leitura de inteiros ou dados do tipo REAL .
Para os inteiros, este comando l os inteiros de 16 bits do controlador CLP-3,
armazena-os nas matrizes de dados SINT, INT ou DINT no controlador Logix5550 e
mantm a integridade dos dados.
Este comando tambm l os dados de ponto flutuante do controlador CLP-3 e
armazena-os em um tag com tipo de dados REAL em um controlador Logix5550.
Escrita de Tipo para CLP-3 escrita de inteiros ou dados do tipo REAL.
Este comando grava os dados SINT ou INT em um arquivo de inteiros do controlador
CLP-3 e mantm a integridade dos dados. Voc pode gravar os dados DINT desde que
os dados se adequem a um tipo de dados INT (32.768 dados 32.767).
Este comando tambm grava os dados do tipo REAL do controlador Logix5550 para um
arquivo de ponto flutuante do CLP-3.
Leitura da Faixa de Palavra do
CLP-3
realiza a leitura de uma faixa contnua de palavras de 16 bits na memria do CLP-3,
independente do tipo de dados.
Este comando comea no endereo especificado como Source Element e realiza uma
leitura seqencial das palavras de 16 bits solicitadas.
Os dados do Source Element (Elemento da Fonte) so armazenados, iniciando no
endereo especificado como Destination Tag (Tag de Destino).
Escrita da Faixa de Palavra do
CLP-3
escreve (grava) uma faixa contnua de palavras de 16 bits na memria do Logix5550,
independente do tipo de dado para a memria do CLP-3.
Este comando comea no endereo especificado como Source Tag (Tag da Fonte) e
realiza uma leitura seqencial das palavras de 16 bits solicitadas.
Os dados de Source Tag so armazenados, iniciando no endereo especificado como
Destination Element (Elemento do Destino) no controlador CLP-3.
Publicao 1756-RM003C-PT-P - Novembro 2000
3-22 Instrues de Entrada/Sada (MSG, GSV, SSV)
Os diagramas a seguir mostram como os comandos de faixa de palavra
e de tipo so diferentes. O exemplo usa os comandos de leitura de um
controlador CLP-3 para um controlador Logix5550.
Especificao das mensagens do CLP-2
Os tipos de mensagem do CLP-2 so determinados para os
controladores CLP-2.
A transferncia de mensagem usa palavras de 16 bits; portanto,
certifique-se de que o tag do Logix5550 armazena os dados transferidos
de forma adequada (geralmente como uma matriz INT).
palavras de 16 bits no
controlador CLP-3
palavras de 32 bits no
controlador Logix5550
Os comandos de tipo mantm o valor e a estrutura dos
dados.
1
2
3
4
Comando de leitura de tipo
1
2
3
4
palavras de 16 bits no
controlador CLP-3
palavras de 32 bits no
controlador Logix5550
Os comandos de faixa de palavra preenchem o tag de destino
de forma contnua. O valor e a estrutura dos dados so
modificados dependendo do tipo de dado de destino.
1
2
3
4
Comando de leitura da faixa de palavra
1
3
2
4
Selecione este comando: Se voc quiser:
Leitura sem Proteo do CLP-2 realizar a leitura de palavras de 16 bits de qualquer rea da tabela de dados do CLP-2 ou
do arquivo de compatibilidade do CLP-2 de outro controlador.
Escrita sem Proteo do CLP-2 escrever (gravar) palavras de 16 bits para qualquer rea da tabela de dados do CLP-2 ou
do arquivo de compatibilidade do CLP-2 de outro controlador.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-23
Exemplos de Configurao
MSG
Os exemplos a seguir mostram os tags de fonte e destino do exemplo e
os elementos para as diferentes combinaes de controladores.
Para as instrues MSG geradas em um controlador Logix5550 e
gravadas em outro controlador:
Para as instrues MSG geradas em um controlador Logix5550 e lidas
em outro controlador:
Percurso da Mensagem: Exemplo de Fonte e Destino:
Logix5550 Logix5550 tag da fonte array_1
tag de destino array_2
possvel usar um tag com alias/smbolo para o tag fonte (no controlador Logix5550 de
origem). Se voc quiser comear com um offset dentro de uma matriz, use um
alias/smbolo para indicar o offset.
Voc no pode usar um alias/smbolo para o tag de destino. O destino deve ser um
tag de base.
Logix5550 CLP-5
Logix5550 SLC
tag da fonte array_1
elemento de destino N7:10
possvel usar um tag com alias/smbolopara o tag fonte (no controlador Logix5550 de
origem). Se voc quiser comear com um offset dentro de uma matriz, use um
alias/smbolo para indicar o offset.
Logix5550 CLP-2 tag da fonte array_1
elemento de destino 010
Percurso da Mensagem: Exemplo de Fonte e Destino:
Logix5550 Logix5550 tag da fonte array_1
tag de destino array_2
Voc no pode usar um tag com alias/smbolo para o tag de fonte. A fonte deve ser
um tag de base.
possvel usar um tag com alias/smbolo para o tag destino (no controlador Logix5550
de origem). Se voc quiser comear com um offset dentro de uma matriz, use um
alias/smbolo para indicar o offset.
Logix5550 CLP-5
Logix5550 SLC
elemento fonte N7:10
tag de destino array_1
possvel usar um tag com alias/smbolo para o tag destino (no controlador Logix5550
de origem). Se voc quiser comear com um offset dentro de uma matriz, use um
alias/smbolo para indicar o offset.
Logix5550 CLP-2 elemento fonte 010
tag de destino array_1
Publicao 1756-RM003C-PT-P - Novembro 2000
3-24 Instrues de Entrada/Sada (MSG, GSV, SSV)
Especificaes dos
Detalhes de Comunicao
(Guia Communication)
Ao configurar uma instruo MSG, voc especifica estes detalhes na
guia Communication.
Especificao de um percurso de conexo
O percurso de conexo descreve o caminho que a mensagem
transcorrer para chegar ao mdulo ou controlador destino. O
percurso usa nmeros, onde os pares de nmeros o deslocam de um
mdulo para outro atravs de uma placa de fundo do ControlLogix ou
da rede de comunicao.
Use o fluxograma abaixo para determinar se voc deve inserir um
percurso.
A. Acrescente o mdulo rvore de
Configurao de E/S do
controlador.
B. Na guia Communication, da tela
Message Configuration, clique
em Browse e selecione o
mdulo.
Especifique um percurso para o mdulo
1756-DHRIO que esteja na mesma rede
DH+ do controlador. Consulte o
procedimento seguinte .
Especifique um percurso para o
controlador ou mdulo. Consulte o
procedimento seguinte .
sim
no
sim
no
A mensagem para um mdulo de
block-transfer est em uma rede
de E/S Remota Universal.
A mensagem para um
controlador CLP-2, 3, 5 ou SLC
est em uma rede DH+?
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-25
Para especificar um percurso:
1. Na caixa de texto Path, digite o seguinte, separando cada nmero
com uma vrgula [,]:
a. Especifique a porta pela qual a mensagem sai. (Para o primeiro
nmero no percurso, geralmente o 1 que designa a porta
da placa de fundo do controlador Logix5550 que est
enviando a mensagem.):
b. Especifique o prximo mdulo:
2. Repita a Etapa 1. at que voc especifique o mdulo ou
controlador destino.
DICA
Se a rvore de Configurao de E/S contm um
mdulo ou controlador destino ao invs de
especificar um percurso, clique em Browse para
selecionar o dispositivo.
Para a: Especifique
placa de fundo de qualquer mdulo ou controlador 1756 1
a porta DF1 de um controlador 1756-L1 2
a porta ControlNet de um mdulo 1756-CNB
a porta Ethernet de um mdulo 1756-ENET
a porta DH+ em um canal A de um mdulo 1756-DHRIO
a porta DH+ em um canal B de um mdulo 1756-DHRIO 3
Para um mdulo em uma: Especifique o:
placa de fundo do chassi de
E/S ControlLogix
nmero da ranhura
rede DF1 endereo da estao (0-254)
rede ControlNet nmero do n (1-99 decimal)
rede DH+ nmero do n (1-77 octal)
rede Ethernet Pode-se especificar o mdulo na rede
Ethernet usando qualquer um dos seguintes
formatos:
endereo IP (ex.: 130.130.130.5)
endereo IP:Porta (ex.: 130.130.130.5:24)
nome DNS (ex.: tanks)
nome DNS:Porta (ex.: tanks:24)
Publicao 1756-RM003C-PT-P - Novembro 2000
3-26 Instrues de Entrada/Sada (MSG, GSV, SSV)
As pginas a seguir mostram exemplos de percursos de conexo:
em ControlNet, pgina 3-26
em Ethernet, pgina 3-27
para uma mensagem DH+, pgina 3-27
Os dois exemplos a seguir mostram os percursos de conexo entre os
controladores Logix5550 nas redes ControlNet e Ethernet. O
controlador que envia a mensagem est no chassi local e o que recebe
a mensagem localiza-se no chassi remoto.
EXEMPLO
Especificao de um caminho pela ControlNet
local chassis
ControlNet node 49
in slot 0
remote chassis
ControlNet node 42
in slot 0
ControlNet link
42042
chassi local
ControlNet n 49
na ranhura 0
chassi remoto
ControlNet n 42
na ranhura 0
rede ControlNet
Percurso: 1, 0, 2, 42, 1, 3
Onde: Indica:
1 a porta da placa de fundo do controlador Logix5550 no chassi local
0 o nmero da ranhura do mdulo 1756-CNB no chassi local
2 a porta da ControlNet do mdulo 1756-CNB na ranhura do chassi local
42 o n da ControlNet do mdulo 1756-CNB na ranhura do chassi remoto
1 a porta da placa de fundo do mdulo 1756-CNB no chassi remoto
3 o nmero da ranhura do controlador no chassi remoto
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-27
O exemplo a seguir mostra o percurso de conexo usado em uma
mensagem para um controlador CLP-5. Neste caso, o percurso termina
no mdulo 1756-DHRIO que est na mesma rede DH+ do controlador
CLP-5.
EXEMPLO
Especificao de um caminho pela Ethernet
EXEMPLO
Especificao de um caminho para uma mensagem
DH+
local chassis
Ethernet module in slot 1
remote chassis
Ethernet module in slot 2
IP address 127.127.127.12
Ethernet link
42043
chassi local mdulo
Ethernet na ranhura 1
chassi remoto mdulo
Ethernet na ranhura 2 endereo
IP 127.127.127.12
rede Ethernet
Percurso: 1, 1, 2, 127.127.127.12, 1, 3
Onde: Indica:
1 a porta da placa de fundo do controlador Logix5550 no chassi local
1 o nmero da ranhura do mdulo 1756-ENET no chassi local
2 a porta da Ethernet do mdulo 1756-ENET no chassi local
127.127.127.12 o endereo IP do mdulo 1756-ENET no chassi remoto
1 a porta da placa de fundo do mdulo 1756-ENET no chassi remoto
3 o nmero da ranhura do controlador no chassi remoto
local chassis
DH+ = node 37
1771 chassis with
PLC-5 processor
DH+ = node 24
DH+ link
42044
chassi local
DH+ = n 37
chassi 1771 com
controlador
CLP-5 DH+ = n 24
rede DH+
Percurso: .EN = 11
Onde: Indica:
1 a porta da placa de fundo do controlador Logix5550 no chassi local
1 o nmero da ranhura do mdulo 1756-DHRIO no chassi local
Publicao 1756-RM003C-PT-P - Novembro 2000
3-28 Instrues de Entrada/Sada (MSG, GSV, SSV)
Especificao de um mtodo de comunicao:
Use a tabela a seguir para selecionar um mtodo de comunicao para
a mensagem.
DICA
Para um tipo de mensagem de block-transfer ou CIP
genrica, voc no seleciona um mtodo de
comunicao. (A seo no est disponvel.)
Se o dispositivo destino for
um:
Ento selecione: E especifique:
controlador ControlLogix CIP outras especificaes no so necessrias
controlador ControlNet CLP-5
controlador CLP-5 DH+ Canal: Canal A ou B do mdulo 1756-DHRIO que est
conectado rede DH+
controlador SLC Rede Fonte: IIdentificao do rede atribuda placa de fundo
do controlador na tabela de roteamento do
mdulo 1756-DHRIO. (O n fonte na tabela de
roteamento corresponde automaticamente ao
nmero da ranhura do controlador.)
Controlador CLP-3 Rede Destino Identificao da rede DH+ remota onde o
dispositivo alvo reside
Controlador CLP-2 N Destino: Endereo da estao do dispositivo alvo
Se houver somente uma rede DH+ e voc no usou o software Gateway
para configurar o mdulo DH/RIO para as redes remotas, especifique 0
tanto para a Rede Fonte quanto para a Destino.
Aplicao em uma estao de
trabalho que est recebendo
uma mensagem no requisitada
conectada rede Ethernet ou
ControlNet atravs de RSLinx
CIP com Identificao
de Fonte
(Isto permite que a
aplicao receba dados de
um controlador.)
Rede Fonte: Identificao da rede dos dados (0-65535)
fornecidos pela aplicao para RSLinx
Rede Destino: Identificao de rede virtual configurado no
RSLinx (0-65535)
N Destino: Identificao de destino (0-77 octal) fornecida
pela aplicao para RSLinx
O nmero da ranhura do controlador Logix5550 usado como N Fonte.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-29
Seleo de uma opo de cache:
Alguns tipos de mensagens usam uma conexo para enviar ou receber
dados. Alguns possibilitam duas opes: deixar a conexo aberta
(cache) ou fechar a conexo quando a transmisso da mensagem
terminar. A tabela a seguir mostra quais mensagens usam uma conexo
e se voc pode ou no copiar no cache a conexo:
Use a tabela a seguir para selecionar uma opo de cache para uma
mensagem.
Esse tipo de mensagem: Usando esse mtodo de
comunicao:
Usa uma
conexo:
que voc
pode colocar
no cache:
leitura ou escrita da tabela de
dados CIP
CIP
CLP2, CLP3, CLP5 ou SLC (todos os
tipos)
CIP
CIP com Identificao de
Fonte
DH+
CIP genrico N/A
leitura ou escrita em
block-transfer
N/A
Se a mensagem
executar:
Ento: Porque:
repetidamente Selecione a caixa de
verificao Cache
Connections
Isto manter a conexo aberta e otimizar o tempo
de execuo. A abertura da conexo cada vez que a
mensagem executar, aumenta o tempo de execuo.
no
frequentemente
Retire a seleo da
caixa de verificao
Cache Connections
Isto fechar a conexo na concluso, que liberar
aquela conexo para outros usos.
Publicao 1756-RM003C-PT-P - Novembro 2000
3-30 Instrues de Entrada/Sada (MSG, GSV, SSV)
Obteno do Valor do
Sistema (GSV) e Definio
do Valor do Sistema (SSV)
As instrues GSV/SSV obtm e definem os dados do sistema do
controlador que esto armazenados nos objetos.
Operandos de Lgica
Ladder :
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: As instrues GSV/SSV obtm e definem os dados do sistema do
controlador que esto armazenados nos objetos. O controlador
armazena os dados do sistema nos objetos. No h arquivo de status,
como no controlador CLP-5.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Instruo GSV
Object class
(Classe de
Objeto)
nome nome da classe do objeto
Object name
(nome do
objeto)
nome nome do objeto especfico, quando o
objeto requer um nome
Attribute name
(Nome do
atributo)
nome atributo do objeto
tipo de dado depende do
atributo selecionado
Destination SINT
INT
DINT
REAL
varivel destino para os dados de atributo
Instruo SSV
Object class
(Classe de
Objeto)
nome nome da classe do objeto
Object name
(nome do
objeto)
nome nome do objeto especfico, quando o
objeto requer um nome
Attribute name
(Nome do
atributo)
nome atributo do objeto
Source SINT
INT
DINT
REAL
varivel o tag contm os dados que voc
copiar para o atributo
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-31
Quando habilitada, a instruo GSV recupera a informao especfica e
a coloca no destino. Quando habilitada, a instruo SSV define o
atributo especificado com os dados da fonte.
Ao inserir uma instruo GSV/SSV, o software de programao exibe as
classes vlidas de objeto, os nomes do objeto e os nomes de atributo
para cada instruo. Para a instruo GSV, voc pode obter valores para
todos os atributos disponveis. Para a instruo SSV, o software exibe
somente aqueles atributos, cuja configurao permitida
Se o tamanho da Fonte ou Destino for muito pequeno, a instruo no
executa e uma falha de advertncia registrada. A seo a seguir,
Objetos GSV/SSV , define os atributos de cada objeto e seus tipos de
dados associados. Por exemplo, o atributo MajorFaultRecord (Registro
de Falha Grave) do objeto Programa requer um tipo de dado DINT[11].
Flags de Status Aritmtico: no afetados
Condies de Falha:
Execuo de Lgica
Ladder :
ATENO
!
Use as instrues GSV/SSV cuidadosamente. As
alteraes realizadas nos objetos podem causar
operao inesperada do controlador ou danos
pessoais.
Uma falha de advertncia ocorrer se: Tipo de falha: Cdigo de
falha:
endereo de objeto invlido 4 5
objeto especificado que no suporta GSV/SSV 4 6
atributo invlido 4 6
no se forneceu informaes suficientes para
uma instruo SSV
4 6
o destino GSV no era grande o suficiente para
suportar os dados requisitados.
4 7
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for
verdadeira
Obtenha ou configure o valor especificado.
A sada da condio da linha est definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
3-32 Instrues de Entrada/Sada (MSG, GSV, SSV)
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Objetos GSV/SSV
Ao inserir uma instruo GSV/SSV, voc especifica o objeto e atributo
que voc acessar. Em alguns casos, haver mais do que um exemplo
do mesmo tipo de objeto, de forma que voc tambm possa especificar
o nome do objeto. Por exemplo, a sua aplicao pode ter vrias tarefas.
Cada tarefa tem o seu prprio objeto TASK (TAREFA) que acessado
pelo nome da tarefa.
possvel acessar estes objetos:
ATENO
!
Para a instruo GSV, somente o tamanho
especificado do dado copiado para o destino. Por
exemplo, se o atributo for especificado como um
SINT e o destino um DINT, somente os 8 bits menos
significativos do destino DINT so atualizados, sendo
que os 24 bits restantes permanecem inalterados.
Para informaes sobre este
objeto:
Consulte pgina:
AXIS 3-33
CONTROLLER 3-42
CONTROLLERDEVICE 3-42
CST 3-44
DF1 3-45
FAULTLOG 3-48
MESSAGE 3-48
MODULE 3-51
MOTIONGROUP 3-52
PROGRAM 3-53
ROUTINE 3-54
SERIALPORT 3-54
TASK 3-56
WALLCLOCKTIME 3-57
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-33
Acesso ao objeto AXIS (Eixo)
O objeto AXIS fornece as informaes de status de um eixo de
servomdulo. Especifique o nome do tag do eixo para selecionar o
objeto AXIS desejado.
Para mais informaes sobre o objeto AXIS, consulte Logix5550 Motion
Module User Manual, publicao 1756-6.5.16.
Quando um atributo est marcado com um asterisco (*), significa que o
atributo localiza-se tanto no controlador ControlLogix quanto no
mdulo de movimento. Quando voc usa uma instruo SSV para
escrever um destes valores, o controlador automaticamente atualiza a
cpia no mdulo. Entretanto, este processo no imediato. Para
certificar-se de que o novo valor tenha sido atualizado no mdulo, use
um mecanismo de intertravamento, atravs dos bits booleanos no
UpdateStatus do tag Axis.
Por exemplo, se voc executar uma SSV para o PositionLockTolerance,
o PositionTolStatus do tag Axis configurado at que uma atualizao
para o mdulo seja feita com xito. Portanto, a lgica que segue a SSV
poderia acompanhar este reset de bit antes de continuar no programa.
Atributo: Tipo de
Dados:
Instruo: Descrio:
* AccelerationFeedforwardGain REAL GSV
SSV
O valor usado para fornecer a sada de comando de torque para gerar a
acelerao do comando.
*AxisType INT GSV
SSV
O tipo de eixo que est sendo usado.
Valor: Significado:
0 eixo no usado
1 eixo de posicionamento
2 eixo fsico
*DriveFaultAction SINT GSV
SSV
A operao realizada quando a falha do inversor ocorre.
Valor: Significado:
0 desligar o eixo
1 desabilitar o inversor
2 parar o movimento comandado
3 alterar somente o bit de status
*EncoderLossFaultAction SINT GSV
SSV
A operao realizada quando uma falha por perda de encoder ocorre.
Valor: Significado:
0 desligar o eixo
1 desabilitar o inversor
2 parar o movimento comandado
3 alterar somente o bit de status
*EncoderNoiseFaultAction SINT GSV
SSV
A operao realizada quando uma falha por rudo no encoder ocorre.
Valor: Significado:
0 desligar o eixo
1 desabilitar o inversor
2 parar o movimento comandado
3 alterar somente o bit de status
Publicao 1756-RM003C-PT-P - Novembro 2000
3-34 Instrues de Entrada/Sada (MSG, GSV, SSV)
*FrictionCompensation REAL GSV
SSV
O nvel de sada fixa usado para compensar a frico esttica.
*MaximumNegativeTravel REAL GSV
SSV
O limite de percurso negativo mximo.
*MaximumPositiveTravel REAL GSV
SSV
O limite de percurso positivo mximo.
*OutputFilterBandwidth REAL GSV
SSV
A largura de faixa do filtro de sada digital servo de passa/baixa.
*OutputLimit REAL GSV
SSV
O valor da tenso mxima de sada do servo do eixo.
*OutputOffset REAL GSV
SSV
O valor usado para compensar os efeitos dos offsets cumulativos da sada
DAC do servomdulo e da entrada do servoinversor.
*OutputScaling REAL GSV
SSV
O valor usado para converter a sada da malha do servo na tenso
equivalente a do inversor.
*PositionErrorFaultAction SINT GSV
SSV
A operao realizada quando a falha por erro de posio ocorre.
Valor: Significado:
0 desligar o eixo
1 desabilitar o inversor
2 parar o movimento comandado
3 alterar somente o bit de status
*PositionErrorTolerance REAL GSV
SSV
O volume de erro de posio que o servo tolera antes de emitir uma falha de
erro de posio.
*PositionIntegralGain REAL GSV
SSV
O valor usado para se atingir um preciso posicionamento de eixo, apesar de
perturbaes como, por exemplo, gravidade e frico esttica.
*PositionProportionalGain REAL GSV
SSV
O valor que o controlador multiplica pelo erro de posio para corrigir o erro
de posio.
*PositionUnwind DINT GSV
SSV
O valor usado para realizar o desenrolamento automtico do eixo de rotao.
*ServoConfigurationBits DINT GSV
SSV
Os bits de configurao do servo para a malha de servo.
Bit: Significado:
0 eixo de rotao
1 servoinversor com velocidade externa
2 negativo da polaridade de encoder
3 negativo da polaridade do servo
4 verificao da ultrapassagem de percurso do software
5 verificao de erro de posio
6 verificao da falha de perda de encoder
7 verificao da falha por rudo no encoder
8 verificao da falha do inversor
9 falha de normalmente fechado do inversor
*SoftOvertravelFaultAction SINT GSV
SSV
A operao realizada quando a falha por ultrapassagem de percurso do
software ocorre.
Valor: Significado:
0 desligar o eixo
1 desabilitar o inversor
2 parar o movimento comandado
3 alterar somente o bit de status
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-35
*VelocityFeedforwardGain REAL GSV
SSV
A sada do comando de velocidade necessria para gerar a velocidade
comandada.
*VelocityIntegralGain REAL GSV
SSV
O valor que o controlador multiplica pelo valor VelocityIntegratorError para
corrigir o erro de velocidade.
*VelocityProportionalGain REAL GSV
SSV
O valor que o controlador multiplica pelo valor VelocityError para corrigir o
erro de velocidade.
ActualPosition REAL GSV A posio real do eixo.
ActualVelocity REAL GSV A velocidade real do eixo.
AverageVelocity REAL GSV A velocidade mdia do eixo.
AverageVelocityTimebase REAL GSV
SSV
A base de tempo da velocidade mdia do eixo.
AxisConfigurationState SINT GSV O estado da configurao do eixo.
AxisState SINT GSV O estado de operao do eixo.
Valor: Significado:
0 eixo pronto
1 controle direto do inversor
2 servocontrole
3 eixo com falha
4 desligamento do eixo
C2CConnectionInstance DINT GSV A instncia de conexo do controlador produzindo os dados do eixo.
C2CMapTableInstance DINT GSV A instncia de mapa do controlador produzindo os dados do eixo.
CommandPosition REAL GSV A posio de comando do eixo.
CommandVelocity REAL GSV A velocidade de comando do eixo.
ConversionConstant REAL GSV
SSV
O fator de converso usado para converter as unidades do usurio os pulsos
de realimentao.
DampingFactor REAL GSV
SSV
O valor usado no clculo da largura de faixa mxima do servoposicionamento
durante a execuo da instruo MRAT - Motion Run Axis Tuning (Ajuste do
Eixo de Operao em Movimento).
EffectiveInertia REAL GSV O valor de inrcia para o eixo, conforme calculado a partir das medies do
controlador realizadas durante a ltima instruo MRAT - Motion Run Axis
Tuning.
GroupInstance DINT GSV O nmero de exemplo do grupo de movimento que contm o eixo.
HomeMode SINT GSV
SSV
O modo de posio inicial do eixo.
Valor: Significado:
0 posio inicial passiva
1 posio inicial ativa (padro)
HomePosition REAL GSV
SSV
A posio de incio do eixo.
HomeReturnSpeed REAL GSV
SSV
A velocidade de retorno de posio inicial do eixo.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-36 Instrues de Entrada/Sada (MSG, GSV, SSV)
HomeSequenceType SINT GSV
SSV
O tipo de seqncia de posio inicial para o eixo.
Valor: Significado:
0 posio inicial imediata
1 alternar posio inicial
2 posio inicial do marcador
3 posio inicial do marcador de alternao (valor inicial)
HomeSpeed REAL GSV
SSV
A velocidade de posio inicial do eixo.
Instance DINT GSV O nmero de instncia do eixo.
InterpolatedActualPosition REAL GSV Para capturas de posio cronometradas, este atributo fornece a posio real
do eixo interpolado.
A posio especificada em unidades de posio e baseia-se no
valor do atributo InterpolationTime.
Para interpolar posio do eixo real, use a instruo SSV para definir
o atributo InterpolationTime.
InterpolatedCommandPosition REAL GSV Para capturas de posio cronometradas, este atributo fornece a posio do
eixo de comando interpolado.
A posio especificada em unidades de posio e baseia-se no
valor do atributo InterpolationTime.
Para interpolar posio do eixo de comando, use a instruo SSV
para definir o atributo InterpolationTime.
InterpolationTime DINT GSV
SSV
Utilize este atributo para fornecer referncia para capturas de posio
cronometradas.
Para interpolar uma posio, use uma instruo SSV para definir o
atributo InterpolationTime. O controlador atualizar ento os
seguintes atributos:
InterpolatedActualPosition
InterpolatedCommandPosition
Para fornecer um valor para InterpolationTime, pode-se usar qualquer
evento que produza um timestamp CST, como, por exemplo:
atributo RegistrationTime
timestamp de ma entrada digital
O atributo InterpolationTime utiliza somente os 32 bits inferiores de
um timestamp CST
MapTableInstance DINT GSV O exemplo de mapa de E/S do servomdulo.
MasterOffset REAL GSV Deslocamento de posio que atualmente aplicado ao mestre de um cam
de posio. Especificado em unidades de posio do eixo mestre.
MaximumAcceleration REAL GSV
SSV
A acelerao mxima do eixo.
MaximumDeceleration REAL GSV
SSV
A desacelerao mxima do eixo.
MaximumSpeed REAL GSV
SSV
A velocidade mxima do eixo.
ModuleChannel SINT GSV O canal do mdulo do servomdulo.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-37
MotionConfigurationBits DINT GSV
SSV
Os bits de configurao de movimento para o eixo.
Bit: Significado:
0 reverso da direo da posio inicial
1 chave na posio inicial normalmente fechado
2 negativo da borda de marcador na posio inicial
MotionFaultBits DINT GSV Os bits de falha de movimento para o eixo. (Na estrutura AXIS, este o
membro MotionFault.)
Bit: Nome do Bit: Significado:
0 ACAsyncConnFault falha na conexo
assncrona
1 ACSyncConnFault falha na conexo
sncrona
MotionStatusBits DINT GSV Os bits de status de movimento para o eixo. (Na estrutura AXIS, este o
membro MotionStatus.)
Bit: Nome do Bit: Significado:
0 AccelStatus acelerao
1 DecelStatus desacelerao
2 MoveStatus movimento
3 JogStatus jog
4 GearingStatus engrenagem
5 HomingStatus posio inicial
6 ClutchStatus embreagem
7 AxisHomedStatus status da posio inicial
MotorEncoderTestIncrement REAL GSV
SSV
A quantidade de movimento necessria para iniciar o teste MRHD - Motion
Run Hookup Diagnostic.
PositionError REAL GSV A diferena entre a posio de comando e a real de um eixo.
PositionIntegratorError REAL GSV A soma do erro de posio para um eixo.
PositionLockTolerance REAL GSV
SSV
O volume de erro de posio que o servomdulo tolera ao fornecer uma
indicao de status travado na posio verdadeira.
PositionServoBandwidth REAL GSV
SSV
A largura de faixa de ganho da unidade que o controlador usa para calcular
os ganhos para a instruo MAAT - Motion Apply Axis Tuning (Ajuste do Eixo
para Aplicao de Movimento).
ProgrammedStopMode SINT GSV
SSV
O tipo de parada a ser realizada no eixo.
Valor: Significado:
0 parada rpida
1 desligamento rpido
2 desligamento do hardware
RegistrationPosition REAL GSV A posio de registro para o eixo.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-38 Instrues de Entrada/Sada (MSG, GSV, SSV)
RegistrationTime DINT GSV Pode-se usar este atributo para fornecer um timestamp para capturas de
posio cronometradas.
O atributo RegistrationTime contm os 32 bits inferiores do
timestamp CST de um evento de registro de eixo.
O timestamp CST medido em microssegundos.
Para interpolar uma posio baseada em um evento de registro de
eixo:
a. Use uma instruo GSV para obter o valor do atributo
RegistrationTime.
b. Use uma instruo SSV para definir o atributo InterpolationTime
de acordo com o valor do atributo RegistrationTime
ServoConfigurationUpdateBits DINT GSV Os bits de status de configurao do servo para a malha de servo. (Na
estrutura AXIS, este o membro UpdateStatus.)
Bit: Nome do Bit: Significado:
0 AxisTypeStatus tipo de eixo
1 PosUnwndStatus desenrolamento da posio
2 MaxPTrvlStatus percurso positivo mximo
3 MaxNTrvlStatus percurso negativo mximo
4 PosErrorTolStatus tolerncia de erro de posio
5 PosLockTolStatus tolerncia de travamento na posio
6 PosPGainStatus ganho proporcional de posio
7 PosIGainStatus ganho integral de posio
8 VelFfGainStatus ganho de feedforward na velocidade
9 AccFfGainStatus ganho de feedforward
na acelerao
10 VelPGainStatus ganho proporcional de velocidade
11 VelIGainStatus ganho integral de velocidade
12 OutFiltBwStatus largura de faixa do filtro de sada
13 OutScaleStatus converso de escala na sada
14 OutLimitStatus limite de sada
15 OutOffsetStatus offset de sada
16 FricCompStatus compensao de frico
17 POtrvlFaultActStatus ao de falha de ultrapassagem de
percurso de software
18 PosErrorFaultActStatus ao de falha de erro de posio
19 EncLossFaultActStatus ao de falha de perda de encoder
20 EncNsFaultActStatus ao de falha por rudo no encoder
21 DriveFaultActStatus ao de falha do inversor
ServoEventBits DINT GSV Os bits de eventos do servo para a malha de servo. (Na estrutura AXIS, este
o membro EventStatus.)
Bit: Nome do Bit: Significado:
0 WatchEvArmStatus evento de observao armado
1 WatchEvStatus evento de observao
2 RegEvArmStatus evento de registro armado
3 RegEvStatus evento de registro
4 HomeEvArmStatus evento de posio inicial armado
5 HomeEvStatus evento de posio inicial
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-39
ServoFaultBits DINT GSV Os bits de falha do servo para a malha de servo. (Na estrutura AXIS, este o
membro ServoFault.)
Bit: Nome do Bit: Significado:
0 POtrvlFault falha de ultrapassagem de percurso
positivo
1 NOtrvlFault falha de ultrapassagem de percurso
negativo
2 PosErrorFault falha de erro de posio
3 EncCHALossFault falha de perda do canal A do encoder
4 EncCHBLossFault falha de perda do canal B do encoder
5 EncCHZLossFault falha de perda do canal Z do encoder
6 EncNsFault falha por rudo do encoder
7 DriveFault falha do inversor
8 SyncConnFault falha de conexo sncrona
9 HardFault falha no hardware do servo
ServoOutputLevel REAL GSV O nvel de tenso de sada para a malha do servo do eixo.
ServoStatusBits DINT GSV Os bits de status para a malha de servo. (Na estrutura AXIS, este o membro
ServoStatus.)
Bit: Nome do Bit: Significado:
0 ServoActStatus ao do servo
1 DriveEnableStatus inversor habilitado
2 OutLmtStatus limite de sada
3 PosLockStatus trava da posio
13 TuneStatus processo de ajuste
14 TestStatus diagnstico de teste
15 ShutdownStatus desligamento do eixo
ServoStatusUpdateBits DINT GSV Os bits de atualizao de status do servo para o eixo.
Bit: Significado:
0 atualizao do erro de posio
1 atualizao do erro do integrador de posio
2 atualizao do erro de velocidade
3 atualizao do erro do integrador de velocidade
4 atualizaodo comando de velocidade
5 atualizao da realimentao de velocidade
6 atualizao do nvel de sada do servo
StartActualPosition REAL GSV A posio real do eixo quando se inicia um novo movimento comandado para
o eixo.
StartCommandPosition REAL GSV A posio de comando do eixo quando se inicia um novo movimento
comandado para o eixo.
StartMasterOffset REAL GSV O deslocamento mestre quando a ltima instruo Motion Axis Move (MAM)
executar um dos seguintes tipos de movimento.
AbsoluteMasterOffset
IncrementalMasterOffset
Especificado em unidades de posio do eixo mestre.
StrobeActualPosition REAL GSV A posio real de um eixo quando a instruo MGSP - Motion Group Strobe
Position (Posio da Sonda do Grupo de Movimento) executada.
StrobeCommandPosition REAL GSV A posio de comando de um eixo quando a instruo MGSP - Motion Group
Strobe Position (Posio da Sonda do Grupo de Movimento) executada.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-40 Instrues de Entrada/Sada (MSG, GSV, SSV)
StrobeMasterOffset REAL GSV O deslocamento mestre quando a ltima instruo Motion Group Strobe
Position (MGSP) for executada. Especificado em unidades de posio do eixo
mestre.
TestDirectionForward SINT GSV A direo do percurso do eixo durante a instruo MRHD - Motion Run
Hookup Diagnostic (Diagnstico) como visto pelo servomdulo.
Valor: Significado:
0 direo negativa (reversa)
1 (ff) direo positiva (para frente)
TestStatus INT GSV O status da ltima instruo MRHD - Motion Run Hookup Diagnostic.
Valor: Significado:
0 processo do teste com sucesso
1 teste em andamento
2 processo de teste abortado pelo usurio
3 perodo de espera de 2 segundos excedido pelo teste
4 processo de teste com falha devido falha do servo
5 incremento insuficiente de teste
TuneAcceleration REAL GSV O valor de acelerao medido durante a instruo MRAT - Motion Run Axis
Tuning (Ajuste do Eixo de Operao de Movimento).
TuneAccelerationTime REAL GSV O tempo de acelerao medido durante a instruo MRAT - Motion Run Axis
Tuning (Ajuste do Eixo de Operao de Movimento).
TuneDeceleration REAL GSV O valor de desacelerao medido durante a instruo MRAT - Motion Run
Axis Tuning (Ajuste do Eixo de Operao de Movimento).
TuneDecelerationTime REAL GSV O tempo de desacelerao medido durante a instruo MRAT - Motion Run
Axis Tuning (Ajuste do Eixo de Operao de Movimento).
TuneRiseTime REAL GSV O tempo de elevao do eixo medido durante a instruo MRAT - Motion Run
Axis Tuning (Ajuste do Eixo de Operao de Movimento).
TuneSpeedScaling REAL GSV O fator de converso da escala do inversor do eixo medido durante a ltima
instruo MRAT - Motion Run Axis Tuning (Ajuste do Eixo de Operao de
Movimento).
TuneStatus INT GSV O status da ltima instruo MRAT - Motion Run Axis Tuning.
Valor: Significado:
0 processo de ajuste com sucesso
1 ajuste em andamento
2 processo de ajuste abortado pelo usurio
3 perodo de espera de 2 segundos excedeu o ajuste
4 processo de ajuste com falha devido falha do servo
5 eixo atingiu o limite do percurso de ajuste
6 polaridade do eixo definida incorretamente
7 velocidade do ajuste muito baixa para realizar medies
TuneVelocityBandwidth REAL GSV A largura de faixa do inversor, conforme calculado a partir das medies do
controlador realizadas durante a ltima instruo MRAT - Motion Run Axis
Tuning.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-41
TuningConfigurationBits DINT GSV
SSV
Os bits de configurao de ajuste para o eixo.
Bit: Significado:
0 direo de ajuste (0=para frente, 1=reversa)
1 integrador de erro de posio de ajuste
2 integrador de erro da velocidade de ajuste
3 bit feedforward da velocidade de ajuste
4 feedforward de acelerao
5 filtro passa/baixa de velocidade de ajuste
TuningSpeed REAL GSV
SSV
A velocidade mxima iniciada pela instruo MRAT - Motion Run Axis Tuning
(Ajuste do Eixo de Operao de Movimento).
TuningTravelLimit REAL GSV
SSV
O limite de percurso usado pela instruo MRAT - Motion Run Axis Tuning
para limitar a ao da ao durante o ajuste.
VelocityCommand REAL GSV A referncia de velocidade atual para a malha de servovelocidade para um
eixo.
VelocityError REAL GSV A diferena entre a velocidade real e a comandada de um eixo do servo.
VelocityFeedback REAL GSV A velocidade real do eixo estimada pelo servomdulo.
VelocityIntegratorError REAL GSV A soma do erro de velocidade para um eixo especificado.
WatchPosition REAL GSV A posio de observao do eixo.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-42 Instrues de Entrada/Sada (MSG, GSV, SSV)
Acesso ao objeto CONTROLLER
O objeto CONTROLLER fornece as informaes de status sobre a
execuo do controlador.
Acesso ao objeto CONTROLLERDEVICE
O objeto CONTROLLERDEVICE identifica o hardware fsico do
controlador.
Atributo: Tipo de Dados: Instruo: Descrio:
TimeSlice INT GSV
SSV
Porcentagem de CPU disponvel atribuda para a comunicao.
Os valores vlidos so 10-90. Este valor no pode ser alterado
quando a chave seletora de modo estiver posicionada em Run.
Atributo: Tipo de Dados: Instruo: Descrio:
DeviceName SINT[33] GSV String de caracteres ASCII que identifica o nmero de catlogo
do controlador e da placa de memria.
O primeiro byte contm uma contagem do nmero de
caracteres ASCII que retornaram no string da matriz.
ProductCode INT GSV Identifica o tipo de controlador
Logix5550 = 3
ProductRev INT GSV Identifica a reviso atual do produto. O display deve ser
hexadecimal.
O byte desenergizado contm a reviso principal; o byte
energizado contm a reviso secundria.
SerialNumber DINT GSV Nmero serial do dispositivo.
O nmero serial atribudo quando o dispositivo construdo.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-43
Status: INT GSV Os bits identificam o status:
Os bits 3-0 so reservados
Bits de Status do Dispositivo
Bits 7-4: Significado:
0000 reservado
0001 atualizao flash em andamento
0010 reservado
0011 reservado
0100 flash est deficiente
0101 em falha
0110 operao
0111 programa
Bits de Status de Falha
Bits 11-8: Significado:
0001 falha de advertncia recupervel
0010 falha de advertncia no recupervel
0100 falha grave recupervel
1000 falha grave no recupervel
Bits de Status Especficos do Logix5550
Bits 13-12: Significado:
01 chave seletora em Run (operao)
10 chave seletora em Program (programa)
11 chave seletora em Remote (remota)
Bits 15-14: Significado:
01 controlador est alterando os modos
10 modo de depurao se o controlador estiver
no modo Run
Type INT GSV Identifica o dispositivo como um controlador.
Controlador = 14
Fornecedor INT GSV Identifica o fornecedor do dispositivo.
Allen-Bradley = 0001
Atributo: Tipo de Dados: Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-44 Instrues de Entrada/Sada (MSG, GSV, SSV)
Acesso ao objeto CST
O objeto CST (coordinated system time) fornece um tempo de sistema
coordenado para os dispositivos em um chassi.
Atributo: Tipo de Dados: Instruo: Descrio:
CurrentStatus INT GSV Status atual do tempo de sistema coordenado. Os bits identificam o
status:
Bit: Significado:
0 falha no hardware do temporizador: o hardware do
temporizador interno do dispositivo est em falha
1 rampa habilitada: o valor atual dos 16 bits menos
significativos do temporizador aumentam em rampa at o
valor requisitado, ao invs de permanecer no valor menor.
Estes bits so manipulados pelo mtodo de sincronizao
de seleo especfica da rede.
2 mestre do tempo do sistema: o objeto CST uma fonte de
tempo mestre no sistema ControlLogix
3 sincronizado: o CurrentValue de 64 bits do objeto
sincronizado por um objeto CST mestre atravs de uma
atualizao de tempo do sistema.
4 mestre da rede local: o objeto CST a fonte de tempo
mestre da rede local
5 modo do rel de entrada: o objeto CST est agindo em um
modo de rel de tempo
6 deteco de mestre duplicado: um mestre de tempo
duplicado na rede local foi detectado. Este bit sempre 0
para os ns que dependem do tempo.
7 no usado
8-9 00 = n que depende do tempo
01 = n do mestre de tempo
10 = n do rel de tempo
11 = no usado
10-15 no usado
CurrentValue DINT[2] GSV Valor atual do temporizador. DINT[0] contm 32 bits desenergizados;
DINT[1] contm 32 bits energizados
A fonte do temporizador ajustada para corresponder ao valor
fornecido nos servios de atualizao e da sincronizao da rede de
comunicao local. O ajuste pode ser tanto um aumento em rampa
at atingir o valor requisitado como uma configurao imediata no
valor requisitado, conforme definido no atributo CurrentStatus.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-45
Acesso ao objeto DF1
O objeto DF1 fornece uma interface para o driver de comunicao DF1
que pode ser configurada para a porta serial.
Atributo: Tipo de
Dados:
Instruo: Descrio:
ACKTimeout := , DINT GSV Quantidade de tempo que se espera para se reconhecer uma transmisso de
mensagem (somente mestre e ponto-a-ponto)
Valor vlido 0-32.767. Atraso nas contagens de perodos de 20 ms. O valor
inicial de 50 (1 segundo).
DiagnosticCounters INT[19] GSV Srie de contadores de diagnstico para o driver de comunicao DF1.
offset da palavra DF1 ponto-a-ponto DF1 escravo mestre
0 assinatura (0x0043) assinatura (0x0042) assinatura (0x0044)
1 bits do modem bits do modem bits do modem
2 pacotes enviados pacotes enviados pacotes enviados
3 pacotes recebidos pacotes recebidos pacotes recebidos
4 pacotes no entregues pacotes no entregues pacotes no entregues
5 no usado tentativas de mensagens tentativas de mensagens
6 NAKs recebidos NAKs recebidos no usado
7 ENQs recebidos poll de pacotes recebidos no usado
8 pacotes NAKed defeituosos pacotes not ACKed defeituosos pacotes not ACKed defeituosos
9 nenhuma memria enviou um NAKnenhuma memria not ACKed no usado
10 pacotes duplicados recebidos pacotes duplicados recebidos pacotes duplicados recebidos
11 caracteres defeituosos recebidos no usado no usado
12 contagem de recuperaes DCD contagem de recuperaes DCD contagem de recuperaes DCD
13 contagem de modem perdida contagem de modem perdida contagem de modem perdida
14 no usado no usado prioridade do tempo de varredura mximo
15 no usado no usado ltima prioridade do tempo de varredura
16 no usado no usado tempo de varredura normal mximo
17 no usado no usado ltimo tempo normal de varredura
18 ENQs enviados no usado no usado
DuplicateDetection SINT GSV Habilita a deteco de mensagem duplicada.
Valor: Significado:
0 deteco de mensagem duplicada desabilitada
diferente de zero deteco de mensagem duplicada desabilitada
EmbeddedResponseEnable SINT GSV Habilita funcionalidade de resposta incorporada (somente ponto-a-ponto).
Valor: Significado:
0 iniciado somente depois que um recebido (padro)
1 habilitado incondicionalmente
ENQTransmitLimit SINT GSV O nmero de pedidos (ENQs) a serem enviados aps um perodo de espera
ACK (somente ponto-a-ponto).
Valor vlido 0-127. Ajuste inicial 3.
EOTSuppression SINT GSV Habilita a supresso de transmisses EOT em resposta ao poll de pacotes
(somente escravo).
Valor: Significado:
0 supresso de EOT desabilitada (desabilitado)
diferente de zero supresso de EOT habilitada
ErrorDetection SINT GSV Especifica o esquema de deteco de erro.
Valor: Significado:
0 BCC (padro)
1 CRC
Publicao 1756-RM003C-PT-P - Novembro 2000
3-46 Instrues de Entrada/Sada (MSG, GSV, SSV)
MasterMessageTransmit SINT GSV Valor atual da transmisso de mensagem mestre (somente mestre).
Valor: Significado:
0 entre os polls da estao
1 na seqncia do poll (no lugar do nmero da estao
do mestre)
Valor inicial 0.
NAKReceiveLimit SINT GSV O nmero de NAKs recebidos em resposta a uma mensagem antes da
interrupo da transmisso (somente comunicao ponto-a-ponto).
Valor vlido 0-127. Ajuste inicial 3.
NormalPollGroupSize INT GSV Nmero de estaes para ser distribudo na matriz normal de ns do poll,
depois de realizar um polling de todas as estaes na matriz de ns de poll de
prioridade (somente mestre).
Valor vlido 0-255. Ajuste inicial 0.
PollingMode SINT GSV Modo de polling atual (somente mestre).
Valor: Significado:
0 baseado em mensagem, mas no permite escravos
para iniciar as mensagens
1 baseado em mensagens, mas permite escravos para
iniciar as mensagens (padro)
2 transferncia padro de uma nica mensagem por varredura
do n
3 transferncia padro de vrias mensagens por varredura do n
O ajuste inicial 1.
ReplyMessageWait DINT GSV O tempo (atuando como mestre) para esperar o recebimento de um ACK
antes de realizar um polling do escravo para uma resposta (somente mestre).
Valor vlido 0-65.535. Atraso nas contagens de perodos de 20 ms. O ajuste
inicial de 5 perodos (100 ms).
StationAddress INT GSV Endereo atual da estao da porta serial.
Valor vlido 0-254. Ajuste inicial 0.
SlavePollTimeout DINT GSV A quantidade de tempo em ms que o escravo espera pelo mestre para
realizar um polling, antes que o escravo declare que no tenha condies de
transmitir porque o mestre est inativo (somente escravo).
Valor vlido 0-32.767. Atraso nas contagens de perodos de 20 ms. O valor
inicial de 3000 perodos (1 minuto).
TransmitRetries SINT GSV Nmero de vezes para reenviar uma mensagem sem obter um
reconhecimento (somente mestre e escravo)
Valor vlido 0-127. Ajuste inicial 3.
PendingACKTimeout DINT SSV Valor pendente para o atributo ACKTimeout.
PendingDuplicateDetection SINT SSV Valor pendente para o atributo DuplicateDetection.
PendingEmbeddedResponse
Enable
SINT SSV Valor pendente para o atributo EmbeddedResponse.
PendingENQTransmitLimit SINT SSV Valor pendente para o atributo ENQTransmitLimit.
PendingEOTSuppression SINT SSV Valor pendente para o atributo EOTSuppression.
PendingErrorDetection SINT SSV Valor pendente para o atributo ErrorDetection.
PendingNormalPollGroupSize INT SSV Valor pendente para o atributo NormalPollGroupSize .
PendingMasterMessage
Transmit
SINT SSV Valor pendente para o atributo MasterMessageTransmit.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-47
Para aplicar os valores para qualquer um dos atributos pendentes de
DF1:
1. Use uma instruo SSV para definir o valor para o atributo
pendente.
possvel definir a quantidade de atributos que desejar, usando
uma instruo SSV para cada atributo pendente.
2. Use uma instruo MSG para aplicar o valor. A instruo MSG se
aplica para cada atributo pendente configurado. Configure a
instruo MSG da seguinte forma:
PendingNAKReceiveLimit SINT SSV Valor pendente para o atributo NAKReceiveLimit.
PendingPollingMode SINT SSV Valor pendente para o atributo PollingMode .
PendingReplyMessageWait DINT SSV Valor pendente para o atributo ReplyMessageWait.
PendingStationAddress INT SSV Valor pendente para o atributo StationAddress.
PendingSlavePollTimeout DINT SSV Valor pendente para o atributo SlavePollTimeout.
PendingTransmitRetries SINT SSV Valor pendente para o atributo TransmitRetries.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Guia MSG Configuration: Campo: Valor:
Configuration Message Type CIP Generic
Service Code (Cdigo de
Servio)
0d hex
Object Type (Tipo de
Objeto)
a2
Object ID (Identificao do
Objeto)
1
Object Attribute (Atributo
do Objeto)
deixe em branco
Source deixe em branco
Nmero de Elementos 0
Destination deixe em branco
Communication Path percurso de comunicao
automtico (1,s onde s =
nmero da ranhura do
controlador)
Publicao 1756-RM003C-PT-P - Novembro 2000
3-48 Instrues de Entrada/Sada (MSG, GSV, SSV)
Acesso ao objeto FAULTLOG
O objeto FAULTLOG fornece informaes de falha sobre o controlador.
Acesso ao objeto MESSAGE
possvel acessar o objeto MESSAGE atravs das instrues GSV/SSV.
Especifique o nome do tag da mensagem para determinar qual objeto
MESSAGE voc quer. O objeto MESSAGE fornece uma interface para
configurao e disparo das comunicaes peer-to-peer. Este objeto
substitui o tipo de dados MG do controlador CLP-5.
Atributo: Tipo de Dados: Instruo: Descrio:
MajorEvents INT GSV
SSV
Quantas falhas graves ocorreram desde a ltima vez que este
contador foi resetado.
MinorEvents INT GSV
SSV
Quantas falhas de advertncia ocorreram desde a ltima vez
que este contador foi resetado.
MajorFaultBits DINT GSV
SSV
Os bits individuais indicam o motivo da falha grave atual.
Bit: Significado:
1 perda de alimentao
3 E/S
4 execuo da instruo (programa)
5 rotina de falhas
6 watchdog
7 stack
8 alterao de modo
11 movimento
MinorFaultBits DINT GSV
SSV
Os bits individuais indicam o motivo da falha de advertncia
atual.
Bit: Significado:
4 execuo da instruo (programa)
6 watchdog
9 porta serial
10 bateria
Atributo: Tipo de
Dados:
Instruo: Descrio:
ConnectionPath SINT[130] GSV
SSV
Dados para configurao do percurso de conexo. Os primeiros dois bytes
(byte desenergizado e byte energizado) so o comprimento em bytes do
percurso de conexo.
ConnectionRate DINT GSV
SSV
Taxa (velocidade) requisitada para o pacote da conexo.
MessageType SINT GSV
SSV
Especifica o tipo de mensagem.
Valor: Significado:
0 no inicializado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-49
Para alterar o atributo MESSAGE, siga essas etapas:
1. Use uma instruo GSV para obter o atributo MessageType e
salv-lo em um tag.
2. Use uma instruo SSV para configurar MessageType em 0.
3. Use uma instruo SSV para configurar um atributo MESSAGE
que voc deseja alterar.
4. Use uma instruo SSV para configurar o atributo MessageType
no valor original novamente obtido na etapa 1.
Port SINT GSV
SSV
Indica por qual porta a mensagem deve ser enviada.
Valor: Significado:
1 placa de fundo
2 porta serial
TimeoutMultiplier SINT GSV
SSV
Determina o trmino da temporizao de uma conexo e quando deve
ser fechada.
Valor: Significado:
0 conexo interromper a temporizao em 4 vezes a taxa de
atualizao (padro)
1 conexo interromper a temporizao em 8 vezes a taxa de
atualizao
2 conexo interromper a temporizao em 16 vezes a taxa de
atualizao
UnconnectedTimeout DINT GSV
SSV
Perodo de espera em microssegundos para todas as mensagens no
conectadas. O valor inicial de 30.000.000 microssegundos (30 segundos).
Atributo: Tipo de
Dados:
Instruo: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
3-50 Instrues de Entrada/Sada (MSG, GSV, SSV)
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-51
Acesso ao objeto MODULE
O objeto MODULE fornece as informaes de status sobre um mdulo.
Para selecionar um determinado objeto MODULE, configure o
operando Object Name da instruo GSV/SSV no nome do mdulo. O
mdulo especificado deve estar presente na seo I/O Configuration
do organizador do controlador e deve ter um nome de dispositivo.
Atributo: Tipo de
Dados:
Instruo: Descrio:
EntryStatus INT GSV Especifica o estado atual da entrada do mapa especificado. Os 12 bits menos
significativos devem ser mascarados na execuo de uma operao de
comparao. Somente os bits de 12 a 15 so vlidos.
Valor: Significado:
16#0000 Standby: o controlador est energizando.
16#1000 Em Falha: quaisquer uma das conexes do objeto MODULE com a
falha do mdulo associado. Este valor no deve ser
usado para determinar se o mdulo apresentou falha porque o
objeto MODULE sai deste estado periodicamente ao tentar
reconectar-se ao mdulo. Ao invs disso, verifique
Running state (16#4000). Verifique se FaultCode no
igual a 0 para determinar se um mdulo apresenta falha.
Quando estiver na condio de Falha (Faulted), os atributos
FaultCode e FaultInfo so vlidos at que a condio de falha seja
corrigida.
16#2000 Validao: o objeto MODULE est verificando a integridade
do objeto MODULE antes de estabelecer as conexes
para o mdulo.
16#3000 Conexo: o objeto MODULE est iniciando as
conexes para o mdulo.
16#4000 Em Operao: todas as conexes com o mdulo so
estabelecidas e os dados so transferidos com sucesso.
16#5000 Desligamento: o objeto MODULE est
no processo
de desligar todas as conexes para o mdulo.
16#6000 Inibido: o objeto MODULE est inibido (o
bit inibido no atributo Mode est energizado).
16#7000 Na Espera: o objeto MODULE-pai do qual este
objeto MODULE depende no est em operao.
FaultCode INT GSV Nmero que identifica uma falha no mdulo, em caso de ocorrncia.
FaultInfo DINT GSV Fornece informaes especficas sobre o cdigo de falha do objeto MODULE.
ForceStatus INT GSV Especifica o status dos pontos forados.
Bit: Significado:
0 pontos forados instalados (1=sim, 0-no)
1 pontos forados habilitados (1=sim, 0=no)
2-15 no usado
Publicao 1756-RM003C-PT-P - Novembro 2000
3-52 Instrues de Entrada/Sada (MSG, GSV, SSV)
Acesso ao objeto MOTIONGROUP
O objeto MOTIONGROUP fornece as informaes de status sobre um
grupo de eixos para o servomdulo. Especifique o nome do tag do
grupo de movimento para determinar qual objeto MOTIONGROUP
voc quer.
Instance DINT GSV Fornece o nmero de instncia deste objeto MODULE.
LEDStatus INT GSV Especifica o estado atual do LED de E/S localizado na parte frontal do controlador.
Valor: Significado:
0 LED desligado: Nenhum objeto MODULE foi configurado para o
controlador (no h mdulos na seo I/O Configuration
do organizador do controlador).
1 Vermelho piscando: Nenhum dos objetos MODULE est em
operao.
2 Verde piscando: Pelo menos um objeto MODULE no est
em operao.
3 Verde permanente: Todos os objetos MODULE esto em operao.
Nota: No possvel inserir um nome de objeto com este atributo porque este
atributo se aplica a todo o conjunto de mdulos.
Mode INT GSV
SSV
Especifica o modo atual do objeto MODULE.
Bit: Significado:
0 Se configurado, causa uma falha grave se uma das
conexes do objeto MODULE apresentar falha enquanto o
controlador
estiver no modo de operao.
2 Se configurado, faz com o objeto MODULE seja introduzido no
estado Inibido depois de desligar todas as conexes para o mdulo.
Atributo: Tipo de
Dados:
Instruo: Descrio:
Atributo: Tipo de Dados: Instruo: Descrio:
Instance DINT GSV Fornece o nmero de exemplo deste objeto MOTION_GROUP.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-53
Acesso ao objeto PROGRAM
O objeto PROGRAM fornece as informaes de status sobre um
programa. Especifique o nome do programa para determinar qual
objeto PROGRAM voc quer.
Atributo: Tipo de Dados: Instruo: Descrio:
DisableFlag SINT GSV
SSV
Controla essa execuo do programa.
Valor: Significado:
0 execuo habilitada
1 execuo desabilitada
Instance DINT GSV Fornece o nmero de instncia deste objeto PROGRAM.
LastScanTime DINT GSV
SSV
Tempo que a execuo do programa demorou da ltima vez. O
tempo est em microssegundos.
MajorFaultRecord DINT[11] GSV
SSV
Registra as falhas graves para este programa
Recomendamos que voc crie uma estrutura definida pelo usurio
para simplificar o acesso ao atributo MajorFaultRecord:
Nome Tipo de Dados: Estilo: Descrio:
TimeLow DINT Decimal 32 bits menos significativos de valor de registro de data e hora da
falha
TimeHIgh DINT Decimal 32 bits mais significativos de valor de registro de data e hora da
falha
Type INT Decimal tipo de falha (programa, E/S etc.)
Code INT Decimal cdigo exclusivo para a falha (depende do tipo de falha)
Info DINT[8] Hexadecimal informao especfica sobre a falha (depende do tipo e do cdigo
de falha)
MaxScanTime DINT GSV
SSV
Tempo mximo de execuo registrado para este programa. O
tempo est em microssegundos.
MinorFaultRecord DINT[11] GSV
SSV
Registra as falhas de advertncia para este programa
Recomendamos que voc crie uma estrutura definida pelo usurio
para simplificar o acesso ao atributo MinorFaultRecord:
Nome Tipo de Dados: Estilo: Descrio:
TimeLow DINT Decimal 32 bits menos significativos de valor de registro de data e hora da
falha
TimeHIgh DINT Decimal 32 bits mais significativos de valor de registro de data e hora da
falha
Type INT Decimal tipo de falha (programa, E/S etc.)
Code INT Decimal cdigo exclusivo para a falha (depende do tipo de falha)
Info DINT[8] Hexadecimal informao especfica sobre a falha (depende do tipo e do cdigo
de falha)
SFCRestart INT GSV
SSV
no usado - reservado para uso futuro
Publicao 1756-RM003C-PT-P - Novembro 2000
3-54 Instrues de Entrada/Sada (MSG, GSV, SSV)
Acesso ao objeto ROUTINE
O objeto ROUTINE fornece as informaes de status sobre uma rotina.
Especifique o nome da rotina para determinar qual objeto ROUTINE
voc quer.
Acesso ao objeto SERIALPORT
O objeto SERIALPORT fornece uma interface com a porta de
comunicao serial.
Atributo: Tipo de Dados: Instruo: Descrio:
Instance DINT GSV Fornece o nmero de instncia deste objeto ROUTINE.
Valores vlidos so 0-65.535.
Atributo: Tipo de Dados: Instruo: Descrio:
BaudRate DINT GSV Especifica a taxa de transmisso.
Os valores vlidos so 110, 300, 600, 1200, 2400, 4800, 9600 e
19200 (padro).
DataBits SINT GSV Especifica o nmero de bits de dados por caracter.
Valor: Significado:
7 7 bits de dados (somente ASCII)
8 8 bits de dados (padro)
Paridade SINT GSV Especifica a paridade.
Valor: Significado:
0 sem paridade (sem padro)
1 paridade mpar (somente ASCII)
2 paridade par
RTSOffDelay INT GSV Quantidade de tempo para retardar o desligamentio da linha RTS
depois da transmisso do ltimo caracter.
Valor vlido 0-32.767. Atraso nas contagens de perodos de 20 ms.
O valor inicial 0 ms.
RTSSendDelay INT GSV Quantidade de tempo para retardar a transmisso do primeiro
caracter de uma mensagem depois de se energizar a linha RTS.
Valor vlido 0-32.767. Atraso nas contagens de perodos de 20 ms.
O valor inicial 0 ms.
StopBits SINT GSV Especifica o nmero de bits de parada.
Valor: Significado:
1 1 bit de parada (padro)
2 2 bits de parada (somente ASCII)
PendingBaudRate DINT SSV Valor pendente para o atributo BaudRate.
PendingDataBits SINT SSV Valor pendente para o atributo DataBits.
PendingParity SINT SSV Valor pendente para o atributo Parity.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-55
Para aplicar os valores para qualquer um dos atributos pendentes
SERIALPORT:
1. Use uma instruo SSV para definir o valor para o atributo
pendente.
possvel definir a quantidade de atributos que desejar, usando
uma instruo SSV para cada atributo pendente.
2. Use uma instruo MSG para aplicar o valor. A instruo MSG se
aplica para cada atributo pendente configurado. Configure as
instrues MSG da seguinte forma:
PendingRTSOffDelay INT SSV Valor pendente para o atributo RTSOffDelay.
PendingRTSSendDelay INT SSV Valor pendente para o atributo RTSSendDelay.
PendingStopBits SINT SSV Valor pendente para o atributo StopBits.
Atributo: Tipo de Dados: Instruo: Descrio:
Guia MSG Configuration: Campo: Valor:
Configuration Message Type CIP Generic
Service Code (Cdigo de
Servio)
0d hex
Object Type (Tipo de
Objeto)
6f hex
Object ID (Identificao do
Objeto)
1
Object Attribute (Atributo
do Objeto)
deixe em branco
Source deixe em branco
Nmero de Elementos 0
Destination deixe em branco
Communication Path percurso de comunicao automtico
(1,s onde s = nmero da ranhura do
controlador)
Publicao 1756-RM003C-PT-P - Novembro 2000
3-56 Instrues de Entrada/Sada (MSG, GSV, SSV)
Acesso ao objeto TASK
O objeto TASK fornece as informaes de status sobre uma tarefa.
Especifique o nome do programa para determinar qual objeto TASK
voc quer.
Atributo: Tipo de Dados: Instruo: Descrio:
Instance DINT GSV Fornece o nmero de instncia deste objeto TASK.
Valores vlidos so 0-31.
LastScanTime DINT GSV
SSV
Tempo que a execuo desta tarefa demorou da ltima vez. O
tempo est em microssegundos.
MaxInterval DINT[2] GSV
SSV
O tempo mximo de intervalo entre as execues sucessivas
da tarefa. DINT[0] contm os 32 bits menos significativos do valor;
DINT[1] contm os 32 bits mais significativos do valor.
Um valor de 0 indica 1 ou menos execues da tarefa.
MaxScanTime DINT GSV
SSV
Tempo mximo de execuo registrado para este programa. O
tempo est em microssegundos.
MinInterval DINT[2] GSV
SSV
O tempo mnimo de intervalo entre as execues sucessivas da
tarefa. DINT[0] contm os 32 bits menos significativos do valor;
DINT[1] contm os 32 bits mais significativos do valor.
Um valor de 0 indica 1 ou menos execues da tarefa.
Priority INT GSV Prioridade relativa dessa tarefa comparada com outras tarefas.
Valores vlidos so 0-15.
Rate DINT GSV O intervalo de tempo entre as execues sucessivas da tarefa. O
tempo est em microssegundos.
StartTime DINT[2] GSV
SSV
O valor de WALLCLOCKTIME quando a ltima execuo da tarefa
foi iniciada. DINT[0] contm os 32 bits menos significativos do
valor; DINT[1] contm os 32 bits mais significativos do valor.
Watchdog DINT GSV
SSV
Limite de tempo para a execuo de todos os programas
associados a essa tarefa. O tempo est em microssegundos.
Se voc inserir 0, estes valores sero atribudos:
Tempo: Tipo de Tarefa:
0,5 s peridico
5,0 s contnuo
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-57
Acesso ao objeto WALLCLOCKTIME
O objeto WALLCLOCKTIME fornece um registro de data e hora que o
controlador pode usar para programao.
Atributo: Tipo de Dados: Instruo: Descrio:
CSTOffset DINT[2] GSV
SSV
Offset positivo do CurrentValue do objeto CST (tempo de sistema
coordenado, consulte a pgina3-44). DINT[0] contm os 32 bits
menos significativos do valor; DINT[1] contm os 32 bits mais
significativos do valor.
Valor em s. O valor inicial 0.
CurrentValue DINT[2] GSV
SSV
O valor atual de WALLCLOCKTIME. DINT[0] contm os 32 bits
menos significativos do valor; DINT[1] contm os 32 bits mais
significativos do valor.
O valor a quantidade de microssegundos que decorreram desde
0000 hs 1 janeiro de 1972.
Os objetos CST e WALLCLOCKTIME so relacionados
matematicamente no controlador. Por exemplo, se voc
acrescentar CST CurrentValue e WALLCLOCKTIME CTSOffset, ter
como resultado WALLCLOCKTIME CurrentValue.
DateTime DINT[7] GSV
SSV
Data e hora em formato que possibilita a leitura.
DINT[0] ano
DINT[1] representao do ms atravs de inteiros (1-12)
DINT[2] representao do dia atravs de inteiros (1-31)
DINT[3] hora (0-23)
DINT[4] minuto (0-59)
DINT[5] segundos (0-59)
DINT[6] microssegundos (0-999.999)
Publicao 1756-RM003C-PT-P - Novembro 2000
3-58 Instrues de Entrada/Sada (MSG, GSV, SSV)
Exemplo de Programao
GSV/SSV
Obteno de informaes de falha
Os exemplos a seguir usam as instrues GSV para obter informaes
de falha.
Obteno de informaes de falha de E/S
Neste exemplo, as informaes de falha do
mdulo de E/S so obtidas em disc_in_2 e
colocadas nos dados em uma estrutura
definida pelo usurio em disc_in_2_info.
Obteno de informaes de status do
programa
Neste exemplo, as informaes de status so
obtidas sobre o programa discrete e colocadas
nos dados em uma estrutura definida pelo
usurio em discrete_info.
Obteno de informaes de status da
tarefa
Neste exemplo, as informaes de status
so obtidas sobre a tarefa IO_test e
colocadas nos dados em uma estrutura
definida pelo usurio em io_test_info.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Entrada/Sada (MSG, GSV, SSV) 3-59
Configurao de flags de habilitao e desabilitao
O exemplo a seguir usa a instruo SSV para habilitar ou desabilitar um
programa. Voc pode usar este mtodo tambm para habilitar ou
desabilitar um mdulo de E/S, que uma soluo de programa
semelhante utilizao de bits inibidos com um controlador CLP-5.
Com base no status de SW.1, coloque o valor apropriado no atributo disableflag do programa discrete.
Publicao 1756-RM003C-PT-P - Novembro 2000
3-60 Instrues de Entrada/Sada (MSG, GSV, SSV)
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 4
Instrues de Comparao
(CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Introduo
As instrues de comparao permitem a comparao de valores
atravs do uso de uma expresso ou uma instruo de comparao
especfica.
Voc pode comparar valores de diferentes tipos de dados como, por
exemplo, ponto flutuante e inteiro.
Para instrues de lgica ladder, os tipos de dados em negrito
indicam os tipos de dados timos. Uma instruo executa mais
rapidamente e requer menos memria se todos os operandos da
instruo usam o mesmo tipo de dado timo, geralmente DINT ou
REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
comparar valores com base em uma
expresso
CMP 4-2
testar se dois valores so iguais EQU 4-6
testar se um valor maior ou igual a um
segundo valor
GEQ 4-10
testar se um valor maior do que um
segundo valor
GRT 4-13
testar se um valor menor ou igual a um
segundo valor
LEQ 4-16
testar se um valor menor do que um
segundo valor
LES 4-19
testar se um valor est entre outros dois
valores
LIM 4-22
passar dois valores por uma mscara e testar
se os mesmos so iguais
MEQ 4-27
testar se um valor no igual a um segundo
valor
NEQ 4-32
Publicao 1756-RM003C-PT-P - Novembro 2000
4-2 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Comparao (CMP)
A instruo CMP realiza uma comparao das operaes aritmticas
especificadas na expresso.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Define a expresso CMP usando operadores, tags e valores imediatos.
Use parnteses ( ) para definir as sees das expresses
mais complexas.
A execuo de uma instruo CMP um pouco mais lenta e usa mais
memria do que a execuo de outras instrues de comparao. A
vantagem da instruo CMP que a mesma permite a insero de
expresses complexas em uma instruo.
Flags de Status Aritmtico: A instruo CMP afeta somente os flags de status aritmtico se a
expresso contiver um operador (por exemplo, +, -, *, /) que afete os
flags de status aritmtico.
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Expresso SINT
INT
DINT
REAL
imediato
tag
uma expresso composta por tags
e/ou valores imediatos separados por
operadores
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-3
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
fim
avalie a expresso
a expresso verdadeira
a expresso falsa
a sada da condio da linha
energizada quando
verdadeira
a sada da condio da
linha energizada quando
falsa
entrada se a condio da linha for verdadeira
Se a instruo CMP considerar a expresso
verdadeira, a sada da condio da linha ser
verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
4-4 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Caso uma expresso seja inserida sem um operador de comparao
como, por exemplo, value_1 + value_2 ou value_1, a instruo
avaliar a expresso como:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
expresses CMP
As expresses das instrues CMP so programadas da mesma forma
que as expresses nas instrues FSC. Use as sees a seguir para
mais informaes sobre operadores vlidos, formato e seqncia de
operao que so comuns nas duas instrues.
Se a expresso: A sada da condio da linha
definida em:
diferente de zero verdadeira
zero falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-5
Operadores Vlidos
Formatao de expresses
Para cada operador usado em uma expresso, necessrio fornecer
um ou dois operandos (tags ou valores imediatos). Use a tabela a
seguir para formatar operadores e operandos dentro de uma
expresso:
Operador: Descrio: timo:
+ adio DINT, REAL
- subtrao/negativo DINT, REAL
* multiplicao DINT, REAL
/ diviso DINT, REAL
= igual DINT, REAL
< menor do que DINT, REAL
<= menor ou igual a DINT, REAL
> maior do que DINT, REAL
>= maior ou igual a DINT, REAL
<> diferente de DINT, REAL
** expoente (x elevado a y) DINT, REAL
ABS valor absoluto DINT, REAL
ACS arco co-seno REAL
AND bitwise AND DINT
ASN arco seno REAL
ATN arco tangente REAL
COS co-seno REAL
DEG radianos para graus DINT, REAL
FRD BCD para inteiro DINT
LN natural log REAL
LOG logaritmo na base de
10
REAL
MOD mdulo-diviso DINT, REAL
NOT bitwise complemento DINT
OR bitwise OR DINT
RAD graus para radianos DINT, REAL
SIN seno REAL
SQR raiz quadrada DINT, REAL
TAN tangente REAL
TOD inteiro para BCD DINT
TRN truncado DINT, REAL
XOR bitwise exclusivo OR DINT
Operador: Descrio: timo:
Para operadores
que operam com:
Use esse formato: Exemplos:
um operando operador (operando) ABS(tag_a)
dois operandos operand_a operator operand_b tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD
(tag_f / tag_g)
Publicao 1756-RM003C-PT-P - Novembro 2000
4-6 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Determinao da seqncia de operao
As operaes gravadas na expresso so realizadas pela instruo em
uma seqncia prescrita, no necessariamente na seqncia em que
foram gravadas. possvel suprimir a seqncia da operao
agrupando-se os termos dentro de parnteses, forando a instruo
para realizar uma operao dentro dos parnteses, antes de outras
operaes.
Operaes com seqncia igual so realizadas da esquerda para a
direita.
Igual a (EQU)
A instruo EQU testa se a Fonte A igual Fonte B.
Seqncia: Operao:
1. ( )
2. ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG,
RAD, SIN, SQR, TAN, TOD, TRN
3. **
4. (negativo), NOT
5. *, /, MOD
6. <, <=, >, >=, =
7. (subtrao), +
8. AND
9. XOR
10. OR
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-7
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source B (Fonte B)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source A (Fonte A)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Operando Tipo: Formato: Descrio:
tag de bloco FBD_COMPARE estrutura estrutura EQU
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor para comparar com SourceB.
vlido = qualquer flutuante
SourceB REAL Valor para comparar com SourceA.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivale sada da condio da linha da instruo EQU de
lgica ladder.
Publicao 1756-RM003C-PT-P - Novembro 2000
4-8 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Descrio: Os valores REAL raramente so absolutamente iguais. Caso seja
necessrio determinar a igualdade de dois valores REAL, use a
instruo LIM.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
Fonte A = Fonte B;
sim
no
a sada da condio da
linha energizada quando
verdadeira
a sada da condio da
linha energizada
quando falsa
Se o value_1 igual ao value_2, a sada da condio da linha definida como
verdadeira
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-9
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores da sada de function_block_A e function_block_B se tornam valores de entrada para
SourceA e SourceB, respectivamente. Se SourceA = SourceB, a instruo EQU energiza o Dest, que
habilita function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
4-10 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Maior ou Igual a (GEQ)
A instruo GEQ testa se a Fonte A maior ou igual Fonte B.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source B (Fonte B)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source A (Fonte A)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Operando Tipo: Formato: Descrio:
tag de bloco FBD_COMPARE estrutura estrutura GEQ
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor para comparar com SourceB.
vlido = qualquer flutuante
SourceB REAL Valor para comparar com SourceA.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-11
Parmetros de sada
Descrio: A instruo GEQ testa se a Fonte A maior ou igual Fonte B.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivalente sada da condio da linha para a instruo
GEQ de lgica ladder.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
Source A Source B
sim
no
a sada da condio da
linha energizada
quando verdadeira
a sada da condio da
linha energizada
quando falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
4-12 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Se o value_1 for menor ou igual ao value_2, a sada da condio da linha definida
como verdadeira
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores de sada de function_block_A e function_block_B se tornam os valores de entrada
SourceA e SourceB, respectivamente. Se SourceA SourceB, a instruo GEQ energiza Dest,
que habilita function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-13
Maior que (GRT)
A instruo GRT testa se a Fonte A maior ou igual Fonte B.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source B (Fonte B)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source A (Fonte A)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Operando Tipo: Formato: Descrio:
tag do bloco FBD_COMPARE estrutura estrutura GRT
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor para comparar com SourceB.
vlido = qualquer flutuante
SourceB REAL Valor para comparar com SourceA.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
4-14 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Parmetros de sada
Descrio: A instruo GRT testa se SourceA maior que SourceB.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivale sada da condio da linha para instruo GRT de
lgica ladder.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
Fonte A > Fonte B;
sim
no
a sada da condio da
linha energizada
quando verdadeira
a sada da condio da
linha energizada
quando falsa
Se o value_1 for maior do que o value_2, a instruo verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-15
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores de sada de function_block_A e function_block_B se tornam valores de entrada para
SourceA e SourceB, respectivamente. Se SourceA > SourceB, a instruo GRT energiza Dest, que
habilita function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
4-16 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Menor ou Igual a (LEQ)
A instruo LEQ testa se a Fonte A menor ou igual Fonte B.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source B (Fonte B)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source A (Fonte A)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Operando Tipo: Formato: Descrio:
tag do bloco FBD_COMPARE estrutura estrutura LEQ
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor para comparar com SourceB.
vlido = qualquer flutuante
SourceB REAL Valor para comparar com SourceA.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-17
Parmetros de sada
Descrio: A instruo LEQ testa se a Fonte A menor ou igual Fonte B.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivale sada da condio da sada para a instruo LEQ de
lgica ladder.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
Fonte A Fonte B
sim
no
a sada da condio da
linha energizada
quando verdadeira
a sada da condio da
linha energizada
quando falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
4-18 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Se o value_1 menor do que ou igual ao value_2, a sada da condio da linha
definida como verdadeira
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores de sada de function_block_A e function_block_B se tornam os valores de entrada para
SourceA e SourceB, respectivamente. Se SourceA SourceB, a instruo LEQ energiza Dest, que
habilita function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-19
Menor Que (LES)
A instruo LES testa se a Fonte A menor do que a Fonte B.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source B (Fonte B)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source A (Fonte A)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Operando Tipo: Formato: Descrio:
tag do bloco FBD_COMPARE estrutura estrutura LES
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor para comparar com SourceB.
vlido = qualquer flutuante
SourceB REAL Valor para comparar com SourceA.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
4-20 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Parmetros de sada
Descrio: A instruo LES testa se a Fonte A menor do que a Fonte B.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivale sada da condio da linha da instruo LES de lgica
ladder.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
Fonte A <Fonte B
sim
no
a sada da condio da
linha energizada
quando verdadeira
a sada da condio da
linha energizada
quando falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-21
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo
Se o value_1 for menor do que o value_2, a sada da condio da linha definida
como verdadeira
Condio: Ao:
pr-varredura Nenhuma ao tomada
primeira varredura da instruo Nenhuma ao tomada
primeira operao da instruo Nenhuma ao tomada
EnableIn falso EnableOut desenergizado
EnableIn verdadeiro A instruo executada
EnableOut energizado
Os valores de sada de function_block_A e function_block_B se tornam os valores de entrada para
SourceA e SourceB, respectivamente. Se SourceA < SourceB, a instruo LES energiza Dest, que
habilita function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
4-22 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Limite (LIM)
A instruo LIM testa se o valor de teste est dentro da faixa de Limite
Inferior a Limite Superior.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Limite Inferior SINT
INT
DINT
REAL
imediato
tag
valor do limite inferior
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Test (Teste) SINT
INT
DINT
REAL
imediato
tag
valor de acordo com o teste
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Limite
Superior
SINT
INT
DINT
REAL
imediato
tag
valor do limite superior
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Operando Tipo: Formato: Descrio:
tag do bloco FBD_LIMIT estrutura estrutura LIM
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-23
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: A instruo LIM testa se o valor de teste est dentro da faixa de Limite
Inferior a Limite Superior.
Os inteiros com sinal mudam do nmero positivo mximo para o
nmero negativo mximo quando o bit mais significativo estiver
energizado. Por exemplo, em inteiros com 16 bits (tipo INT), o inteiro
positivo mximo 32.767, que representado em hexadecimal como
16#7FFF (bits 0 a 14 esto todos energizados). Se voc incrementar
esse nmero em um, o resultado 16#8000 (bit 15 energizado). Para
inteiros com sinal, o hexadecimal 16#8000 igual ao decimal -32.768.
Incremente a partir desse ponto at que todos os 16 bits estejam
energizados e terminem em 16#FFFF, que igual ao decimal -1.
Isto pode ser representado como uma linha de nmero circular (consulte
os seguintes diagramas). A instruo LIM comea no Limite Inferior e
incrementa no sentido horrio at atingir o Limite Superior. Qualquer valor
de teste na faixa de sentido horrio, desde o Limite Inferior at o Limite
Superior define a sada da condio da linha como verdadeira. Qualquer
valor de teste na faixa de sentido horrio desde o Limite Superior at o
Limite Inferior define a sada da condio da linha como falsa.
Parmetro de Entrada: Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
LowLimit REAL Valor do limite inferior.
vlido = qualquer flutuante
Test (Teste) REAL Valor para comparar com os limites
vlido = qualquer flutuante
HighLimit REAL Valor do limite superior.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivale sada da condio da linha para a instruo LIMde lgica ladder.
Se o Limite
Inferior:
E o valor de Teste for: A sada da condio da linha
definida em:
Limite Superior igual a ou dentro dos limites verdadeira
diferente ou fora dos limites falsa
Limite Superior igual a ou fora dos limites verdadeira
diferente ou dentro dos limites falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
4-24 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
1
0
+1
limite inferior
limite superior
+n (n+1)
n = valor mximo
Limite Inferior Limite Inferior
A instruo verdadeira se o valor de teste for igual ou
situar-se entre os limites superior e inferior.
Limite Inferior Limite Superior
A instruo verdadeira se o valor de teste for igual ou
estiver fora da faixa entre os limites superior e inferior.
1
0
+1
limite superior
limite inferior
+n (n+1)
n = valor mximo
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
avalie o limite
a comparao verdadeira
a comparao falsa
a sada da condio da linha
energizada quando verdadeira
a sada da condio da
linha energizada
quando falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-25
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Limite Inferior Limite Superior
Quando 0 o valor 100, light_1 energizada.
Limite Inferior Limite Superior
Quando o valor 0 ou valor 100, light_1
energizada.
exemplo 1
exemplo 2
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn falso EnableOut desenergizado.
EnableIn verdadeiro A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
4-26 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Exemplo do Bloco de
Funo:
Os valores da sada de function_block_A e function_block_B se tornam valores de entrada para LowLimit
e HighLimit, respectivamente.
LowLimit HighLimit
Se LowLimit Test_value HighLimit, a instruo LIM energiza Dest, que habilita function_block_C.
LowLimit HighLimit
Se LowLimit Test_value HighLimit, a instruo LIM energiza Dest, que habilita function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-27
Mscara Igual a (MEQ)
A instruo MEQ passa os valores de Source e Compare atravs de
uma Mscara e compara os resultados.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
imediato
tag
valor para ser testado comparando-se
com Compare
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Mask SINT
INT
DINT
imediato
tag
define que bits so bloqueados ou os
que passam
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Compare SINT
INT
DINT
imediato
tag
valor a ser testado em relao a
Source
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MASK_EQUAL estrutura estrutura MEQ
Publicao 1756-RM003C-PT-P - Novembro 2000
4-28 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: Um 1 na mscara significa que o bit de dados passou. Um 0 na
mscara significa que o bit de dados foi bloqueado. Geralmente, os
valores Source, Mask e Compare so todos do mesmo tipo de dados.
Se houver uma combinao de tipos de dados de inteiros, a instruo
preencher os bits mais significativos dos tipos de dados de inteiros
menores com 0s, de forma que fiquem com o mesmo tamanho dos
tipos de dados maiores.
Insero de um valor de mscara imediato
Ao inserir uma mscara, o software de programao retorna ao
padro dos valores decimais. Caso voc queira inserir uma mscara
usando outro formato, coloque o prefixo correto antes do valor.
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sada no so
atualizadas.
o valor inicial definido
Source DINT Valor para testar com Compare.
vlido = qualquer inteiro
Mask DINT Define quais bits bloquear (mscara).
vlido = qualquer inteiro
Compare DINT Comparao de valor.
vlido = qualquer inteiro
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivale sada da condio da linha para a instruo MEQ de
lgica ladder.
Prefixo: Descrio:
16# hexadecimal
por exemplo; 16#0F0F
8# octal
por exemplo; 8#16
2# binrio
por exemplo; 2#00110011
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-29
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
fonte mascarada
= comparao
mascarada
sim
no
a sada da condio da
linha energizada
quando verdadeira
a sada da condio da
linha energizada
quando falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
4-30 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Exemplo de Lgica
Ladder:
O value_1 igual ao value_2 mascarado, portanto light_1 se acende. Um 0 na mscara impede que a mscara compare aquele
bit (mostrado por x no exemplo).
value_1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 value_2 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0
mask_1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 mask_1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0
value_1
mascarado
0 1 0 1 0 1 0 1 1 1 1 1 x x x x value_2
mascarado
0 1 0 1 0 1 0 1 1 1 1 1 x x x x
exemplo 1
O value_1 mascarado no igual ao value_2 mascarado, portanto light_1 se apaga. Um 0 na mscara impede que a mscara
compare aquele bit (mostrado por x no exemplo).
exemplo 2
value_1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 value_2 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0
mask_1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 mask_1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
value_1
mascarado
x x x x x x x x x x x x 1 1 1 1 value_2
mascarado
x x x x x x x x x x x x 0 0 0 0
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-31
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado
Os valores de sadade function_block_A e function_block_B se tornam valores de entrada para Source e Compare, respectivamente.
Se masked Source = the masked Compare, a instruo MEQ energiza Dest, que habilita function_block_C. Um 0 na mscara impede
que a mscara compare aquele bit (mostrado por x no exemplo).
function_block_A
function_block_B
function_block_C
Fonte 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 Compare 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0
Mask1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 Mask1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0
masked Source 0 1 0 1 0 1 0 1 1 1 1 1 x x x x masked Compare 0 1 0 1 0 1 0 1 1 1 1 1 x x x x
Publicao 1756-RM003C-PT-P - Novembro 2000
4-32 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Diferente de (NEQ)
A instruo NEQ testa se a Fonte A diferente da Fonte B.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source B (Fonte B)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser testado em relao a
Source A (Fonte A)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Operando Tipo: Formato: Descrio:
tag do bloco FBD_COMPARE estrutura estrutura NEQ
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor para testar com SourceB.
vlido = qualquer flutuante
SourceB REAL Valor para testar com SourceA.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-33
Parmetros de sada
Descrio: A instruo NEQ testa se a Fonte A diferente da Fonte B.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest BOOL Resultado da instruo. Isto equivale sada da condio da linha para a instruo NEQ de
lgica ladder.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
fim
Fonte A = Fonte B;
sim
no
a sada da condio da
linha energizada
quando verdadeira
a sada da condio da
linha energizada
quando falsa
Se o value_1 no for igual ao value_2, a sada da condio da linha definida
como verdadeira
Publicao 1756-RM003C-PT-P - Novembro 2000
4-34 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores da sada de function_block_A e function_block_B se tornam os valores de entrada para
SourceA e SourceB, respectivamente. Se SourceA SourceB, a instruo NEQ energiza Dest, que
habilita function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) 4-35
Notas:
Publicao 1756-RM003C-PT-P - Novembro 2000
4-36 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 5
Instrues Matemticas/Clculo
(CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Introduo
As instrues de clculo/matemtica avaliam as operaes aritmticas
usando uma expresso ou uma instruo aritmtica especificada.
possvel misturar tipos de dados, mas podem ocorrer perda de
preciso e erros de arredondamentos e a instruo demorar mais
tempo para executar. Verifique o bit S:V para observar se o resultado
foi truncado.
Para instruo de lgica ladder, os tipos de dados em negrito indicam
os tipos de dados timos. Uma instruo executa mais rapidamente e
requer menos memria se todos os operandos da instruo usam o
mesmo tipo de dado timo, geralmente DINT ou REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
avaliar uma expresso CPT 5-2
somar dois valores ADD 5-6
subtrair dois valores SUB 5-9
multiplicar dois valores MUL 5-12
dividir dois valores DIV 5-15
determinar o resto aps a diviso de um valor
por outro
MOD 5-19
calcular a raiz quadrada de um valor SQR 5-23
considerar o sinal oposto de um valor NEG 5-26
considerar o valor absoluto de um valor ABS 5-29
Publicao 1756-RM003C-PT-P - Novembro 2000
5-2 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Clculo (CPT)
A instruo CPT realiza as operaes aritmticas definidas na
expresso.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo CPT realiza as operaes aritmticas definidas na
expresso. Quando habilitada, a instruo CPT avalia a expresso
especfica e coloca o resultado no Destino.
A execuo de uma instruo CPT um pouco mais lenta e usa mais
memria do que a execuo de outras instrues de
clculo/matemtica. A vantagem da instruo CPT que a mesma
permite a insero de expresses complexas em uma instruo.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Idiomas disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Expresso SINT
INT
DINT
REAL
imediato
tag
uma expresso composta por tags
e/ou valores imediatos separados por
operadores
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
DICA
No h limite para o comprimento de uma
expresso.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-3
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo avalia a Expresso e coloca o resultado no Destino.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo CPT avalia o value_1 multiplicado por 5 e divide esse resultado
pelo resultado do value_2 dividido por 7 e coloca o resultado final em result_1.
exemplo 1
Quando habilitada, a instruo CPT trunca float_value_1 e float_value_2, eleva float_value_2
truncado ao quadrado, divide por float_value_1 truncado pelo resultado e armazena o resto dessa
operao de diviso em float_value_result_cpt.
exemplo 2
Publicao 1756-RM003C-PT-P - Novembro 2000
5-4 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Operadores vlidos
Formatao de expresses
Para cada operador usado em uma expresso, necessrio fornecer
um ou dois operandos (tags ou valores imediatos). Use a tabela a
seguir para formatar operadores e operandos dentro de uma
expresso:
Operador: Descrio: timo:
+ adio DINT, REAL
- subtrao/negativo DINT, REAL
* multiplicao DINT, REAL
/ diviso DINT, REAL
** expoente (x elevado a
y)
DINT, REAL
ABS valor absoluto DINT, REAL
ACS arco co-seno REAL
AND bitwise AND DINT
ASN arco seno REAL
ATN arco tangente REAL
COS co-seno REAL
DEG radianos para graus DINT, REAL
FRD BCD para inteiro DINT
LN natural log REAL
LOG logaritmo na base de
10
REAL
MOD mdulo-diviso DINT, REAL
NOT bitwise complemento DINT
OR bitwise OR DINT
RAD graus para radianos DINT, REAL
SIN seno REAL
SQR raiz quadrada DINT, REAL
TAN tangente REAL
TOD inteiro para BCD DINT
TRN truncado DINT, REAL
XOR bitwise exclusivo OR DINT
Operador: Descrio: timo:
Para operadores
que operam com:
Use esse formato: Exemplos:
um operando operador (operando) ABS(tag_a)
dois operandos operand_a operator operand_b tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD
(tag_f / tag_g)
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-5
Determinao da seqncia de operao
As operaes gravadas na expresso so realizadas pela instruo em
uma seqncia prescrita, no necessariamente na seqncia em que
foram gravadas. possvel suprimir a seqncia da operao
agrupando-se os termos dentro de parnteses, forando a instruo
para realizar uma operao dentro dos parnteses, antes de outras
operaes.
Operaes com seqncia igual so realizadas da esquerda para a
direita.
Seqncia: Operao:
1. ( )
2. ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG,
RAD, SIN, SQR, TAN, TOD, TRN
3. **
4. (negativo), NOT
5. *, /, MOD
6. (subtrao), +
7. AND
8. XOR
9. OR
Publicao 1756-RM003C-PT-P - Novembro 2000
5-6 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Adio (ADD)
A instruo ADD soma Source A e Source B e coloca o resultado no
Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Bloco de Funo
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a ser somado Source B (Fonte
B)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser somado Source A (Fonte
A)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH estrutura estrutura ADD
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-7
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: A instruo ADD soma Source A e Source B e coloca o resultado no
Destino.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor para adicionar a SourceB.
vlido = qualquer flutuante
SourceB REAL Valor para adicionar a SourceA.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira Destination = Source A + Source B (Destino = Fonte A + Fonte B)
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
5-8 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo ADD soma float_value_1 e float_value_2 e coloca o
resultado em add_result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores de sada de function_block_A e function_block_B se tornam os valores de entrada para
SourceA e SourceB, respectivamente. A instruo calcula SourceA + SourceB e coloca o resultado
em Dest, que se torna um parmetro de entrada para function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-9
Subtrao (SUB)
A instruo SUB subtrai Source B de Source A e coloca o resultado no
Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Bloco de Funo gica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor a partir do qual se subtrai a
Source B
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor a ser subtrado de Source A
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH estrutura estrutura SUB
Publicao 1756-RM003C-PT-P - Novembro 2000
5-10 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: A instruo SUB subtrai Source B de Source A e coloca o resultado no
Destino.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA REAL Valor do qual se subtrai SourceB.
vlido = qualquer flutuante
SourceB REAL Valor do qual se subtrai SourceA.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira Destino = Fonte B - Fonte A
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-11
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo SUB subtrai float_value_2 de float_value_1 e coloca o resultado
em subtract_result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores de sada de function_block_A e function_block_B se tornam os valores de entrada
SourceA e SourceB, respectivamente. A instruo calcula SourceA SourceB e coloca o resultado
em Dest, que se torna um parmetro de entrada para function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
5-12 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Multiplicao (MUL)
A instruo MUL multiplica Source A por Source B e coloca o
resultado no Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Bloco de Funo Lgica Ladder
Linguagens
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor do multiplicando
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor do multiplicador
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH estrutura estrutura MUL
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-13
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: A instruo MUL multiplica Source A por Source B e coloca o
resultado no Destino.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source A REAL Valor do multiplicando.
vlido = qualquer flutuante
Source B REAL Valor do multiplicador.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira Destino = Fonte B x Fonte A
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
5-14 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Exemplo de Lgica
Ladder:
Execuo de Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo MUL multiplica float_value_1 por float_value_2 e coloca o
resultado em multiply_result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Os valores de sada de function_block_A e function_block_B se tornam os valores de entrada para
SourceA e SourceB, respectivamente. A instruo calcula SourceA SourceB e coloca o resultado
em Dest, que se torna um parmetro de entrada para function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-15
Diviso (DIV)
A instruo DIV divide Source A por Source B e coloca o resultado em
Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor do dividendo
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor do divisor
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH estrutura estrutura DIV
Publicao 1756-RM003C-PT-P - Novembro 2000
5-16 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: Se Destination no for REAL, a instruo trabalha com a poro
fracionria do resultado da seguinte forma:
Se Source B (o divisor) for zero:
Ocorre uma falha de advertncia:
Tipo 4: falha de programa
Cdigo 4: overflow aritmtico
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source A REAL Valor do dividendo.
vlido = qualquer flutuante
Source B REAL Valor do divisor.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta
sada.
Se Source A: Ento a parte
fracionria do
resultado:
Exemplo:
e Source B no forem
do tipo REAL
trunca Source A DINT 5
Source B DINT 3
Destination DINT 1
ou Source B for do tipo
REAL
arredondada Source A REAL 5.0
Source B DINT 3
Destination DINT 2
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-17
O destino configurado da seguinte maneira:
Para detectar um possvel divisor por zero, examine o bit de falha de
advertncia (S:MINOR). Consulte o Logix5000 Controllers Common
Procedures Programming Manual, publicao 1756-PM001.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
Execuo de Lgica
Ladder:
Se Source B zero e: E o destino : E o resultado : Logo, o destino configurado
como:
todos os operandos so inteiros
(SINT, INT ou DINT)
Source A
pelo menos um operando REAL SINT, INT ou DINT positivo -1
negativo 0
REAL positivo 1.$ (positivo infinito)
negativo -1.$ (negativo infinito)
Uma falha de
advertncia ocorre se:
Tipo de falha: Cdigo de falha:
o divisor zero 4 4
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira Destination = Fonte B / Fonte A
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
5-18 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo DIV divide float_value_1 por float_value_2 e coloca o resultado
em divide_result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn est definido A instruo executada.
EnableOut energizado.
Os valores de sada de function_block_A e function_block_B se tornam os valores para SourceA e
SourceB, respectivamente. A instruo calcula SourceA / SourceB e coloca o resultado em Dest,
que se torna um parmetro de entrada para function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-19
Mdulo (MOD)
A instruo MOD divide Source A por Source B e coloca o resto no
Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Bloco de Funo Lgica Ladder
Linguagens
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor do dividendo
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source B SINT
INT
DINT
REAL
imediato
tag
valor do divisor
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH estrutura estrutura MOD
Publicao 1756-RM003C-PT-P - Novembro 2000
5-20 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: Se Source B (o divisor) for zero:
Ocorre uma falha de advertncia:
Tipo 4: falha de programa
Cdigo 4: overflow aritmtico
O destino configurado da seguinte maneira:
Para detectar um possvel divisor por zero, examine o bit de falha de
advertncia (S:MINOR). Consulte Logix5000 Controllers Common
Procedures Programming Manual, publicao 1756-PM001.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source A REAL Valor do dividendo.
vlido = qualquer flutuante
Source B REAL Valor do divisor.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta
sada.
Se Source B zero e: E o destino : E o resultado : Logo, o destino configurado
como:
todos os operandos so inteiros
(SINT, INT ou DINT)
Source A
pelo menos um operando REAL SINT, INT ou DINT positivo -1
negativo 0
REAL positivo 1.$ (positivo infinito)
negativo -1.$ (negativo infinito)
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-21
Condies de Falha:
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Uma falha de
advertncia ocorrer se:
Tipo de falha: Cdigo de falha:
o divisor zero 4 4
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira Destination = Source A ( TRN ( Source A / Source B ) * Source B )
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo MOD divide o dividendo pelo divisor e coloca o resto em
remainder. Nesse exemplo, 10 dividido por 3, com um resto de um.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
5-22 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Exemplo do Bloco de
Funo:
Os valores de sada de function_block_A e function_block_B se tornam valores de entrada para
SourceA e SourceB, respectivamente. A instruo calcula SourceA / SourceB (mdulo) e coloca o
resultado em Dest, que se torna o parmetro de entrada para function_block_C.
function_block_A
function_block_B
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-23
Raiz Quadrada (SQR)
A instruo SQR calcula a raiz quadrada de Source e coloca o
resultado no destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo Lgica Ladder
Linguagens
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
calcula a raiz quadrada desse valor
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura SQR
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Encontra a raiz quadrada deste valor.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
5-24 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Parmetros de sada
Descrio: Se Destination no for REAL, a instruo trabalha com a poro
fracionria do resultado da seguinte forma:
Se Source for negativo, a instruo retira o valor absoluto de Source,
antes de calcular a raiz quadrada.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmticos so definidos para esta
sada.
Se Source for: Ento a parte
fracionria do
resultado:
Exemplo:
diferente do tipo REAL trunca Source DINT 3
Destination DINT 1
do tipo REAL arredondada Source REAL 3.0
Destination DINT 2
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira
A sada da condio da linha definida como verdadeira.
Destination Source =
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-25
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo SQR calcula a raiz quadrada de value_1 e coloca o resultado
em sqr_result .
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
O valor de sada do function_block_A se torna o valor de entrada para Source. A instruo calcula a
raiz quadrada de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
5-26 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Negao (NEG)
A instruo NEG altera o sinal da Fonte e coloca o resultado no
Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo Lgica Ladder
Linguagens
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
valor a ser transformado em negativo
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura NEG
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Valor para negar.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-27
Parmetros de sada
Descrio: 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 Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira Destination = 0 Source
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo NEG altera o sinal de value_1 e coloca o
resultado em negate_result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
Publicao 1756-RM003C-PT-P - Novembro 2000
5-28 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Exemplo do Bloco de
Funo:
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Condio: Ao:
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo
nega Source e coloca o valor em Dest, que se torna em um parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-29
Valor Absoluto (ABS)
A instruo ABS retira o valor absoluto de Fonte e coloca o resultado
em Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo Lgica Ladder
Linguagens
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
valor do qual se tira o valor absoluto
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura ABS
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Valor do qual se tira o valor absoluto.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
5-30 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Parmetros de sada
Descrio: A instruo ABS retira o valor absoluto de Fonte e coloca o resultado
em Destino.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira Destination = | Source |
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo ABS coloca o valor absoluto de value_1 em value_1_absolute.
Nesse exemplo, o valor absoluto de quatro negativo quatro positivo.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS) 5-31
Exemplo do Bloco de
Funo:
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Condio: Ao:
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo calcula o
valor absoluto de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
5-32 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 6
Instrues de Movimentao/Lgica
(MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Introduo
As instrues de movimentao modificam e movem bits.
As instrues de lgica realizam operaes de lgica nos bits.
possvel misturar tipos de dados, mas podem ocorrer perda de
preciso e erros de arredondamentos e a instruo demora mais
tempo para executar. Verifique o bit S:V para observar se o resultado
foi truncado.
Para instrues de lgica lgica ladder, os tipos de dados em negrito
indicam tipos de dados timos. Uma instruo executa mais
rapidamente e requer menos memria se todos os operandos da
instruo usam o mesmo tipo de dado timo, geralmente DINT ou
REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
copiar um valor MOV 6-2
copiar uma parte especfica de um inteiro MVM 6-4
copiar uma parte especfica de um inteiro no
bloco de funo
MVMT 6-7
mover bits dentro de um inteiro ou
entre inteiros
BTD 6-10
movimentar bits dentro de um inteiro ou
entre inteiros no bloco de funo
BTDT 6-13
zerar um valor CLR 6-16
Se voc quiser realizar uma: Use esta instruo: Consulte
pgina:
operao bitwise AND AND 6-17
operao bitwise OR OR 6-21
operao bitwise, exclusive OR XOR 6-25
operao bitwise NOT NOT 6-29
Publicao 1756-RM003C-PT-P - Novembro 2000
6-2 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Movimentao (MOV)
A instruo MOV copia Source em Destination. Source permanece
inalterado.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo MOV copia Source em Destination. Source permanece
inalterado.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
valor a ser movido (copiar)
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo copia Source em Destination.
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-3
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando habilitada, a instruo MOV copia os dados de value_1 para value_2.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-4 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Movimentao Mascarada
(MVM)
A instruo MVM copia Source em Destination e permite que parte
dos dados sejam mascarados.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como MVMT,
consulte a pgina 6-7.
Descrio: Quando habilitada, a instruo MVM usa uma Mscara para deixar
passar ou bloquear os bits de dados em Source. Um 1 na mscara
significa que o bit de dados passou. Um 0 na mscara significa que
o bit de dados foi bloqueado.
Se houver uma mistura dos tipos de dados de inteiros, a instruo
preencher os bits mais significativos dos tipos de dados de inteiros
menores com 0s, de forma que fiquem com o mesmo tamanho dos
tipos de dados maiores.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
imediato
tag
valor a ser movido
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Mask SINT
INT
DINT
imediato
tag
quais bits devem ser bloqueados ou
podem passar
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Destination SINT
INT
DINT
tag tag para armazenar o resultado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-5
Insero de um valor de mscara imediato
Ao inserir uma mscara, o software de programao retorna ao
padro dos valores decimais. Caso voc queira inserir uma mscara
usando outro formato, coloque o prefixo correto antes do valor.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Prefixo: Descrio:
16# hexadecimal
por exemplo; 16#0F0F
8# octal
por exemplo; 8#16
2# binrio
por exemplo; 2#00110011
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo passa o valor de Source pela Mscara e copia o resultado em Destination.
Os bits no mascarados em Destination permanecem inalterados.
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-6 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como MVMT,
consulte a pgina 6-7.
Quando habilitada, a instruo MVM copia os dados de value_a para value_b, e permite, ao mesmo tempo, que os dados sejam mascarados (um
value_b antes da instruo
MVM
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
value_a 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
mask_2 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
value_b depois da instruo
MVM
0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1
As caixas sombreadas mostram os bits alterados em value_b.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-7
Movimentao Mascarada
com Target (MVMT)
A instruo MVMT primeiro copia Target para Destination. Em
seguida, a instruo compara Source mascarado com Destination e
efetua as alteraes solicitadas para Destination. O Target e o Source
permanecem inalterados.
Operandos de Lgica
Ladder:
Esta instruo est disponvel em lgica de ladder a rel como MVM,
consulte a pgina 6-4.
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MASKED_MOVE estrutura estrutura MVMT
Parmetro
de Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas.
o valor inicial definido
Source DINT Insira o valor para movimentar para Destination baseado no valor da Mscara.
vlido = qualquer inteiro
Mask DINT Mscara de bits para movimentar de Source para Dest. Todos os bits definidos como um fazem com
que os bits correspondentes se movimentem de Source para Dest. Todos os bits definidos como zero
fazem com que os bits correspondentes se movimentem de Source para Dest.
vlido = qualquer inteiro
Target DINT Insira o valor para se movimentar para Dest antes de mover os bits Source atravs da Mscara.
vlido = qualquer inteiro
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo de movimentao mascarada. Os flags de status aritmtico so
energizados para esta sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-8 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Descrio: Quando habilitada, a instruo MVMT usa uma Mscara para passar
ou bloquear os bits de dados Source. Um 1 na mscara significa que
o bit de dados passou. Um 0 na mscara significa que o bit de dados
foi bloqueado.
Se houver uma combinao de tipos de dados de inteiros, a instruo
preencher os bits mais significativos dos tipos de dados de inteiros
menores com 0s, de forma que fiquem com o mesmo tamanho dos
tipos de dados maiores.
Insero de um valor de mscara imediato usando uma
Referncia de Entrada
Ao inserir uma mscara, o software de programao retorna ao
padro dos valores decimais. Caso voc queira inserir uma mscara
usando outro formato, coloque o prefixo correto antes do valor.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Esta instruo est disponvel em lgica ladder como MVM, consulte a
pgina 6-4.
Execuo do Bloco de
Funo:
Prefixo: Descrio:
16# hexadecimal
por exemplo; 16#0F0F
8# octal
por exemplo; 8#16
2# binrio
por exemplo; 2#00110011
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executa.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-9
Exemplo do Bloco de
Funo:
function_block_C
.
Source 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Mask1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
Dest 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1
As caixas sombreadas mostram os bits que foram alterados.
function_block_A
function_block_B
Etapa 1
O controlador copia Target para Dest.
Target 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Dest 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Etapa 2
A instruo mascara Source e o compara a Dest. Todas as alteraes solicitadas so feitas em Dest, que se torna o parmetro de entrada para
function_block_C. O Source e o Target se mantm inalterados. Um 0 na mscara impede que a mscara compare aquele bit (mostrado por x no
exemplo).
Publicao 1756-RM003C-PT-P - Novembro 2000
6-10 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Distribuio do Campo do
Bit (BTD)
A instruo BTD copia os bits especificados de Source, muda os bits
para a posio adequada e escreve os bits em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como BTDT,
consulte a pgina 6-13.
Descrio: Quando habilitada, a instruo BTD copia um grupo de bits de Source para
Destination. O grupo de bits identificado pelo bit de Source (nmero de
bit menos significativo do grupo) e o Comprimento (nmero de bits a
serem copiados). O bit de Destination identifica o nmero de bit menos
significativo para iniciar em Destination. Source permanece inalterado.
Se o comprimento do campo do bit ultrapassar Destination, a instruo no
salvar os bits extras. Qualquer bit extra no d seqncia prxima palavra.
Se houver uma mistura dos tipos de dados de inteiros, a instruo preencher
os bits mais significativos dos tipos de dados de inteiros menores com 0s, de
forma que fiquem com o mesmo tamanho dos tipos de dados maiores.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
imediato
tag
tag que contm os bits a serem
movimentados
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Bit Source DINT imediato
(0-31 DINT)
(0-15 INT)
(0-7 SINT)
nmero do bit (nmero do bit menos
significativo) onde a movimentao
foi iniciada
deve estar dentro da faixa vlida de
tipos de dados Source
Destination SINT
INT
DINT
tag tag para onde os bits sero movidos
Bit de Destino DINT imediato
(0-31 DINT)
(0-15 INT)
(0-7 SINT)
o nmero do bit (nmero de bit menos
significativo) a partir de onde se inicia
a cpia de bits de Source
deve estar dentro da faixa vlida de
tipos de dados Destination
Length DINT imediato (1-32) nmero de bits a ser movido
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-11
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo copia e muda os bits de Source para Destination.
A sada da condio da linha definida como verdadeira.
value_1 antes da instruo
BTD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
value_1 depois da instruo
BTD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
As caixas sombreadas mostram os bits alterados em value_1.
Quando habilitada, a instruo BTD movimenta os
bits dentro de value_1.
Bit Source Bit Destination
exemplo 1
Publicao 1756-RM003C-PT-P - Novembro 2000
6-12 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Execuo do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo como BTDT,
consulte a pgina 6-13.
value_1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
value_2 antes da
instruo BTD
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
value_2 depois da
instruo BTD
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
As caixas sombreadas mostram os bits que foram alterados em value_2.
Quando habilitada, a instruo BTD move 10 bits de
value_1 para value_2.
exemplo 2
Bit Source
Bit de Destino
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-13
Distribuio do Campo do
Bit com Target (BTDT)
A instruo BTDT primeiro copia Target para Destination. Ento a
instruo copia os bits especficos do source, muda os bits para a
posio apropriada e os escreve em Destination. O Target e o Source
se mantm inalterados.
Operandos de Lgica
Ladder:
Esta instruo est disponvel em lgica ladder como BTD, consulte a
pgina 6-10.
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
tag do bloco FBD_BIT_FIELD_DISTRIBUTE estrutura estrutura BTDT
Parmetro
de Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas.
o valor inicial definido
Source DINT Insira o valor que contm os bits a serem movidos para Destination.
vlido = qualquer inteiro
SourceBit DINT A posio do bit em Source (menor nmero de bit de onde se comea a movimentar).
vlido = 0-31
Length DINT Nmero de bits a movimentar
vlido = 1-32
DestBit DINT A posio do bit em Dest (menor nmero para onde se inicia a cpia dos bits).
vlido = 0-31
Target DINT Insira o valor para movimentar para Dest antes de movimentar bits de Source.
vlido = qualquer inteiro
Publicao 1756-RM003C-PT-P - Novembro 2000
6-14 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Parmetros de sada
Descrio: Quando habilitada, a instruo BTD copia um grupo de bits de Source
para Destination. O grupo de bits identificado pelo bit de Source
(nmero de bit menos significativo do grupo) e o Comprimento
(nmero de bits a serem copiados). O bit de Destination identifica o
nmero de bit menos significativo para iniciar em Destination. Source
permanece inalterado.
Se o comprimento do campo do bit ultrapassar Destination, a
instruo no salvar os bits extras. Qualquer bit extra no d
seqncia prxima palavra.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Esta instruo est disponvel em lgica ladder como BTD, consulte a
pgina 6-10.
Execuo do Bloco de
Funo:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da operao da movimentao do bit. Os flags de status aritmtico so
energizados para esta sada.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executa.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-15
Exemplo do Bloco de
Funo:
Target 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
Dest 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
function_block_C
function_block_A
function_block_B
function_block_D
Source 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
Dest 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
As caixas sombreadas mostram os bits que foram alterados.
SourceBit DestBit
Etapa 1
O controlador copia Target para Dest.
Etapa 2
O SourceBit e o Length especificam que bits no Source devem ser copiados em Dest, comeando por DestBit. O Source e o Target se mantm
inalterados. O Dest alterado se torna o parmetro de entrada para function_block_C.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-16 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Zeramento (CLR)
A instruo CLR zera todos os bits de Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo CLR zera todos os bits de Destination.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Destination SINT
INT
DINT
REAL
tag tag a ser zerado
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo zera Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo CLR zera todos os bits de value_1.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-17
Bitwise AND (AND)
A instruo AND realiza uma operao bitwise AND usando os bits
em Source A e Source B e coloca o resultado no Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
imediato
tag
valor para AND com Source B
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Source B SINT
INT
DINT
imediato
tag
valor para AND com Source A
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Destination SINT
INT
DINT
tag armazena o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_LOGICAL estrutura estrutura AND
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas.
o valor inicial definido
SourceA DINT Valor para AND com SourceB.
vlido = qualquer inteiro
SourceB DINT Valor para AND com SourceA.
vlido = qualquer inteiro
Publicao 1756-RM003C-PT-P - Novembro 2000
6-18 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Parmetros de sada
Descrio: Quando habilitada, a instruo avalia a operao AND
Se houver uma combinao de tipos de dados de inteiros, a instruo
preencher os bits mais significativos dos tipos de dados de inteiros
menores com 0s, de forma que fiquem com o mesmo tamanho dos
tipos de dados maiores.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo. Os flags de status aritmtico so energizados para esta sada.
Se o bit em
Source A for:
E o bit em
Source B for:
O bit em Destination
ser:
0 0 0
0 1 0
1 0 0
1 1 1
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo realiza uma operao bitwise AND.
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-19
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
value_1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
value_2 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
value_result_and 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Quando habilitada, a instruo AND realiza uma operao de bitwise AND em value_1 e value_2
e coloca o resultado em value_result_and.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executa.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-20 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Exemplo do Bloco de
Funo
SourceA 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
SourceB 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Dest 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
.
Quando habilitada, a instruo AND logicamente junta (AND) SourceA e SourceB. A instruo
coloca o resultado em Dest, que se torna um parmetro de entrada para function_block_C.
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-21
Bitwise OR (OR)
A instruo OR realiza uma operao bitwise OR usando os bits em
Source A e Source B e coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
imediato
tag
valor para OR com Source B
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Source B SINT
INT
DINT
imediato
tag
valor para OR com Source A
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Destination SINT
INT
DINT
tag armazena o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_LOGICAL estrutura estrutura OR
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA DINT Valor para OR com SourceB.
vlido = qualquer inteiro
SourceB DINT Valor para OR com SourceA.
vlido = qualquer inteiro
Publicao 1756-RM003C-PT-P - Novembro 2000
6-22 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Parmetros de sada
Descrio: Quando habilitada, a instruo avalia a operao OR
Se houver uma combinao de tipos de dados de inteiros, a instruo
preencher os bits mais significativos dos tipos de dados de inteiros
menores com 0s, de forma que fiquem com o mesmo tamanho dos
tipos de dados maiores.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo. Os flags de status aritmtico so energizados para esta sada.
Se o bit em
Source A for:
E o bit em
Source B for:
O bit em Destination
ser:
0 0 0
0 1 1
1 0 1
1 1 1
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo realiza uma operao bitwise OR.
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-23
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
value_1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
value_2 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
value_result_or 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1
Quando habilitada, a instruo OR realiza uma operao de bitwise OR em value_1 e value_2 e
coloca o resultado em value_result_or.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executa.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-24 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Exemplo do Bloco de
Funo:
SourceA 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
SourceB 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Dest 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1
function_block_C
Quando habilitada, a instruo OR realiza uma operao lgica OR de SourceA e SourceB. A instruo
coloca o resultado em Dest, que se torna um parmetro de entrada para function_block_C.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-25
Bitwise Exclusive OR (XOR)
A instruo XOR realiza uma operao bitwise XOR usando os bits em
Source A e Source B e coloca o resultado no Destino.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo
Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
imediato
tag
valor para XOR com Source B
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Source B SINT
INT
DINT
imediato
tag
valor para XOR com Source A
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Destination SINT
INT
DINT
tag armazena o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_LOGICAL estrutura estrutura XOR
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
SourceA DINT Valor para XOR com SourceB.
vlido = qualquer inteiro
SourceB DINT Valor para XOR com SourceA.
vlido = qualquer inteiro
Publicao 1756-RM003C-PT-P - Novembro 2000
6-26 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Parmetros de sada
Descrio: Quando habilitada, a instruo avalia a operao XOR
Se houver uma combinao de tipos de dados de inteiros, a instruo
preencher os bits mais significativos dos tipos de dados de inteiros
menores com 0s, de forma que fiquem com o mesmo tamanho dos
tipos de dados maiores.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo. Os flags de status aritmticos so energizados para esta sada.
Se o bit em
Source A for:
E o bit em
Source B for:
O bit em
Destination
ser:
0 0 0
0 1 1
1 0 1
1 1 0
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo realiza uma operao bitwise OR.
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-27
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
value_1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
value_2 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
value_result_xor 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1
Quando habilitada, a instruo XOR realiza uma operao de bitwise XOR em value_1 e value_2
e coloca o resultado em value_result_xor.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executa.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-28 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Exemplo do Bloco de
Funo:
SourceA 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
SourceB 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Dest 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1
.
function_block_C
Quando habilitada, a instruo XOR executa um OR exclusivo em SourceA e SourceB. A instruo coloca
o resultado em Dest, que se torna o parmetro de entrada para function_block_C.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-29
Bitwise NOT (NOT)
A instruo NOT realiza uma operao bitwise NOT usando os bits
em Source e coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo
Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
imediato
tag
valor para NOT
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Destination SINT
INT
DINT
tag armazena o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_CONVERT estrutura estrutura NOT
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source DINT Valor para NOT.
vlido = qualquer inteiro
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo. Os flags de status aritmtico so energizados para esta sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-30 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Descrio: Quando habilitada, a instruo avalia a operao NOT
Se houver uma combinao de tipos de dados de inteiros, a instruo
preencher os bits mais significativos dos tipos de dados de inteiros
menores com 0s, de forma que fiquem com o mesmo tamanho dos
tipos de dados maiores.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Se o bit em
Source for:
O bit em Destination
ser:
0 1
1 0
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira A instruo realiza uma operao bitwise NOT.
A sada da condio da linha definida como verdadeira.
value_1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
Quando habilitada, a instruo NOT realiza uma operao de bitwise NOT em value_1 e coloca o
resultado em value_result_not.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT) 6-31
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
value_result_not 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executa.
EnableOut energizado.
Source 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
Dest 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0
function_block_C
Quando energizada, a instruo NOT complementa o Source. A instruo coloca o resultado em
Dest, que se torna o parmetro de entrada para function_block_C.
Publicao 1756-RM003C-PT-P - Novembro 2000
6-32 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 7
Instrues de Arquivo/Diversos
(FAL, FSC, COP, FLL, AVE, SRT, STD)
Introduo
As instrues de arquivo/diversos operam nas matrizes de dados.
possvel misturar tipos de dados, mas podem ocorrer perda de preciso
e erros de arredondamentos e a instruo demorar mais tempo para
executar. Verifique o bit S:V para observar se o resultado foi truncado.
Para instrues de lgica ladder, os tipos de dados em negrito indicam
os tipos de dados timos. Uma instruo executa mais rapidamente e
requer menos memria se todos os operandos da instruo usam o
mesmo tipo de dado timo, geralmente DINT ou REAL.
Seleo do Modo de
Operao
Para as instrues FAL e FSC, o modo informa o controlador sobre
como distribuir a operao de matriz
Se voc quiser: Use esta instruo: Consulte
pgina:
realizar operaes de funo, desvio, lgica e
aritmtica nos valores de matrizes
FAL 7-7
buscar e comparar valores em matrizes FSC 7-19
copiar os contedos de uma matriz para outra COP 7-30
copiar os contedos de uma matriz para outra sem
interrupo
CPS 7-35
preencher uma matriz com dados especficos FLL 7-35
calcular a mdia de uma matriz de valores AVE 7-39
classificar uma dimenso de dados da matriz em
ordem crescente
SRT 7-43
calcular o desvio padro de uma matriz de valores STD 7-47
Se voc quiser: Selecione este
modo:
operar em todos os elementos especificados em uma
matriz antes de prosseguir para a prxima instruo
All (Todos)
distribuir a operao de matriz em vrias varreduras
inserir o nmero de elementos para operar por varredura
(1-2147483647)
Numerical
(Numrico)
manipular um elemento da matriz cada vez que a entrada
da condio da linha passa de falsa para verdadeira
Incremental
(Incremento)
Publicao 1756-RM003C-PT-P - Novembro 2000
7-2 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Modo All (Todos)
No modo All, todos os elementos especificados na matriz so operados
antes de prosseguir para a prxima instruo. A operao comea
quando a entrada da condio da linha da instruo passa de falsa
para verdadeira. O valor de posio (.POS) na estrutura de controle
indica o elemento na matriz que a instruo est usando atualmente. A
operao pra quando o valor .POS for igual ao valor .LEN.
O diagrama de temporizao a seguir mostra a relao entre os bits de
status e a operao da instruo. Quando a execuo da instruo estiver
completa, o bit .DN ser energizado. O bit .DN, o bit .EN e o valor .POS
so zerados quando a entrada da condio da linha se torna falsa. Somente
aps isto que outra execuo da instruo pode ser disparada por uma
transio de falsa para verdadeira da entrada da condio da linha.
Matriz de dados
uma varredura
16639
uma
varredura
operao completa
zerar os bits de status e
zerar o valor .POS
entrada da condio da linha
bit .EN
bit DN
varredura da instruo
40010
nenhuma execuo
ocorre
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-3
Modo Numerical (numrico)
O modo Numerical distribui a operao de matriz em vrias
varreduras. Esse modo til quando se trabalha com dados crticos
no temporizados ou um grande volume de dados. necessrio
inserir o nmero de elementos para operar para cada varredura, o que
mantm o tempo de varredura menor.
A execuo disparada quando a entrada da condio da linha passa
de falsa para verdadeira. Aps o disparo, a instruo executada cada
vez que se realiza a varredura na mesma para o nmero de varreduras
necessrias para completar a operao em toda a matriz. Aps o
disparo, a entrada da condio da linha pode se alterar repetidamente
sem interromper a execuo da instruo.
IMPORTANTE
Evite usar os resultados de uma instruo de arquivo
operando no modo numrico at que o bit .DN fique
energizado.
uma varredura
16641
segunda
varredura
prxima
varredura
Publicao 1756-RM003C-PT-P - Novembro 2000
7-4 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
O diagrama de temporizao a seguir mostra a relao entre os bits de
status e a operao da instruo. Quando a execuo da instruo
estiver completa, o bit .DN ser energizado.
Se a entrada da condio da linha se tornar verdadeira na concluso,
os bits .DN e .ER so energizados at que a entrada da condio da
linha se torne falsa. Quando a entrada da condio da linha se torna
falsa, esses bits so zerados e o valor .POS desenergizado.
Se a entrada da condio da linha for falsa na concluso, o bit .EN
ser zerado imediatamente. Uma varredura depois que o bit .EN
desenergizado, o bit .DN e o valor .POS so zerados.
varreduras
mltiplas
varreduras
mltiplas
entrada da condio da linha
bit .EN
bit DN
varredura da instruo
zera os bits de status e zera
o valor .POS
zera os bits de status
e zera o valor .POS
a linha se torna verdadeira na concluso
a linha se torna falsa na concluso
40013
operao completa
operao completa
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-5
Modo Incremental (incremento)
O modo Incremental manipula um elemento da matriz cada vez que a
entrada da condio da linha da instruo passa de falsa para
verdadeira.
O diagrama de temporizao a seguir mostra a relao entre os bits de
status e a operao da instruo. A execuo ocorre somente em uma
varredura na qual a entrada da condio da linha passa de falsa para
verdadeira. Cada vez que isso ocorre, apenas um elemento da matriz
manipulado. Se a entrada da condio da linha permanecer
verdadeira durante mais de uma varredura, a instruo executa
somente durante a primeira varredura.
16643
1a. instruo habilitada
2a. instruo habilitada
3a. instruo habilitada
ltima instruo habilitada
uma
varredura
entrada da condio da linha
bit .EN
bit DN
varredura da instruo
operao
completa
zerar os bits de status e
zerar o valor .POS
40014
Publicao 1756-RM003C-PT-P - Novembro 2000
7-6 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
O bit .EN energizado quando a entrada da condio da linha se
torna verdadeira. O bit .DN energizado quando o ltimo elemento
na matriz for manipulado. Quando o ltimo elemento for manipulado
e a entrada da condio da linha se tornar falsa, o bit .EN, o bit .DN e
o valor .POS so removidos.
A diferena entre o modo Incremental e o modo Numerical a uma
taxa de um elemento por varredura :
O modo Numerical com qualquer nmero de elementos por
varredura requer somente uma transio de falsa para
verdadeira da entrada da condio da linha para iniciar a
execuo. A instruo continua a executar o nmero
especificado de elementos a cada varredura at a concluso,
independente do estado da entrada da condio da linha.
O modo Incremental requer que a entrada da condio da linha
da instruo passe de falsa para verdadeira para manipular um
elemento na matriz.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-7
Arquivamento Aritmtico e
Lgico (FAL)
A instruo FAL realiza as operaes de cpia, aritmtica, lgica e
funo nos dados armazenados em uma matriz.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
lgica ladder
Operando Tipo: Formato: Descrio:
Control CONTROL tag estrutura de controle para a operao
Length DINT imediato nmero de elementos na matriz a
serem manipulados
Position DINT imediato elemento atual na matriz
valor inicial normalmente 0
Mode DINT imediato como distribuir a operao
selecione INC, ALL ou insira um
nmero
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Expresso SINT
INT
DINT
REAL
imediato
tag
uma expresso composta por tags
e/ou valores imediatos separados por
operadores
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo FAL est habilitada.
.DN BOOL O bit Executado energizado quando a instruo operou no ltimo elemento (.POS = .LEN).
.ER BOOL O bit de Erro energizado se a expresso gera um overflow (S:V energizado). A instruo
pra a execuo at que o programa zere o bit .ER. O valor .POS contm a posio do
elemento que provocou o overflow.
.LEN DINT O comprimento especifica o nmero dos elementos na matriz na qual a instruo FAL opera.
.POS DINT A posio contm a posio do elemento atual que a instruo est acessando.
Publicao 1756-RM003C-PT-P - Novembro 2000
7-8 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Descrio: A instruo FAL realiza as mesmas operaes nas matrizes conforme a
instruo CPT realiza as operaes dos elementos.
Os exemplos que comeam na pgina 7-14 mostram como se usa o
valor .POS para passar por uma matriz. Se o subscrito na expresso de
Destination est fora da faixa, a instruo FAL gera uma falha grave
(tipo 4, cdigo 20).
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
subscrito est fora da faixa 4 20
.POS < 0 ou .LEN < 0 4 21
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-9
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
examinar bit .DN
bit .DN = 0
bit .DN = 1
entrada da condio da linha for falsa
sada da condio da linha
definida como falsa
fim
bit .EN
desenergizado.
bit .ER
desenergizado.
bit .DN
modo INC
no
sim
modo ALL
no
sim
bit .EN
desenergizado.
.POS = .POS + 1
modo
numrico
bit interno
desenergizado
.LEN < 0 ou
.POS < 0
sim
no
falha grave
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
.POS < .LEN
no
sim
modo .LEN>
sim
no
modo .LEN>
.LEN = 0
sim
no
bit .DN energizado.
bit .EN
desenergizado.
pgina 7-13
Publicao 1756-RM003C-PT-P - Novembro 2000
7-10 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Condio: Ao:
entrada da condio da linha for verdadeira
sada da condio da linha
definida como verdadeira
fim
examinar bit .DN
bit .DN = 0
bit .DN = 1
.LEN = 0
no
sim
modo INC
no
sim
modo ALL
no
sim
loop_count =
loop_count - 1
loop_count < 0
no
sim
.POS = .POS + 1
avaliar a expresso
.POS = .POS + 1
examine S:V
no
sim
bit .ER energizado
.POS = .LEN
no
sim
bit .DN energizado.
bit .EN energizado
.POS = .POS + 1
examinar bit .ER
bit .ER = 0
bit .ER = 1
bit .DN energizado.
bit .EN energizado
modo
INC
modo
ALL
modo
numrico
comum
pgina 7-13
pgina 7-11 pgina 7-12
.LEN < 0 ou
.POS < 0
sim
no
falha grave
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-11
Condio: Ao:
examinar bit .EN
bit .EN = 1
bit .EN = 0
.POS = .POS + 1
.POS .LEN
sim
no
bit .EN energizado
loop_count = 1
.POS = .POS -1
examinar
bit interno
bit = 1
bit = 0
bit interno
energizado
modo
INC
comum
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
sada da condio da linha
definida como verdadeira
fim
pgina 7-10
Publicao 1756-RM003C-PT-P - Novembro 2000
7-12 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Condio: Ao:
examinar bit .EN
bit .EN = 0
bit .EN = 1
.POS = .POS + 1
.POS .LEN
sim
no
loop_count = .LEN - .POS
.POS = .POS -1
examinar
bit interno
bit = 1
bit = 0
bit .EN energizado
modo
ALL
comum
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
sada da condio da linha
definida como
verdadeira
fim
pgina 7-10
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-13
Condio: Ao:
examinar bit .EN
bit .EN = 1
bit .EN = 0
.POS = .POS + 1
.POS .LEN
sim
no
examinar
bit interno
bit = 1
bit = 0
bit interno energizado
modo
numrico
comum
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
sada da condio da linha
definida como
verdadeira
fim
modo .LEN
sim
no
modo .LEN>
bit .EN energizado
loop_count = .LEN - .POS
.POS = .POS -1
modo
loop_count
no
bit .EN energizado
loop_count = mode
sim
pgina 7-10
Publicao 1756-RM003C-PT-P - Novembro 2000
7-14 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Exemplo de Lgica
Ladder:
Quando habilitada, a instruo FAL copia cada elemento de
array_2 na mesma posio dentro de array_1.
cpia de matriz para matriz
cpia de elemento para matriz
Quando habilitada, a instruo FAL copia o value_1 nas primeiras 10
posies da segunda dimenso de array_2.
Expresso
array_2[control_2.pos]
Destino
array_1[control_2.pos]
Expresso
value_1
Destino
array_2[0,control_2.pos]
cpia de matriz para elemento
Cada vez que a instruo FAL habilitada, ela copia o valor atual de
array_1 em value_1. A instruo FAL usa o modo de incremento, de
forma que somente um valor da matriz copiado cada vez que a
instruo habilitada. Na prxima vez em que a instruo habilitada,
ela sobrescreve value_1 sobre o prximo valor em array_1.
Expresso
array_1[control_1.pos]
Destino
value_1
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-15
operao aritmtica: (matriz/ matriz) para matriz
Quando habilitada, a instruo FAL divide o valor da
posio atual de array_2 pelo valor da posio atual
de array_3 e armazena o resultado na posio atual
de array_1.
Expresso
array_2[control_2.pos] / array_3[control_2.pos]
Destino
array_1[control_2.pos]
operao aritmtica: (elemento + elemento) para matriz
Quando habilitada, a instruo FAL adiciona value_1 e value_2 e armazena o
resultado na posio atual de array_1.
Expresso
value_1 + value_2
Destino
array_1[control_1.pos]
operao aritmtica: (matriz + elemento) para matriz
Quando habilitada, a instruo FAL adiciona o valor da posio atual
de array_1 com value_1 e armazena o resultado na posio atual de
array_3. A instruo deve ser executada 10 vezes para que array_1 e
array_3 sejam totalmente manipulados.
Expresso
array_1[control_1.pos] + value_1
Destino
array_3[control_1.pos]
Publicao 1756-RM003C-PT-P - Novembro 2000
7-16 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
operao aritmtica: (elemento + matriz) para elemento
Cada vez que a instruo FAL habilitada, ela adiciona value_1 ao
valor atual de array_1 e armazena o resultado na posio atual de
value_2. A instruo FAL usa o modo de incremento de forma que
somente um valor da matriz seja adicionado a value_1 cada vez que a
instruo habilitada.1 A prxima vez que a instruo habilitada, a
instruo sobrescreve value_2.
Expresso
value_1 + array_1[control_1.pos]
Destino
value_2
operao aritmtica: (matriz matriz) para elemento
Quando habilitada, a instruo FAL multiplica o valor
atual de array_1 pelo valor atual de array_3 e armazena o
resultado em value_1. A instruo FAL usa o modo de
incremento de forma que somente um par de valores da
matriz seja multiplicado cada vez que a instruo
habilitada.1 A prxima vez que a instruo habilitada, a
instruo sobrescreve value_1.
Expresso
array_1[control_1.pos] * array_3[control_1.pos]
Destino
value_1
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-17
expresses FAL
As expresses das instrues FAL so programadas da mesma forma
que as expresses nas instrues CPT. Use as sees a seguir para
mais informaes sobre operadores vlidos, formato e seqncia de
operao que so comuns nas duas instrues.
Operadores vlidos
Operador: Descrio: timo:
+ adio DINT, REAL
- subtrao/negativo DINT, REAL
* multiplicao DINT, REAL
/ diviso DINT, REAL
** expoente (x elevado a y) DINT, REAL
ABS valor absoluto DINT, REAL
ACS arco co-seno REAL
AND bitwise AND DINT
ASN arco seno REAL
ATN arco tangente REAL
COS co-seno REAL
DEG radianos para graus DINT, REAL
FRD BCD para inteiro DINT
LN natural log REAL
LOG logaritmo na base de
10
REAL
MOD mdulo-diviso DINT, REAL
NOT bitwise complemento DINT
OR bitwise OR DINT
RAD graus para radianos DINT, REAL
SIN seno REAL
SQR raiz quadrada DINT, REAL
TAN tangente REAL
TOD inteiro para BCD DINT
TRN truncado DINT, REAL
XOR bitwise exclusivo OR DINT
Operador: Descrio: timo:
Publicao 1756-RM003C-PT-P - Novembro 2000
7-18 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Expresses de formatao
Para cada operador usado em uma expresso, necessrio fornecer
um ou dois operandos (tags ou valores imediatos). Use a tabela a
seguir para formatar operadores e operandos dentro de uma
expresso:
Determinao da seqncia de operao
As operaes gravadas na expresso so realizadas pela instruo em
uma seqncia prescrita, no necessariamente na seqncia em que
foram gravadas. possvel suprimir a seqncia da operao
agrupando-se os termos dentro de parnteses, forando a instruo
para realizar uma operao dentro dos parnteses, antes de outras
operaes.
Operaes com seqncia igual so realizadas da esquerda para a
direita.
Para operadores
que operam com:
Use esse formato: Exemplos:
um operando operador (operando) ABS(tag_a)
dois operandos operand_a operator operand_b tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD
(tag_f / tag_g)
Seqncia: Operao:
1. ( )
2. ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG,
RAD, SIN, SQR, TAN, TOD, TRN
3. **
4. (negativo), NOT
5. *, /, MOD
6. (subtrao), +
7. AND
8. XOR
9. OR
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-19
Comparao e Busca de
Arquivo (FSC)
A instruo FSC compara valores em uma matriz, elemento por
elemento.
Operandos de Lgica
Ladder:
Estrutura:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Control CONTROL tag estrutura de controle para a operao
Length DINT imediato nmero de elementos na matriz a
serem manipulados
Position DINT imediato offset na matriz
valor inicial normalmente 0
Mode DINT imediato como distribuir a operao
selecione INC, ALL ou insira um
nmero
Expression SINT
INT
DINT
REAL
imediato
tag
uma expresso composta por tags
e/ou valores imediatos separados por
operadores
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo FSC est habilitada.
.DN BOOL O bit Executado energizado quando a instruo operou no ltimo elemento
(.POS = .LEN).
.ER BOOL O bit de erro no modificado.
.IN BOOL O bit inibido indica que a instruo FSC detectou uma comparao verdadeira. necessrio
zerar esse bit para continuar a operao de busca.
.FD BOOL O bit encontrado indica que a instruo FSC detectou uma comparao verdadeira.
.LEN DINT O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera.
.POS DINT A posio contm a posio do elemento atual que a instruo est acessando.
Publicao 1756-RM003C-PT-P - Novembro 2000
7-20 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a instruo FSC habilitada e a comparao verdadeira, a
instruo energiza o bit .FD e o bit .POS reflete a posio da matriz
onde a instruo encontrou a comparao verdadeira. A instruo
energiza o bit .IN para evitar outra busca.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
.POS < 0 ou .LEN < 0 4 21
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-21
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
examinar bit .DN
bit .DN = 0
bit .DN = 1
entrada da condio da linha for falsa
sada da condio da linha
definida como falsa
fim
bit .EN desenergizado.
bit .ER desenergizado.
bit .DN desenergizado.
valor .POS desenergizado
modo INC
no
sim
modo ALL
no
sim
bit .EN desenergizado.
.POS = .POS + 1
modo
numrico
bit interno
desenergizado
.LEN < 0 ou
.POS < 0
sim
no
falha grave
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
.POS < .LEN
no
sim
modo .LEN>
sim
no
modo .LEN>
.LEN = 0
sim
no
bit .DN energizado.
bit .EN
desenergizado.
pgina 7-13
Publicao 1756-RM003C-PT-P - Novembro 2000
7-22 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Condio: Ao:
entrada da condio da linha for verdadeira
sada da condio da linha
definida como verdadeira
fim
examinar bit .IN
bit .DN = 0
bit .DN = 1
.LEN = 0
no
sim
modo INC
no
sim
modo ALL
no
sim
loop_count =
loop_count - 1
loop_count < 0
no
sim
.POS = .POS + 1
avaliar comparao
.POS = .POS + 1
correspondncia
no
sim
bit .EN energizado
bit .FD energizado.
bit .IN energizado
.POS = .LEN
no
sim
bit .DN energizado.
bit .EN energizado
.POS = .POS + 1
examinar bit .ER
bit .ER = 0
bit .ER = 1
bit .DN energizado.
bit .EN energizado
modo
INC
modo
ALL
modo
numrico
comum
pgina 7-25
pgina 7-23 pgina 7-24
.LEN < 0 ou
.POS < 0
sim
no
falha grave
examinar bit .DN
bit .DN = 1
bit .IN = 0
bit .DN = 0
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-23
Condio: Ao:
examinar bit .EN
bit .EN = 1
bit .EN = 0
.POS = .POS + 1
.POS .LEN
sim
no
bit .EN energizado
loop_count = 1
.POS = .POS -1
examinar
bit interno
bit = 1
bit = 0
bit interno energizado
modo
INC
comum
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
sada da condio da linha
definida como verdadeira
fim
pgina 7-22
Publicao 1756-RM003C-PT-P - Novembro 2000
7-24 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Condio: Ao:
examinar bit .EN
bit .EN = 0
bit .EN = 1
.POS = .POS + 1
.POS .LEN
sim
no
loop_count = .LEN - .POS
.POS = .POS -1
examinar
bit interno
bit = 1
bit = 0
bit .EN energizado
bit .FD desenergizado.
modo
ALL
comum
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
sada da condio da linha
definida como
verdadeira
fim
pgina 7-22
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-25
Condio: Ao:
examinar bit .EN
bit .EN = 1
bit .EN = 0
.POS = .POS + 1
.POS .LEN
sim
no
examinar
bit interno
bit = 1
bit = 0
bit interno energizado
modo
numrico
comum
.POS = .POS -1
.POS = 0
sim
no
bit .DN energizado.
bit .EN energizado
sada da condio da linha
definida como
verdadeira
fim
modo .LEN
sim
no
modo .LEN>
bit .EN energizado
loop_count = .LEN - .POS
bit .FD desenergizado.
.POS = .POS -1
modo
loop_count
no
bit .EN energizado
loop_count = mode
sim
pgina 7-22
Publicao 1756-RM003C-PT-P - Novembro 2000
7-26 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Exemplo de Lgica
Ladder:
00000000000000000000000000000000 0
00000000000000000000000000000000 1
00000000000000000000000000000000 2
00000000000000000000000000000000 3
11111111111111110000000000000000 4
11111111111111111111111111111111 5
11111111111111111111111111111111 6
11111111111111111111111111111111 7
11111111111111111111111111111111 8
11111111111111111111111111111111 9
Quando habilitada, a instruo FSC compara cada um dos 10 primeiros elementos em array_1 com os elementos correspondentes em
array_2.
array_1 array_2
A instruo FSC descobre que esses
elementos no so iguais. A instruo
energiza os bits .FD e .IN. O valor .POS (4)
indica a posio dos elementos que so
diferentes. Para continuar a realizar a
comparao no restante da matriz, zere o bit
.IN.
exemplo 1
buscar uma correspondncia entre
duas matrizes
control_3.pos
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000001111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-27
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Expresses FSC
As expresses das instrues FSC so programadas da mesma forma
que as expresses nas instrues CMP. Use as sees a seguir para
mais informaes sobre operadores vlidos, formato e seqncia de
operao que so comuns nas duas instrues.
Quando habilitada, a instruo FSC compara MySearchKey com 10 elementos em array_1.
MySearchKey referncia
A instruo FSC descobre que esse
elemento da matriz igual a MySearchKey.
A instruo energiza os bits .FD e .IN. O valor
.POS (4) indica a posio dos elementos
iguais. Para continuar a realizar a
comparao no restante da matriz, zere o bit
.IN.
exemplo 2
buscar uma correspondncia em uma
matriz
control_3.pos
00000000000000000000000000000000 0
00000000000000000000000000000000 1
00000000000000000000000000000000 2
00000000000000000000000000000000 3
11111111111111110000000000000000 4
11111111111111111111111111111111 5
11111111111111111111111111111111 6
11111111111111111111111111111111 7
11111111111111111111111111111111 8
11111111111111111111111111111111 9
11111111111111110000000000000000
Publicao 1756-RM003C-PT-P - Novembro 2000
7-28 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Operadores vlidos
Formatao das expresses
Para cada operador usado em uma expresso, necessrio fornecer
um ou dois operandos (tags ou valores imediatos). Use a tabela a
seguir para formatar operadores e operandos dentro de uma
expresso:
Operador: Descrio: timo:
+ adio DINT, REAL
- subtrao/negativo DINT, REAL
* multiplicao DINT, REAL
/ diviso DINT, REAL
= igual DINT, REAL
< menor do que DINT, REAL
<= menor ou igual a DINT, REAL
> maior do que DINT, REAL
>= maior ou igual a DINT, REAL
<> diferente de DINT, REAL
** expoente (x elevado a y) DINT, REAL
ABS valor absoluto DINT, REAL
ACS arco co-seno REAL
AND bitwise AND DINT
ASN arco seno REAL
ATN arco tangente REAL
COS co-seno REAL
DEG radianos para graus DINT, REAL
FRD BCD para inteiro DINT
LN natural log REAL
LOG logaritmo na base de
10
REAL
MOD mdulo-diviso DINT, REAL
NOT bitwise complemento DINT
OR bitwise OR DINT
RAD graus para radianos DINT, REAL
SIN seno REAL
SQR raiz quadrada DINT, REAL
TAN tangente REAL
TOD inteiro para BCD DINT
TRN truncado DINT, REAL
XOR bitwise exclusivo OR DINT
Operador: Descrio: timo:
Para operadores
que operam com:
Use esse formato: Exemplos:
um operando operador (operando) ABS(tag_a)
dois operandos operand_a operator operand_b tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD
(tag_f / tag_g)
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-29
Determinao da seqncia de operao
As operaes gravadas na expresso so realizadas pela instruo em
uma seqncia prescrita, no necessariamente na seqncia em que
foram gravadas. possvel suprimir a seqncia da operao
agrupando-se os termos dentro de parnteses, forando a instruo
para realizar uma operao dentro dos parnteses, antes de outras
operaes.
Operaes com seqncia igual so realizadas da esquerda para a
direita.
Seqncia: Operao:
1. ( )
2. ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG,
RAD, SIN, SQR, TAN, TOD, TRN
3. **
4. (negativo), NOT
5. *, /, MOD
6. <, <=, >, >=, =
7. (subtrao), +
8. AND
9. XOR
10. OR
Publicao 1756-RM003C-PT-P - Novembro 2000
7-30 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Cpia de Arquivo(COP)
Cpia de Arquivo Sncrona
(CPS)
A instruo COP copia o(s) valor (es) de Source para Destination.
Source permanece inalterado.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estas instrues no esto disponveis no bloco de funo.
Descrio: Durante a execuo das instrues COP e CPS, outras aes do
controlador podem tentar interromper a operao de cpia e alterar os
dados de origem ou de destino:
O nmero de bytes copiados :
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
estrutura
tag elemento inicial para cpia
Importante: os operandos Source e
Destination devem ter o mesmo tipo
de dado ou podem ocorrer resultados
inesperados.
Destination SINT
INT
DINT
REAL
estrutura
tag elemento inicial a ser sobrescrito por
Source
Importante: os operandos Source e
Destination devem ter o mesmo tipo
de dado ou podem ocorrer resultados
inesperados.
Length DINT imediato
tag
nmero de elementos em Destination
a serem copiados
Se a origem ou o destino for: E voc quiser: Selecione: Notas:
tag produzido
tag consumido
dados de E/S
dados que possam ser
sobrescritos por outra tarefa
impedir que os dados sejam
alterados durante a operao de
cpia
CPS As tarefas que tentarem
interromper uma instruo CPS
sero retardadas at que a
instruo tenha sido concluda.
Para estimar o tempo de execuo
da instruo CPS, consulte o
ControlLogix System User
Manual, publication 1756-UM001.
permitir que os dados sejam
alterados durante a operao de
cpia
COP
nenhuma acima COP
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-31
Contagem de Byte = Comprimento (nmero de bytes em tipos de
dados em Destination)
As instrues COP e CPS operam na memria de dados contnua e
realizam uma cpia da memria direta byte-a-byte, que requer uma
compreenso do layout da memria do controlador.
As instrues COP e CPS no gravam logo aps o final da matriz. Se o
comprimento for maior do que o nmero total de elementos na matriz
Destination, as instrues COP e CPS param no final da matriz.
Nenhuma falha grave gerada.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
ATENO
!
Se a contagem de byte for maior do que o
comprimento de Source, dados no previstos sero
copiados para os elementos restantes.
Publicao 1756-RM003C-PT-P - Novembro 2000
7-32 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira
sada da condio da linha
definida como
verdadeira
fim
end_address = start_address + (Comprimento nmero
de bytes em um elemento em destination)
sim
no
end_address > fim
da matriz destination
end_address = fim da matriz destination
source_address = Source
sim
no
destination_address =
end_address
copiar os dados de source_address para
destination _address
source_address = source _address + 1
destination_address =
destination_address + 1
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-33
Exemplo de Lgica
Ladder:
A matriz project_data (100 elementos) armazena uma variedade de valores que se alteram em
perodos diferentes na aplicao. Para enviar uma imagem completa de project_data em um
determinado perodo de tempo para outro controlador, a instruo CPS copia project_data to
produced_array.
Enquanto a instruo CPS copia os dados, nenhuma atualizao de I/O ou outra tarefa pode
alterar os dados.
A tag produced_array produz os dados em uma rede ControlNet para consumo de outros
controladores.
Para usar a mesma imagem de dados (ou seja, uma cpia sincronizada dos dados), o
controlador (ou controladores) de consumo utiliza uma instruo CPS para copiar os dados da
tag consumida para outra tag, para uso na aplicao.
Local:0:I.Data armazena os dados de entrada para a rede DeviceNet que estiver conectada ao
mdulo 1756-DNB no slot 0. Para sincronizar as entradas com a aplicao, a instruo CPS copia os
dados de entrada em input_buffer.
Enquanto a instruo CPS copia os dados, nenhuma atualizao de I/O pode alterar esses
dados.
Quando a aplicao executada, ela utiliza para suas entradas os dados de entrada de
input_buffer.
exemplo 1
Tanto array_4 como array_5 so o mesmo tipo de dados. Quando habilitada, a instruo
COP copia os primeiros 10 elementos de array_4 nos primeiros 10 elementos de array_5.
exemplo 2
Quando habilitada, a instruo COP copia a estrutura timer_1 no elemento 5 de array_timer.
A instruo copia somente uma estrutura para um elemento da matriz.
exemplo 3
Synchronous Copy File
Source project_data[0]
Dest produced_array[0]
Length 100
CPS
42578
exemplo 4
Synchronous Copy File
Source Local:0:I.Data[0]
Dest input_buffer[0]
Length 20
CPS
42578
Publicao 1756-RM003C-PT-P - Novembro 2000
7-34 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
array_timer[0]
array_timer[1]
array_timer[2]
array_timer[3]
array_timer[4]
Esse exemplo inicializa uma matriz de estruturas de temporizador. Quando habilitadas, as instrues MOV inicializam os valores .PRE e .ACC do
primeiro elemento array_timer. Quando habilitada, a instruo COP copia um bloco contnuo de bytes, iniciando em array_timer[0]. O comprimento
de nove estruturas de temporizador.
exemplo 5
array_timer
Primeiro a instruo copia os valores
timer[0] em timer[1]
Ento, a instruo copia os valores
timer[1] em timer[2]
Depois, a instruo copia os valores
timer[2] em timer[3]
Ento, a instruo copia os valores
timer[3] em timer[4]
Finalmente, a instruo copia os valores
timer[9] em timer[10]
array_timer[9]
array_timer[10]
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-35
Preenchimento de Arquivo
(FLL)
A instruo FLL preenche os elementos de uma matriz com o valor
Source. Source permanece inalterado.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: O nmero de bytes preenchidos :
Contagem de Byte = Comprimento (nmero de bytes em tipos de
dados em Destination)
A instruo FLL opera na memria de dados contnua.
A instruo FLL no gravar logo aps o final de uma matriz. Se o
comprimento for maior do que o nmero total de elementos na matriz
Destination, a instruo COP pra no final da matriz. Nenhuma falha
grave gerada.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
elemento para cpia
Importante: os operandos Source e
Destination devem ter o mesmo tipo
de dado ou podem ocorrer resultados
inesperados.
Destination SINT
INT
DINT
REAL
estrutura
tag elemento inicial a ser sobrescrito por
Source
Importante: os operandos Source e
Destination devem ter o mesmo tipo
de dado ou podem ocorrer resultados
inesperados.
O melhor jeito para inicializar uma
estrutura usar a instruo COP.
Length DINT imediato nmero de elementos a serem
preenchidos
Publicao 1756-RM003C-PT-P - Novembro 2000
7-36 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Para obter resultados melhores, Source e Destination devem ser do
mesmo tipo. Se voc quiser preencher uma estrutura, use a instruo
COP (consulte exemplo 3 na pgina 7-34). Se voc quiser misturar os
tipos de dados para Source e Destination, os elementos em
Destination so preenchidos com os valores convertidos de Source.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Se Source for: E Destination for: Source convertido
para:
SINT, INT, DINT ou REAL SINT SINT
SINT, INT, DINT ou REAL INT INT
SINT, INT, DINT ou REAL DINT DINT
SINT, INT, DINT ou REAL REAL REAL
SINT estrutura SINT (no convertido)
INT estrutura INT (no convertido)
DINT estrutura DINT (no convertido)
REAL estrutura REAL (no convertido)
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-37
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira
sada da condio da linha
definida como
verdadeira
fim
end_address = start_address +
(Comprimento nmero de bytes em um
elemento em destination)
sim
no
end_address > fim
da matriz destination
end_address = fim da matriz destination
source_address = Source
sim
no
destination_address =
end_address
copiar os dados de source_address para
destination _address
destination_address =
destination_address + 1
Publicao 1756-RM003C-PT-P - Novembro 2000
7-38 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando habilitada, a instruo FLL copia o valor em value_1 para dest_1.
Tipo de dados
(value_1) Source:
Valor (value_1)
Source:
Destination
(dest_1) tipo de
dados:
Destination
(dest_1) valor
depois de FLL:
SINT 16#80 (-128) DINT 16#FFFF FF80 (-128)
DINT 16#1234 5678 SINT 16#78
SINT 16#01 REAL 1.0
REAL 2.0 INT 16#0002
SINT 16#01 TIMER 16#0101 0101
16#0101 0101
16#0101 0101
INT 16#0001 TIMER 16#0001 0001
16#0001 0001
16#0001 0001
DINT 16#0000 0001 TIMER 16#0000 0001
16#0000 0001
16#0000 0001
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-39
Mdia de Arquivo (AVE)
A instruo AVE calcula a mdia de um conjunto de valores.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array SINT
INT
DINT
REAL
tag da
matriz
encontre a mdia dos valores nessa matriz
especifique o primeiro elemento do grupo de
elementos para a mdia
no use CONTROL.POS em subscrito
Dimension
to vary
DINT imediato
(0, 1, 2)
a dimenso a ser usada
depende do nmero de dimenses, a
seqncia
array[dim_0,dim_1,dim_2]
array[dim_0,dim_1]
array[dim_0]
Destination SINT
INT
DINT
REAL
tag resultado da operao
Control CONTROL tag estrutura de controle para a operao
Length DINT imediato nmero de elementos da matriz para a mdia
Position DINT imediato elemento atual na matriz
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo AVE est habilitada.
.DN BOOL O bit executado energizado quando a instruo operou no ltimo elemento na Matriz (.POS
= .LEN).
.ER BOOL O bit de erro energizado se a instruo gerar um overflow. A instruo pra a execuo at
que o programa zere o bit .ER. A posio do elemento que provocou o overflow est
armazenada no valor .POS.
.LEN DINT O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera.
.POS DINT A posio contm a posio do elemento atual que a instruo est acessando.
Publicao 1756-RM003C-PT-P - Novembro 2000
7-40 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Descrio: A instruo AVE calcula a mdia de um conjunto de valores.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
IMPORTANTE
Certifique-se de que Length no faa com que a
instruo exceda o operando Dimension to vary
especificado. Se isso ocorrer, Destination ficar
incorreto.
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
.POS < 0 ou .LEN < 0 4 21
o operando Dimension to vary no existe
para a matriz especificada
4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-41
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .DN desenergizado.
O bit .ER desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A instruo AVE calcula a mdia, adicionando todos os elementos especificados na
matriz e dividindo pelo nmero de elementos.
Internamente, a instruo usa uma instruo FAL para calcular a mdia.
Expresso = clculo da mdia
Modo = ALL
Para detalhes sobre como a instruo FAL executada, consulte a pgina 7-9.
examinar bit .DN
bit .DN = 0
bit .DN = 1
entrada da condio da linha for falsa
sada da condio da linha
definida como falsa
fim
bit .EN desenergizado.
bit .ER desenergizado.
bit .DN desenergizado.
valor .POS desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
7-42 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
exemplo 1
array_dint DINT[4,5]
dimenso 1
dimenso 0
0 20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
1
2
3
0 1 2 3 4
AVE
19 14 9 4 + + +
4
-------------------------------------
46
4
------ 11.5 = = =
dint_ave = 12
s
u
b
s
c
r
i
t
o
s
exemplo 2
array_dint is DINT[4,5]
dimenso 1
dimenso 0
0 20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
1
2
3
0 1 2 3 4
AVE
5 4 3 2 1 + + + +
5
----------------------------------------
15
5
------ 3 = = =
s
u
b
s
c
r
i
t
o
s
dint_ave = 3
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-43
Classificao de Arquivo
(SRT)
A instruo SRT classifica um conjunto de valores em uma dimenso
(Dim to vary) da Matriz em ordem crescente.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array SINT
INT
DINT
REAL
tag da
matriz
matriz para classificao
especifique o primeiro elemento do grupo de
elementos para classificao
no use CONTROL.POS em subscrito
Dimension
to vary
DINT imediato
(0, 1, 2)
a dimenso a ser usada
depende do nmero de dimenses, a
seqncia
array[dim_0,dim_1,dim_2]
array[dim_0,dim_1]
array[dim_0]
Control CONTROL tag estrutura de controle para a operao
Length DINT imediato nmero de elementos da matriz
para classificao
Position DINT imediato elemento atual na matriz
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo SRT est habilitada.
.DN BOOL O bit executado energizado quando os elementos especificados forem classificados.
.ER BOOL O bit de erro energizado quando uma das condies .LEN < 0 ou .POS < 0 tambm gerar
uma falha grave.
.LEN DINT O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera.
.POS DINT A posio contm a posio do elemento atual que a instruo est acessando.
Publicao 1756-RM003C-PT-P - Novembro 2000
7-44 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Descrio: A instruo SRT classifica um conjunto de valores em uma dimenso
(Dim to vary) da Matriz em ordem crescente.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
IMPORTANTE
Certifique-se de que Length no faa com que a
instruo exceda o operando Dimension to vary
especificado. Se isto acontecer, resultados
inesperados ocorrero.
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
.POS < 0 ou .LEN < 0 4 21
o operando Dimension to vary no existe
para a matriz especificada
4 20
A instruo tenta acessar os dados
localizados fora dos limites da matriz.
4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-45
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .DN desenergizado.
O bit .ER desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A instruo SRT classifica os elementos especificados da matriz em ordem crescente.
examinar bit .DN
bit .DN = 0
bit .DN = 1
entrada da condio da linha for falsa
sada da condio da linha
definida como falsa
fim
bit .EN desenergizado.
bit .ER desenergizado.
bit .DN desenergizado.
valor .POS desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
7-46 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
exemplo 1
int _array DINT[4,5]
dimenso 1
dimenso 0
0 20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
1
2
3
0 1 2 3 4
dimenso 1
dimenso 0
0 20 19 3 17 16
15 14 8 12 11
10 9 13 7 6
5 4 18 2 1
1
2
3
0 1 2 3 4
Antes
Depois
s
u
b
s
c
r
i
t
o
s
s
u
b
s
c
r
i
t
o
s
int _array DINT[4,5]
dimenso 1
dimenso 0
0 20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
1
2
3
0 1 2 3 4
dimenso 1
dimenso 0
0 20 19 18 17 16
15 14 13 12 11
6 7 8 9 10
5 4 3 2 1
1
2
3
0 1 2 3 4
Antes Depois
s
u
b
s
c
r
i
t
o
s
s
u
b
s
c
r
i
t
o
s
exemplo 2
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-47
Desvio Padro do Arquivo
(STD)
A instruo STD calcula o desvio padro de um conjunto de valores
em uma dimenso da Matriz e armazena o resultado em Destination.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array SINT
INT
DINT
REAL
tag da
matriz
encontra o desvio padro dos valores
nessa matriz
especifica o primeiro elemento do grupo de
elementos a serem usados no clculo do
desvio padro
no use CONTROL.POS em subscrito
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Dimension
to vary
DINT imediato
(0, 1, 2)
a dimenso a ser usada
depende do nmero de dimenses, a
seqncia
array[dim_0,dim_1,dim_2]
array[dim_0,dim_1]
array[dim_0]
Destination REAL tag resultado da operao
Control CONTROL tag estrutura de controle para a operao
Length DINT imediato nmero de elementos da matriz a
serem usados no clculo do desvio padro
Position DINT imediato elemento atual na matriz
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo STD est habilitada.
.DN BOOL O bit executado energizado quando o clculo concludo.
.ER BOOL O bit de erro energizado quando a instruo gerar um overflow. A instruo pra a
execuo at que o programa zere o bit .ER. A posio do elemento que provocou o overflow
est armazenada no valor .POS.
.LEN DINT O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera.
.POS DINT A posio contm a posio do elemento atual que a instruo est acessando.
Publicao 1756-RM003C-PT-P - Novembro 2000
7-48 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Descrio: O desvio padro calculado de acordo com esta frmula:
Onde:
start = subscrito dimension-to-vary do operando array
x
i
= elemento da tag na matriz
N = nmero de elementos especificados na matriz
AVE =
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
IMPORTANTE
Certifique-se de que Length no faa com que a
instruo exceda o operando Dimension to vary
especificado. Se isso ocorrer, Destination ficar
incorreto.
X
start i + ( )
AVE
2
[ ]
i 1 =
N





N 1 ( )
--------------------------------------------------------------------
Desvio Padro =
x
start i + ( )
i 1 =
N





N
-----------------------------------------
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
.POS < 0 ou .LEN < 0 4 21
o operando Dimension to vary no existe
para a matriz especificada
4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-49
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .DN desenergizado.
O bit .ER desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A instruo STD calcula o desvio padro dos elementos especificados.
Internamente, a instruo usa uma instruo FAL para calcular a mdia.
Expresso = clculo do desvio padro
Modo = ALL
Para detalhes sobre como a instruo FAL executada, consulte a pgina 7-9.
examinar bit .DN
bit .DN = 0
bit .DN = 1
entrada da condio da linha for falsa
sada da condio da linha
definida como falsa
fim
bit .EN desenergizado.
bit .ER desenergizado.
bit .DN desenergizado.
valor .POS desenergizado
Publicao 1756-RM003C-PT-P - Novembro 2000
7-50 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
Exemplo de Lgica
Ladder:
Execuo de Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
exemplo 1
array_dint DINT[4,5]
dimenso 1
dimenso 0
0 20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
1
2
3
0 1 2 3 4
STD
16 8.5
2
11 8.5
2
6 8.5
2
1 8.5
2
+ + +
4 1
--------------------------------------------------------------------------------------------------------------------------- 6.454972 = =
AVE
16 11 6 1 + + +
4
-------------------------------------
34
4
------ 8.5 = = =
s
u
b
s
c
r
i
t
o
s
real_std = 6,454972
exemplo 2
array_dint DINT[4.5]
dimenso 1
dimenso 0
0 20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
1
2
3
0 1 2 3 4
STD
20 18
2
19 18
2
18 18
2
17 18
2
16 18
2
+ + + +
5 1
------------------------------------------------------------------------------------------------------------------------------------------------------------ 1.581139 = =
AVE
20 19 18 17 16 + + + +
5
-------------------------------------------------------
90
5
------ 18 = = =
s
u
b
s
c
r
i
t
o
s
real_std = 1,581139
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD) 7-51
Notas:
Publicao 1756-RM003C-PT-P - Novembro 2000
7-52 Instrues de Arquivo/Diversos (FAL, FSC, COP, FLL, AVE, SRT, STD)
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 8
Instrues de Deslocamento/Matriz (Arquivo)
(BSL, BSR, FFL, FFU, LFL, LFU)
Introduo
Use as instrues de deslocamento/matriz (arquivo) para modificar a
localizao dos dados dentro das matrizes.
possvel misturar os tipos de dados, mas podem ocorrer perda de
preciso e erro de arredondamento.
Para instrues de lgica ladder, os tipos de dados em negrito
indicam os tipos de dados timos. Uma instruo executa mais
rapidamente e requer menos memria se todos os operandos da
instruo usam o mesmo tipo de dados timo, geralmente DINT ou
REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
carregar bits, deslocar bits e descarregar bits
de uma matriz de bits, um bit de cada vez.
BSL 8-2
BSR 8-6
carregar e descarregar os valores na
mesma seqncia.
FFL 8-10
FFU 8-16
carregar e descarregar os valores em
ordem reversa.
LFL 8-22
LFU 8-28
Publicao 1756-RM003C-PT-P - Novembro 2000
8-2 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Deslocamento de Bit para a
Esquerda (BSL)
A instruo BSL desloca os bits especificados dentro da Matriz uma
posio para a esquerda.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo descarrega o bit mais significativo dos
bits especificados para o bit .UL, desloca os bits restantes uma posio
para a esquerda e carrega o bit Source no bit 0 da Matriz.
A instruo BSL opera na memria de dados contnua.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array DINT tag da
matriz
matriz a ser modificada
especifique o primeiro elemento do grupo de
elementos
no use CONTROL.POS no subscrito
Control CONTROL tag estrutura de controle para a operao
Bit Source BOOL tag bit a ser deslocado
Length DINT imediato nmero de bits da matriz a ser deslocada
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo BSL est habilitada.
.DN BOOL O bit executado energizado para indicar que os bits foram deslocados uma posio para a
esquerda.
.UL BOOL O bit de descarga a sada da instruo. O bit .UL armazena o status do bit que foi deslocado
fora da faixa dos bits.
.ER BOOL O bit de erro energizado quando .LEN < 0.
.LEN DINT O comprimento especifica o nmero de bits na matriz a ser deslocado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-3
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .DN desenergizado.
O bit .ER desenergizado.
O valor .POS desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .EN desenergizado.
O bit .DN desenergizado.
O bit .ER desenergizado.
O valor .POS desenergizado.
A sada da condio da linha definida como falsa.
Publicao 1756-RM003C-PT-P - Novembro 2000
8-4 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Exemplo de Lgica
Ladder:
Condio: Ao:
entrada da condio da linha for verdadeira
examinar bit .EN
bit .EN = 1
bit .EN = 0
fim
bit .DN energizado.
deslocar matriz da esquerda uma posio
para a esquerda
bit .EN energizado
sada da condio da linha
definida como verdadeira
bit .DN energizado.
.POS = .LEN
.LEN = 0
sim
no
.LEN < 0
sim
no
Bit
Source
bit .UL matriz
examinar bit source
.source bit = 1
.source bit = 0
bit .UL permanece
energizado
bit .UL energizado
bit .ER
energizado
exemplo 1
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-5
9 8 7 6 5 4 3 2 1 0
array_dint[0]
antes do
deslocamento
1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
9 8 7 6 5 4 3 2 1 0
array_dint[0]d
epois do
deslocamento
0 1 1 1 1 0 0 0 0 1
Quando habilitada, a instruo BSL inicia no bit 0 em array_dint[0]. A instruo descarrega array_dint[0].9 no bit .UL, desloca os
bits restantes e carrega input_1 em array_dint[0].0. Os valores nos bits restantes (10-31) so invlidos.
1
input_1
0
bit .UL
esses bits foram
deslocados esquerda
31 0
array_dint[0] 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
31 0
array_dint[1] 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
Quando habilitada, a instruo BSL inicia no bit 0 em array_dint[0]. A instruo descarrega array_dint[1].25 no bit .UL, desloca os
bits restantes e carrega input_1 em array_dint[0].0. Os valores nos bits restantes (31-26 in array_dint[1]) so invlidos. Observe
como array_dint[0].31 desloca-se atravs das palavras para array_dint[1].0.
exemplo 2
1
input_1
esses bits foram deslocados esquerda
0
bit .UL
esses bits foram deslocados esquerda
Publicao 1756-RM003C-PT-P - Novembro 2000
8-6 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Deslocamento de Bit para a
Direita (BSR)
A instruo BSR desloca os bits especificados dentro da Matriz uma
posio para a direita.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo descarrega o valor do bit da Matriz
para o bit .UL, desloca os bits restantes uma posio para a direita e
carrega o bit Source no bit mais significativo dos bits especificados.
A instruo BSR opera na memria de dados contnua.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array DINT tag da
matriz
matriz a ser modificada
especifica o elemento onde o deslocamento
deve comear
no use CONTROL.POS em subscrito
Control CONTROL tag estrutura de controle para a operao
Bit Source BOOL tag bit a ser deslocado
Length DINT imediato nmero de bits da matriz a ser deslocada
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo BSR est habilitada.
.DN BOOL O bit executado energizado para indicar que os bits foram deslocados uma posio para a
direita.
.UL BOOL O bit de descarga a sada da instruo. O bit .UL armazena o status do bit que foi deslocado
fora da faixa dos bits.
.ER BOOL O bit de erro energizado quando .LEN < 0.
.LEN DINT O comprimento especifica o nmero de bits na matriz a ser deslocado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-7
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura O bit .EN desenergizado.
O bit .DN desenergizado.
O bit .ER desenergizado.
O valor .POS desenergizado.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .EN desenergizado.
O bit .DN desenergizado.
O bit .ER desenergizado.
O valor .POS desenergizado.
A sada da condio da linha definida como falsa.
Publicao 1756-RM003C-PT-P - Novembro 2000
8-8 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Exemplo de Lgica
Ladder:
Condio: Ao:
entrada da condio da linha for verdadeira
examinar bit .EN
bit .EN = 1
bit .EN = 0
fim
bit .DN energizado.
deslocar matriz uma posio para a esquerda
bit .EN energizado
sada da condio da linha
definida como verdadeira
bit .DN energizado.
.POS = .LEN
.LEN = 0
sim
no
.LEN < 0
sim
no
Bit
Source
bit .UL matriz
examinar bit source
.source bit = 1
.source bit = 0
bit .UL permanece
energizado
bit .UL energizado
bit .ER
energizado
exemplo 1
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-9
9 8 7 6 5 4 3 2 1 0
array_dint[0]
antes do
deslocamento
1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
9 8 7 6 5 4 3 2 1 0
array_dint[0]d
epois do
deslocamento
1 0 0 1 1 1 1 0 0 0
Quando habilitada, a instruo BSR inicia no bit 9 em array_dint[0]. A instruo descarrega array_dint[0].0no bit .UL, desloca os
bits restantes para a direita e carrega input_1 em array_dint[0].9. Os valores nos bits restantes (10-31) so invlidos.
esses bits foram deslocados direita
0
bit .UL
1
input_1
31 0
array_dint[0] 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
31 0
array_dint[1] 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
Quando habilitada, a instruo BSR inicia no bit 25 em array_dint[1]. A instruo descarrega array_dint[0].0 no bit .UL , desloca
os bits restantes para a direita e carrega input_1 em array_dint[1].25. Os valores nos bits restantes (31-26 em dint_array[1]) so
invlidos. Observe como array_dint[0].0 desloca-se atravs das palavras para array_dint[1].31.
exemplo 2
esses bits foram deslocados direita
0
bit .UL
esses bits foram deslocados direita
1
input_1
Publicao 1756-RM003C-PT-P - Novembro 2000
8-10 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Carga FIFO (FFL)
A instruo FFL copia o valor Source para FIFO.
Operandos de Lgica
Ladder:
Se voc usar uma estrutura definida pelo usurio como tipo de dados
para o operando Source ou FIFO, use a mesma estrutura para os dois
operandos.
Estrutura:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
estrutura
imediato
tag
dados a serem armazenados em FIFO
Source converte para o tipo de dados do tag da matriz. Um inteiro menor
converte para um inteiro maior pela extenso do sinal.
FIFO SINT
INT
DINT
REAL
estrutura
tag da
matriz
FIFO a ser modificado
especifique o primeiro elemento de FIFO
no use CONTROL.POS em subscrito
Control CONTROL tag estrutura de controle para a operao
geralmente usa o mesmo CONTROL,
conforme associado a FFU
Length DINT imediato nmero mximo de elementos que FIFO pode
controlar de uma vez.
Position DINT imediato prxima localizao em FIFO onde a instruo
carrega os dados.
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo FFL est habilitada.
.DN BOOL O bit executado energizado para indicar que FIFO est cheio (.POS=LEN). O bit .DN inibe a
carga de FIFO at .POS < .LEN.
.EM BOOL O bit vazio indica que FIFO est vazio. Se .LEN 0 ou .POS < 0, tanto o bit .EM quanto o bit
.DN esto energizados.
.LEN DINT O comprimento especifica o nmero mximo de elementos que FIFO pode controlar de uma
vez.
.POS DINT A posio identifica a localizao em FIFO onde a instruo carregar o prximo valor.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-11
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Use a instruo FFL com a instruo FFU para armazenar e recuperar
dados na seqncia primeiro a entrar, primeiro a sair. Quando usada
em pares, as instrues FFL e FFU estabelecem um registro de
deslocamento assncrono.
Geralmente, Source e FIFO so do mesmo tipo de dados.
Quando habilitada, a instruo FFL carrega o valor Source na posio
FIFO identificada pelo valor .POS. A instruo carrega um valor cada
vez que a instruo habilitada, at que FIFO fique cheio.
A instruo FFL opera na memria de dados contnua.
Flags de Status Aritmtico: no afetados
Condies de Falha:
Uma falha grave ocorrer se: Tipo de falha: Cdigo de falha:
(elemento de incio + .POS) > tamanho da
matriz de FIFO
4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
8-12 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura
fim
o bit .EN energizado para evitar uma
carga falsa quando a varredura comear
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-13
Condio: Ao:
entrada da condio da linha for falsa
fim
bit .EN desenergizado.
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
8-14 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Condio: Ao:
entrada da condio da linha for verdadeira
fim
sada da condio da linha definida
como verdadeira
examinar bit .EN
.EN = 0
.EN = 1
bit .EN energizado
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM energizado
.DN energizado
bit .EM desenergizado.
bit .DN desenergizado.
.POS = .POS + 1
.POS .LEN
sim
no
bit .DN energizado.
.POS ou
.LEN >
tamanho da
matriz
sim
no
falha grave
.POS > .LEN
sim
no
.POS = .POS -1
FIFO[.POS - 1] = source
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM desenergizado.
bit .DN desenergizado.
.POS = 0
sim
no
bit .EM energizado
.POS .LEN
sim
no
bit .DN energizado.
bit .EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-15
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
antes da carga FIFO depois da carga FIFO
array_dint[0] 00000 00000
11111 11111
22222 22222
33333 control_1.pos = 5 33333
44444 value_1 = 55555 44444
array_dint[5] 00000 55555
00000 00000 control_1.pos = 6
00000 00000
00000 00000
00000 00000
Quando habilitada, a instruo FFL carrega value_1 para a prxima posio em FIFO, que array_dint[5] nesse exemplo.
Publicao 1756-RM003C-PT-P - Novembro 2000
8-16 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Descarga FIFO (FFU)
A instruo FFU descarrega o valor da posio 0 (primeira posio) de
FIFO e armazena esse valor em Destination. Os dados restantes em
FIFO se deslocam uma posio para baixo.
Operandos de Lgica
Ladder:
Se voc usar uma estrutura definida pelo usurio como tipo de dados
para o operando FIFO ou Destination, use a mesma estrutura para os
dois operandos.
Estrutura:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
FIFO SINT
INT
DINT
REAL
estrutura
tag da
matriz
FIFO a ser modificado
especifique o primeiro elemento de FIFO
no use CONTROL.POS em subscrito
Destination SINT
INT
DINT
REAL
estrutura
tag valor que saiu de FIFO
O valor Destination converte para o tipo de dados do tag Destination. Um
inteiro menor converte para um inteiro maior pela extenso do sinal.
Control CONTROL tag estrutura de controle para a operao
geralmente usa o mesmo CONTROL, como a
FFL associada
Length DINT imediato nmero mximo de elementos que FIFO pode
controlar de uma vez.
Position DINT imediato prxima localizao em FIFO onde a instruo
descarrega os dados.
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
. EU BOOL O bit de descarga habilitado indica que a instruo FFU est habilitada. O bit .EU
energizado para pr-programar uma descarga falsa quando a varredura do programa inicia.
.DN BOOL O bit executado energizado para indicar que FIFO est cheio (.POS=LEN).
.EM BOOL O bit vazio indica que FIFO est vazio. Se .LEN 0 ou .POS < 0, os bits .EM e .DN estaro
energizados.
.LEN DINT O comprimento especifica o nmero mximo de elementos em FIFO.
.POS DINT A posio identifica o fim dos dados que foram carregados em FIFO.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-17
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Use a instruo FFU com a instruo FFL para armazenar e recuperar
dados na seqncia primeiro a entrar, primeiro a sair.
Se FIFO for um tipo de dados DINT, Destination dever ser do tipo
DINT; se FIFO for um tipo de dados REAL, Destination dever ser um
tipo de dados REAL.
Quando habilitada, a instruo FFU descarrega os dados do primeiro
elemento de FIFO e coloca esse valor em Destination. A instruo
descarrega um valor cada vez que a instruo habilitada, at que
FIFO fique vazio. Se FIFO estiver vazio, FFU retorna 0 para
Destination.
A instruo FFU opera na memria de dados contnua.
Flags de Status Aritmtico: no afetados
Condies de Falha:
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
Length > FIFO tamanho da matriz 4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
8-18 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura
fim
o bit .EU energizado para evitar
uma descarga falsa quando a
varredura comear
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-19
Condio: Ao:
entrada da condio da linha for falsa
fim
bit .EU desenergizado.
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
8-20 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Condio: Ao:
entrada da condio da linha for verdadeira
fim
examinar bit .EU
.EU = 0
.EU = 1
bit .EU energizado
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM energizado
.DN energizado
bit .EM
desenergizado.
bit .DN
.LEN >
tamanho da
sim
no
falha grave
.POS 1
sim
no
bit .EM energizado
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM desenergizado.
bit .DN desenergizado.
.POS = 0
sim
no
bit .EM energizado
.POS .LEN
sim
no
bit .DN energizado.
bit .EM energizado
.DN energizado
.POS < 1
sim
no
Destination = 0
.POS = .POS -1
Destination = FIFO[0]
i = 1
FIFO[i - 1] = FIFO[i]
i = i +1
i < .LEN
sim
no
sada da condio da linha
definida como
verdadeira
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-21
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
antes da descarga FIFO depois da descarga FIFO
array_dint[0] 00000 11111
11111 22222
22222 33333
33333 44444
44444 55555
array_dint[5] 55555 00000 control_1.pos = 5
00000 control_1.pos = 6 00000 value_2 = 00000
00000 00000
00000 00000
00000 00000
Quando habilitada, a instruo FFU descarrega array_dint[0] em value_2 e desloca os elementos restantes para array_dint.
Publicao 1756-RM003C-PT-P - Novembro 2000
8-22 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Carga LIFO (LFL)
A instruo LFL copia o valor Source para LIFO.
Operandos de Lgica
Ladder:
Se voc usar uma estrutura definida pelo usurio como tipo de dados
para o operando Source ou LIFO, use a mesma estrutura para os dois
operandos.
Estrutura:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
estrutura
imediato
tag
dados a serem armazenados em LIFO
Source converte para o tipo de dados do tag da matriz. Um inteiro menor
converte para um inteiro maior pela extenso do sinal.
LIFO SINT
INT
DINT
REAL
estrutura
tag da
matriz
LIFO a ser modificado
especifique o primeiro elemento de LIFO
no use CONTROL.POS em subscrito
Control CONTROL tag estrutura de controle para a operao
geralmente usa o mesmo CONTROL,
conforme a LFU associada
Length DINT imediato nmero mximo de elementos que LIFO pode
controlar de uma vez.
Position DINT imediato prxima localizao em LIFO onde a instruo
carrega os dados.
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo LFL est habilitada.
.DN BOOL O bit executado energizado para indicar que LIFO est cheio (.POS=LEN). O bit .DN inibe a
carga de LIFO at .POS < .LEN.
.EM BOOL O bit vazio indica que LIFO est vazio. Se .LEN 0 ou .POS < 0, tanto o bit .EM quanto o bit
.DN esto energizados.
.LEN DINT O comprimento especifica o nmero mximo de elementos que LIFO pode controlar de uma
vez.
.POS DINT A posio identifica a localizao em LIFO onde a instruo carregar o prximo valor.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-23
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Use a instruo LFL com a instruo LFU para armazenar e recuperar
dados na seqncia ltimo a entrar, primeiro a sair. Quando usada em
pares, as instrues LFL e LFU estabelecem um registro de
deslocamento assncrono.
Geralmente, Source e LIFO so do mesmo tipo de dados.
Quando habilitada, a instruo LFL carrega o valor Source na posio
LIFO identificada pelo valor .POS. A instruo carrega um valor cada
vez que a instruo habilitada, at que LIFO fique cheia.
A instruo LFL opera na memria de dados contnua.
Flags de Status Aritmtico: no afetados
Condies de Falha:
Uma falha grave ocorrer se: Tipo de falha: Cdigo de falha:
(elemento de incio + .POS) > tamanho da
matriz de LIFO
4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
8-24 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura
fim
o bit .EN energizado para evitar
uma carga falsa quando a varredura
comear
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-25
Condio: Ao:
entrada da condio da linha for falsa
fim
bit .EN desenergizado.
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
8-26 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Condio: Ao:
entrada da condio da linha for verdadeira
fim
sada da condio da linha definida
como verdadeira
examinar bit .EN
.EN = 0
.EN = 1
bit .EN energizado
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM energizado
.DN energizado
bit .EM desenergizado.
bit .DN desenergizado.
.POS = .POS + 1
.POS .LEN
sim
no
bit .DN energizado.
.POS ou .LEN >
tamanho da
matriz
sim
no
falha grave
.POS > .LEN
sim
no
.POS = .POS -1
LIFO[.POS - 1] = source
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM desenergizado.
bit .DN desenergizado.
.POS = 0
sim
no
bit .EM energizado
.POS .LEN
sim
no
bit .DN energizado.
bit .EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-27
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
antes da carga LIFO depois da carga LIFO
array_dint[0] 00000 00000
11111 11111
22222 22222
33333 control_1.pos = 5 33333
44444 value_1 = 55555 44444
array_dint[5] 00000 55555
00000 00000 control_1.pos = 6
00000 00000
00000 00000
00000 00000
Quando habilitada, a instruo LFL carrega value_1 para a prxima posio em LIFO, que array_dint[5] nesse exemplo.
Publicao 1756-RM003C-PT-P - Novembro 2000
8-28 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Descarga LIFO (LFU)
A instruo LFU descarrega o valor em .POS de LIFO e armazena 0
naquele local.
Operandos de Lgica
Ladder:
Se voc usar uma estrutura definida pelo usurio como tipo de dados
para o operando LIFO ou Destination, use a mesma estrutura para os
dois operandos.
Estrutura:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
LIFO SINT
INT
DINT
REAL
estrutura
tag da
matriz
LIFO a ser modificado
especifique o primeiro elemento de LIFO
no use CONTROL.POS em subscrito
Destination SINT
INT
DINT
REAL
estrutura
tag valor que saiu de LIFO
O valor Destination converte para o tipo de dados do tag Destination. Um
inteiro menor converte para um inteiro maior pela extenso do sinal.
Control CONTROL tag estrutura de controle para a operao
geralmente usa o mesmo CONTROL,
conforme a LFL associada
Length DINT imediato nmero mximo de elementos que LIFO pode
controlar de uma vez.
Position DINT imediato prxima localizao em LIFO onde a
instruo descarrega os dados.
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
. EU BOOL O bit de descarga habilitado indica que a instruo LFU est habilitada. O bit .EU
energizado para pr-programar uma descarga falsa quando a varredura do programa inicia.
.DN BOOL O bit executado energizado para indicar que LIFO est cheio (.POS=LEN).
.EM BOOL O bit vazio indica que LIFO est vazio. Se .LEN 0 ou .POS < 0, tanto o bit .EM quanto o bit
.DN esto energizados.
.LEN DINT O comprimento especifica o nmero mximo de elementos que LIFO pode controlar de uma
vez.
.POS DINT A posio identifica o fim dos dados que foram carregados em LIFO.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-29
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Use a instruo LFU com a instruo LFL para armazenar e recuperar
dados na seqncia ltimo a entrar, primeiro a sair.
Se LIFO for um tipo de dados DINT, Destination dever ser do tipo
DINT; se LIFO for um tipo de dados REAL, Destination dever ser um
tipo de dados REAL.
Quando habilitada, a instruo LFU descarrega o valor em .POS de
LIFO e o coloca em Destination. A instruo descarrega um valor e o
substitui com 0 cada vez que a instruo est habilitada at que LIFO
fique vazia. Se LIFO estiver vazia, LFU retorna 0 para Destination.
A instruo LFU opera na memria de dados contnua.
Flags de Status Aritmtico: no afetados
Condies de Falha:
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
Length > LIFO tamanho da matriz 4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
8-30 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Execuo de Lgica
Ladder
Condio: Ao:
pr-varredura
fim
o bit .EU energizado para evitar uma
descarga falsa quando a varredura
comear
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-31
Condio: Ao:
entrada da condio da linha for falsa
fim
bit .EU desenergizado.
sada da condio da linha
definida como falsa
.LEN < 0
sim
no
.POS < 0
sim
.EM desenergizado.
bit .DN desenergizado.
no
.POS = 0
sim
no
.EM energizado
.POS .LEN
sim
no
.DN energizado
.EM energizado
.DN energizado
Publicao 1756-RM003C-PT-P - Novembro 2000
8-32 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Condio: Ao:
entrada da condio da linha for verdadeira
fim
sada da condio da linha
definida como verdadeira
examinar bit .EU
.EU = 0
.EU = 1
bit .EU energizado
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM energizado
.DN energizado
bit .EM
desenergizado.
bit .DN
.LEN >
tamanho da
matriz
sim
no
falha grave
.POS 1
sim
no
bit .EM energizado
.LEN < 0
sim
no
.POS < 0
sim
no
bit .EM desenergizado.
bit .DN desenergizado.
.POS = 0
sim
no
bit .EM energizado
.POS .LEN
sim
no
bit .DN energizado.
bit .EM energizado
.DN energizado
.POS < 1
sim
no
.POS > .LEN
sim
no
.POS = .LEN
Destination = 0
Destination = LIFO[control.POS]
LIFO[control.POS) = 0
.POS = .POS -1
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU) 8-33
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
antes da descarga LIFO depois da descarga LIFO
array_dint[0] 00000 00000
11111 11111
22222 22222
33333 33333
44444 44444
array_dint[5] 55555 00000 control_1.pos = 5
00000 control_1.pos = 6 00000 value_2 = 55555
00000 00000
00000 00000
00000 00000
Quando habilitada, a instruo LFU descarrega array_dint[5] em value_2.
Publicao 1756-RM003C-PT-P - Novembro 2000
8-34 Instrues de Deslocamento/Matriz (Arquivo) (BSL, BSR, FFL, FFU, LFL, LFU)
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 9
Instrues de Seqenciador
(SQI, SQO, SQL)
Introduo
Instrues de sequenciador monitoram operaes consistentes e
repetitivas.
Para instrues de lgica ladder, os tipos de dados em negrito
indicam os tipos de dados timos. Uma instruo executa mais
rapidamente e requer menos memria se todos os operandos da
instruo usam o mesmo tipo de dado timo, geralmente DINT ou
REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
Detectar quando uma etapa est concluda. SQI 9-2
Estabelecer condies de sada para a
prxima etapa.
SQO 9-7
Carregar as condies de referncia nas
matrizes de seqenciador
SQL 9-12
Publicao 1756-RM003C-PT-P - Novembro 2000
9-2 Instrues de Seqenciador (SQI, SQO, SQL)
Entrada do Sequenciador
(SQI)
A instruo SQI detecta quando uma etapa concluda no par de
seqenciador das instrues SQO/SQI.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array DINT tag da
matriz
matriz do seqenciador
especifica o primeiro elemento da matriz do
seqenciador
no use CONTROL.POS em subscrito
Mask SINT
INT
DINT
tag
imediato
quais bits devem ser bloqueados ou podem
passar
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Source SINT
INT
DINT
tag dados de entrada para a matriz do
seqenciador
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Control CONTROL tag estrutura de controle para a operao
geralmente usa o mesmo CONTROL das
instrues SQO e SQL
Length DINT imediato nmero de elementos na Matriz (tabela do
seqenciador) a serem comparados
Position DINT imediato posio atual na matriz
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.ER BOOL O bit de erro energizado quando .LEN 0, .POS < 0 ou .POS > .LEN.
.LEN DINT O comprimento especifica o nmero de etapas da matriz do seqenciador.
.POS DINT A posio identifica o elemento que a instruo est comparando atualmente.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Seqenciador (SQI, SQO, SQL) 9-3
Descrio: Quando habilitada, a instruo SQI compara um elemento Source
atravs de uma Mscara com o elemento Array para verificar
a igualdade.
geralmente usa a mesma estrutura CONTROL das instrues SQO
e SQL
A instruo SQI opera na memria de dados contnua.
Insero de um valor de mscara imediato
Ao inserir uma mscara, o software de programao retorna ao
padro dos valores decimais. Caso voc queira inserir uma mscara
usando outro formato, coloque o prefixo correto antes do valor.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Prefixo: Descrio:
16# hexadecimal
por exemplo; 16#0F0F
8# octal
por exemplo; 8#16
2# binrio
por exemplo; 2#00110011
Publicao 1756-RM003C-PT-P - Novembro 2000
9-4 Instrues de Seqenciador (SQI, SQO, SQL)
Execuo do Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira
.LEN 0
.POS < 0
ou
.POS > .LEN
no
sim
fim
bit .ER energizado
sada da condio da linha
definida como falsa
Source mascarada=
Array mascarada[.POS]
sim
bit .ER desenergizado.
no
sada da condio da linha definida
como verdadeira
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Seqenciador (SQI, SQO, SQL) 9-5
Exemplo de Lgica
Ladder:
Um 0 na mscara significa que o bit no foi comparado (identificado
por xxxx nesse exemplo).
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando habilitada, a instruo SQI passa o value_2 pela mscara para determinar se o
resultado igual ao elemento atual em array_dint. A comparao mascarada verdadeira,
portanto a sada da condio da linha se torna verdadeira.
Operando SQI: Valores de exemplo (DINTs exibidos em binrio):
Source xxxxxxxx xxxxxxxx xxxx0101 xxxx1010
Mask 00000000 00000000 00001111 00001111
Array xxxxxxxx xxxxxxxx xxxx0101 xxxx1010
Publicao 1756-RM003C-PT-P - Novembro 2000
9-6 Instrues de Seqenciador (SQI, SQO, SQL)
Utilizao de SQI sem SQO
Se voc usar a instruo SQI sem uma instruo SQO no par, ser
necessrio incrementar externamente a matriz do seqenciador.
A instruo SQI compara o valor de fonte.
A instruo ADD incrementa na matriz do seqenciador
A GRT determinou se h outro valor disponvel para ser verificado na matriz do seqenciador.
A instruo MOV reseta o valor da posio depois de analisar por completo a matriz do seqenciador uma vez.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Seqenciador (SQI, SQO, SQL) 9-7
Sada do Sequenciador
(SQO)
A instruo SQO define as condies de sada para a prxima etapa
de um par de seqncia de instrues SQO/SQI.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array DINT tag da matriz matriz do seqenciador
especifica o primeiro elemento da matriz do
seqenciador
no use CONTROL.POS em subscrito
Mask SINT
INT
DINT
tag
imediato
quais bits devem ser bloqueados ou podem
passar
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Destination DINT tag dados de sada da matriz de seqenciador
Control CONTROL tag estrutura de controle para a operao
geralmente usa o mesmo CONTROL das
instrues SQI e SQL
Length DINT imediato nmero de elementos na Matriz (tabela do
seqenciador) a serem colocados na sada
Position DINT imediato posio atual na matriz
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo SQO est habilitada.
.DN BOOL O bit executado energizado quando todos os elementos especificados foram movidos
para Destination.
.ER BOOL O bit de erro energizado quando .LEN 0, .POS < 0 ou .POS > .LEN.
.LEN DINT O comprimento especifica o nmero de etapas da matriz do seqenciador.
.POS DINT A posio identifica o elemento que o controlador est manipulando atualmente.
Publicao 1756-RM003C-PT-P - Novembro 2000
9-8 Instrues de Seqenciador (SQI, SQO, SQL)
Descrio: Quando habilitada, a instruo SQO incrementa a posio, move os
dados na posio atravs de Mask e armazena o resultado em
Destination. Se .POS > .LEN, a instruo volta para o incio da matriz
do seqenciador e continua com .POS = 1.
Geralmente usa a mesma estrutura CONTROL das instrues SQI e
SQL
A instruo SQO opera na memria de dados contnua.
Insero de um valor de mscara imediato
Ao inserir uma mscara, o software de programao retorna ao
padro dos valores decimais. Caso voc queira inserir uma mscara
usando outro formato, coloque o prefixo correto antes do valor.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Prefixo: Descrio:
16# hexadecimal
por exemplo; 16#0F0F
8# octal
por exemplo; 8#16
2# binrio
por exemplo; 2#00110011
Condio: Ao:
pr-varredura O bit .EN energizado para evitar uma carga falsa quando a varredura do programa
comear.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .EN desenergizado.
A sada da condio da linha definida como falsa.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Seqenciador (SQI, SQO, SQL) 9-9
Condio: Ao:
entrada da condio da linha for verdadeira
.LEN 0 ou
.POS < 0
no
sim
bit .DN energizado.
.POS = .LEN
no
sim
examinar bit .EN
.EN = 0
.EN = 1
bit .EN energizado
bit .ER
desenergizado.
bit .DN energizado.
.POS .LEN
sim
no
.POS = .POS + 1
valor .POS
renova
sim
no
bit .ER energizado
fim
sada da condio da linha
definida como verdadeira
bit .DN energizado. .POS = .LEN
sim
no
Destination = (Destination AND (NOT(Mask)))
OR (Array[control.POS] AND Mask)
.POS > .LEN
no
sim
.POS = 1
ir para
erro
erro
Publicao 1756-RM003C-PT-P - Novembro 2000
9-10 Instrues de Seqenciador (SQI, SQO, SQL)
Exemplo de Lgica
Ladder:
Um 0 na mscara significa que o bit no foi comparado (designado
por xxxx nesse exemplo).
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando habilitada, a instruo SQO incrementa a posio, passa os dados naquela posio
em array_dint atravs da mscara e armazena o resultado emvalue_1.
Operando SQO: Valores de exemplo (uso de INTs exibidos em binrio):
Array xxxxxxxx xxxxxxxx xxxx0101 xxxx1010
Mask 00000000 00000000 00001111 00001111
Destination xxxxxxxx xxxxxxxx xxxx0101 xxxx1010
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Seqenciador (SQI, SQO, SQL) 9-11
Utilizao de SQI com SQO
Se uma instruo SQI for colocada em par com a instruo SQO,
certifique-se de que as duas instrues usam os mesmos valores em
Control, Length e Position.
Reset da posio de SQO
Cada vez que o controlador passa do modo Program para Run, a
instruo SQO zera (inicializa) o valor .POS. Para resetar .POS para o
valor de reinicializao (.POS = 0), use uma instruo RES para zerar o
valor da posio. Esse exemplo usa o status do bit da primeira
varredura para zerar o valor .POS.
Publicao 1756-RM003C-PT-P - Novembro 2000
9-12 Instrues de Seqenciador (SQI, SQO, SQL)
Carga do Sequenciador
(SQL)
A instruo SQL carrega as condies de referncia em uma matriz do
seqenciador.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Array DINT tag da matriz matriz do seqenciador
especifica o primeiro elemento da matriz do
seqenciador
no use CONTROL.POS em subscrito
Source SINT
INT
DINT
tag
imediato
dados de entrada a serem carregados na
matriz do seqenciador
Um tag SINT ou INT convertido para um valor DINT pela extenso de
sinal.
Control CONTROL tag estrutura de controle para a operao
geralmente usa o mesmo CONTROL das
instrues SQO e SQI
Length DINT imediato nmero de elementos na Matriz (tabela do
sequenciador) a serem carregados
Position DINT imediato posio atual na matriz
valor inicial normalmente 0
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo SQL est habilitada.
.DN BOOL O bit executado energizado quando todos os elementos especificados foram carregados
em Array.
.ER BOOL O bit de erro energizado quando .LEN 0, .POS < 0 ou .POS > .LEN.
.LEN DINT O comprimento especifica o nmero de etapas da matriz do seqenciador.
.POS DINT A posio identifica o elemento que o controlador est manipulando atualmente.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Seqenciador (SQI, SQO, SQL) 9-13
Descrio: Quando habilitada, a instruo SQL incrementa para a prxima
posio na matriz do seqenciador e carrega o valor Source
naquela posio. Se o bit .DN estiver energizado ou se .POS .LEN, a
instruo configura .POS=1.
Geralmente usa a mesma estrutura CONTROL das instrues SQO e
SQI
A instruo SQL opera na memria de dados contnua.
Flags de Status Aritmtico: no afetados
Condies de Falha:
Execuo de Lgica
Ladder:
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
Length > tamanho de Array 4 20
Condio: Ao:
pr-varredura O bit .EN energizado para evitar uma carga falsa quando a varredura do programa
comear.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa O bit .EN desenergizado.
A sada da condio da linha definida como falsa.
Publicao 1756-RM003C-PT-P - Novembro 2000
9-14 Instrues de Seqenciador (SQI, SQO, SQL)
Condio: Ao:
entrada da condio da linha for verdadeira
.LEN 0 ou
.POS < 0
no
sim
bit .DN energizado.
.POS = .LEN
no
sim
examinar bit .EN
.EN = 0
.EN = 1
bit .EN energizado
bit .ER
desenergizado.
bit .DN energizado.
.POS .LEN
sim
no
.POS = .POS + 1
valor .POS
renova
sim
no
bit .ER energizado
fim
sada da condio da linha
definida como verdadeira
bit .DN energizado. .POS = .LEN
sim
no
.POS > .LEN
no
sim
.POS = 1
ir para
erro
erro
.LEN >
tamanho da
matriz
sim
no
Array[control.POS] = Source
falha grave
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Seqenciador (SQI, SQO, SQL) 9-15
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
antes da carga depois da carga
array_dint[0] 00000 00000
11111 11111
22222 22222
33333 control_1.pos = 5 33333
44444 value_3 = 55555 44444
array_dint[5] 00000 55555
00000 00000 control_1.pos = 6
00000 00000
00000 00000
00000 00000
Quando habilitada, a instruo SQL carrega value_3 na prxima posio na matriz do sequenciador, que array_dint[5] nesse
exemplo.
Publicao 1756-RM003C-PT-P - Novembro 2000
9-16 Instrues de Seqenciador (SQI, SQO, SQL)
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 10
Instrues de Controle de Programa
(JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Introduo
Use as instrues de controle de programa para alterar o fluxo da
lgica.
Se voc quiser: Use esta instruo: Consulte
pgina:
Saltar uma seo da lgica que nem sempre
precisa ser executada.
JMP
LBL
10-2
Saltar para uma rotina separada, passar
dados para a rotina, executar a rotina e
retornar os resultados.
JSR
SBR
RET
10-4
Marcar um fim temporrio que interrompa a
execuo da rotina.
TND 10-11
Desabilitar todas as linhas em uma seo
de lgica.
MCR 10-13
Desabilitar as tarefas do usurio. UID 10-15
Habilitar as tarefas do usurio. UIE 10-11
Desabilitar uma linha. AFI 10-17
Inserir um placeholder na lgica. NOP 10-18
Publicao 1756-RM003C-PT-P - Novembro 2000
10-2 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Salto para Label (JMP)
Label (LBL)
As instrues JMP e LBL ignoram as partes da lgica de diagrama
ladder.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estas instrues no esto disponveis no bloco de funo.
Descrio: Quando habilitada, a instruo JMP ignora a instruo LBL citada e o
controlador continua a executar a partir desse ponto. Quando
desabilitada, a instruo JMP no afeta a execuo do diagrama
ladder.
A instruo JMP pode mover a execuo do diagrama ladder para
frente e para trs. O salto para frente para um label economiza tempo
de varredura do programa, pois omite um segmento de lgica at que
o mesmo seja necessrio. O salto para trs permite que o controlador
repita a lgica.
Recomenda-se no realizar muitos saltos para trs. O temporizador de
watchdog pode entrar em perodo de espera porque o controlador nunca
alcana o fim da lgica que, por usa vez, coloca o controlador em falha.
A instruo LBL est no alvo da instruo JMP que tem o mesmo
nome de label. Certifique-se de que a instruo LBL a primeira
instruo na linha.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Instruo JMP
Label name; nome do
label;
insere o nome para a instruo LBL
associada
Instruo LBL
Label name; nome do
label;
a execuo salta para a instruo LBL
quando o nome do label citado
ATENO
!
No se realiza varredura na lgica com salto.
Coloque uma lgica crtica fora da zona de salto.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-3
Um nome de label deve ser nico dentro de uma rotina. O nome pode:
ser composto por at 40 caracteres
conter letras, nmeros e sublinhados (_)
Flags de Status Aritmtico: no afetados
Condies de Falha:
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Estas instrues no esto disponveis no bloco de funo.
Uma falha grave ocorrer se: Tipo de falha: Cdigo de
falha:
label no existe 4 42
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A sada da condio da linha est definida como verdadeira.
A execuo salta para a linha que contm a instruo LBL com o nome de
label referenciado.
Quando a instruo JMP est habilitada, a execuo salta linhas sucessivas da lgica at
alcanar a linha que contm a instruo LBL com label_20.
[outras linhas de cdigo]
Publicao 1756-RM003C-PT-P - Novembro 2000
10-4 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Salto para Sub-rotina (JSR)
Sub-rotina (SBR)
Retorno (RET)
A instruo JSR salta para uma rotina separada. A instruo SBR passa
dados para e executa uma rotina. A instruo RET devolve
os resultados.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estas instrues no esto disponveis no bloco de funo.
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Instruo JSR
Routine name ROUTINE nome rotina a ser executada
Input par SINT
INT
DINT
REAL
estrutura
imediato
tag
tag da matriz
parmetros (0-n) a serem passados
para rotina
Return par SINT
INT
DINT
REAL
estrutura
tag
tag da matriz
parmetros (0-n) a serem recebidos
da rotina
Instruo SBR
Input par SINT
INT
DINT
REAL
estrutura
tag
tag da matriz
parmetros (0-n) recebidos de JSR
Instruo RET
Return par SINT
INT
DINT
REAL
estrutura
imediato
tag
tag da matriz
parmetros (0-n) a serem retornados
para JSR
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-5
Descrio: Quando a entrada da condio da linha for verdadeira, a instruo JSR
inicia a execuo da rotina especfica, a qual referida como uma
sub-rotina:
A sub-rotina executada uma vez.
Depois da sub-rotina executada, a execuo da lgica retorna
para a instruo que segue a instruo JSR.
Quando a entrada da condio da linha para a instruo JSR for falsa:
A sub-rotina no executada.
As sadas na sub-rotina permanecem em seus ltimos estados.
No h restries, a no ser a memria do controlador, em relao s
rotinas encadeadas que possam existir ou ao nmero de parmetros
passados ou retornados.
Para programar um salto para a sub-rotina, siga estas orientaes:
1. No ponto na lgica onde a sub-rotina for executada, insira a
instruo JSR.
2. Voc quer copiar o(s) valor(es) para um tag diferente na
sub-rotina?
15294
rotina principal
nvel 1
sub-rotina action_1
nvel 3
sub-rotina action_3
nvel 2
sub-rotina action_2
JSR JSR
JSR
SBR SBR SBR
RET RET RET
action_1
action_2 action_3
Se: Ento:
sim A. Na instruo JSR, operando Input par, digite o tag que contm
o(s) valor (es) a serem copiados.
B. Para cada entrada, repita a Etapa A.
no Omita os parmetros de entrada
Publicao 1756-RM003C-PT-P - Novembro 2000
10-6 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
3. Quando a sub-rotina completa sua execuo, voc quer copiar
o(s) valor (es) para um tag na rotina que contm a instruo JSR?
4. Na instruo JSR, voc especificou um operando Input par?
5. Na instruo JSR, voc especificou um operando Return par?
Se: Ento:
sim A. Na instruo JSR, operando Return par, digite o tag que recebe
o(s) valor (es).
B. Para cada valor de retorno, repita a Etapa A.
no Omita os parmetros de entrada
Se: Ento:
sim A. Como a primeira instruo na sub-rotina, digite uma instruo
SBR.
B. No operando Input par da instruo SBR, digite o tag que
recebe o(s) valor (es) da instruo JSR.
C. Para cada operando Input par na instruo JSR, repita a
Etapa B.
no V para a Etapa 5.
ATENO
!
Para cada operando Input par em uma
instruo SBR, use o mesmo tipo de dados
(incluir qualquer dimenso de matriz) como
um operando Input par correspondente na
instruo JSR. O uso de tipos de dados
diferentes pode produzir resultados
inesperados.
Se: Ento:
sim A. No fim da sub-rotina, adicione uma linha e digite uma instruo
RET.
B. No operando Return par da instruo RET, digite o tag que
fornece o(s) valor (es) para a instruo JSR.
C. Para cada parmetro de retorno na instruo JSR, repita a
Etapa B.
no V para a Etapa 6.
ATENO
!
Para cada operando Return par em uma
instruo RET, use o mesmo tipo de dados
(incluir qualquer dimenso de matriz) como o
operando Return par correspondente na
instruo JSR. O uso de tipos de dados
diferentes pode produzir resultados
inesperados.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-7
6. H condies quando voc quer sair da sub-rotina antes do
final?
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
Execuo de Lgica
Ladder:
Se: Ento:
sim A. No local da sub-rotina onde voc quer sair, digite uma linha.
B. Digite as condies para sair do local da sub-rotina.
C. Digite uma instruo RET.
D. Digite parmetros de retorno, se necessrio. Consulte as
etapas4. e5.
no Omita esta etapa.
Uma falha grave ocorrer se: Tipo de falha: Cdigo de falha:
a instruo JSR tem menos parmetros
de entrada do que a instruo SBR
4 31
a instruo JSR salta para a rotina de
falha
4 ou fornecido pelo
usurio
0 ou fornecido pelo
usurio
a instruo RET tem menos parmetros
de retorno do que a instruo JSR
4 31
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
O controlador executa todas as sub-rotinas independente da condio da linha,. Para
assegurar-se de que todas as linhas da sub-rotina passem por pr- varredura, o
controlador ignora as instrues RET (ou seja, as instrues RET no saem da
sub-rotina).
Verso 6.x e anterior, parmetros de entrada e retorno so passados.
Verso 7.x e posterior, parmetros de entrada e retorno no so passados.
Caso haja chamadas recorrentes para a mesma sub-rotina, realiza-se uma pr-varredura
na sub-rotina somente na primeira vez. Caso haja vrias chamadas (no recorrentes)
para a mesma sub-rotina, realiza-se uma pr-varredura na sub-rotina todas as vezes.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
Publicao 1756-RM003C-PT-P - Novembro 2000
10-8 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Condio: Ao:
parmetros de
entrada
sim
no
JSR copia os parmetros de entrada para as
variveis SBR apropriadas
entrada da condio da linha for verdadeira
fim
a execuo da lgica comea na
rotina identificada por JSR
fim da sub-rotina
sim
no
sada da condio da linha
definida como falsa
continua a executar a rotina
parmetros de
retorno
sim
no
RET copia os parmetros de
retorno para as variveis JSR
apropriadas
sada da condio da linha definida como
verdadeira
a execuo da lgica retorna para JSR
Instruo RET
sim
no
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-9
Exemplo de Lgica
Ladder:
Quando habilitada, a instruo JSR passa value_1 e value_2 para routine_1.
[outras linhas de cdigo]
A instruo SBR recebe value_1 e value_2 da instruo JSR e copia esses
valores em value_a e value_b, respectivamente. A execuo da lgica continua
nessa rotina.
Quando habilitada, a instruo RET envia float_a para a instruo JSR. A
instruo JSR recebe float_a e copia o valor em float_value_1. A execuo da
lgica continua na prxima instruo aps a instruo JSR.
exemplo 1
Publicao 1756-RM003C-PT-P - Novembro 2000
10-10 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Execuo do Bloco de
Funo:
Estas instrues no esto disponveis no bloco de funo.
exemplo 2
Rotina Principal
Quando abc estiver energizado a sub-rotina_1 executa, calcula o nmero de cookies, e coloca um valor em cookies_1.
Soma o valor em cookies_1 a cookies_2e armazena o resultado em total_cookies.
Sub-routine_1
Quando def estiver energizado, a instruo RET retornavalue_1para o parmetro JSRcookies_1e uma varredura no realizada no restante da
sub-rotina.
Quandodefestiver desenergizado (linha anterior) eghiestiver energizado, a instruo RET retorna value_2 para o parmetro cookies_1 de JSR e
uma varredura no realizada no restante da sub-rotina.
Quando defe ghiestiverem desenergizados (linhas anteriores) a instruo RET retorna value_3para o parmetro cookies_1 de JSR.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-11
Fim Temporrio (TND)
A instruo TND atua como um limite.
Operandos de Lgica
Ladder:
nenhuma
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo TND permite que o controlador
execute a lgica somente at essa instruo.
Quando habilitada, a instruo TND atua como o final da rotina.
Quando o controlador realiza uma varredura em uma instruo TND,
o controlador se movimenta para o final da rotina atual. Se a instruo
TND estiver em uma sub-rotina, o controle retorna para a rotina
chamada. Se a instruo TND estiver em uma rotina principal, o
controle retorna para o prximo programa dentro da tarefa atual.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Linguagens Disponveis:
Lgica Ladder
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A sada da condio da linha est definida como verdadeira.
A rotina atual termina.
Publicao 1756-RM003C-PT-P - Novembro 2000
10-12 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Exemplo de Lgica
Ladder:
possvel usar a instruo TND na depurao ou localizao de falhas
para executar a lgica at um determinado ponto. Progressivamente,
mova a instruo TND atravs da lgica medida que se realiza a
depurao em cada seo nova.
Execuo de Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando a instruo TND estiver habilitada, o controlador interrompe a varredura da rotina atual.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-13
Rearme do Controle Mestre
(MCR)
A instruo MCR, usada em pares, cria uma zona de programa que
pode desabilitar todas as linhas dentro das instrues MCR.
Operandos de Lgica
Ladder:
nenhuma
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a zona MCR estiver habilitada, realiza-se uma varredura nas
linhas da zona MCR para verificar as condies normais de verdadeiro
e falso. Quando desabilitada, o controlador ainda realiza varredura
nas linhas que esto dentro de uma zona MCR, mas o tempo de
varredura reduzido porque as sadas no retentivas na zona esto
desabilitadas. A entrada da condio da linha falsa para todas as
instrues que esto dentro da zona MCR desabilitada.
Ao programar uma zona MCR, observe o seguinte:
Voc deve finalizar a zona com uma instruo MCR incondicional.
Voc no pode encadear zonas MCR entre si.
No realize um salto em uma zona MCR. Se a zona for falsa, o salto
na zona ativa a zona desde o ponto do salto at o fim da mesma.
Se uma zona MCR continuar at o fim da rotina, no
necessrio programar uma instruo MCR at o final da zona.
A instruo MCR no substitui a instalao de um rel de controle
mestre com capacidade para permitir uma parada de emergncia.
Voc dever, ainda, instalar um rel de controle mestre para fornecer
um desligamento de emergncia da alimentao de E/S .
Linguagens Disponveis:
Lgica Ladder
ATENO
!
No sobreponha ou monte em cadeia as zonas MCR.
Cada zona MCR deve ser separada e completa. Se
houver sobreposio ou encadeamento, uma operao
imprevisvel de mquina pode ocorrer com possveis
danos ao equipamento ou ferimentos pessoais.
Coloque operaes crticas fora da zona MCR. Se
voc iniciar instrues como, por exemplo,
temporizadores em uma zona MCR, a execuo da
instruo pra quando a zona desabilitada e o
tempo for removido.
Publicao 1756-RM003C-PT-P - Novembro 2000
10-14 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Exemplo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
Realiza-se varredura nas instrues da zona, mas a entrada da condio da linha e as
sadas no retentivas na zona so desabilitadas.
entrada da condio da linha for verdadeira A sada da condio da linha est definida como verdadeira.
As instrues na zona so varridas normalmente.
Quando a primeira instruo MCR estiver habilitada (input_1, input_2 e input_3 esto energizados), o controlador executa as linhas na
zona MCR (entre as duas instrues MCR) e energiza ou desenergiza as sadas, dependendo das condies de sada.
Quando a primeira instruo MCR estiver desabilitada (input_1, input_2 e input_3 no esto todos energizados), o controlador executa as linhas na
zona MCR (entre as duas instrues MCR) e a entrada da condio da linha se torna falsa para todas as linhas na zona MCR, independente das
condies de entrada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-15
Desabilitao da
Interrupo pelo Usurio
(UID)
Habilitao da Interrupo
pelo Usurio
(UIE)
A instruo UID e a instruo UIE trabalham juntas para evitar que um
nmero pequeno de linhas crticas sejam interrompidas por outras
tarefas.
Operandos de Lgica
Ladder:
nenhuma
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a entrada da condio de linha for verdadeira, a:
instruo UID previne que tarefas com prioridade mais alta
interrompam a tarefa atual mas no desabilita a execuo de
uma rotina de falha ou a Rotina de Falha do Controlador.
instruo UIE habilita outras tarefas a interromperem a tarefa
atual.
Para evitar que uma srie de linhas sejam interrompidas:
1. Limite o nmero de linhas que voc no quer que sejam
interrompidas no menor nmero possvel. A desabilitao de
interrupes por um longo perodo de tempo pode produzir
perda de comunicao.
2. Acima da primeira linha que voc no quer interromper, insira
uma linha e uma instruo UID.
3. Depois da ltima linha da srie que voc no quer interromper,
insira uma linha e uma instruo UIE.
4. Se preciso, voc pode encadear pares das instrues UID/UIE.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Publicao 1756-RM003C-PT-P - Novembro 2000
10-16 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira Interrupo por tarefas de prioridade mais elevada habilitada.
A sada da condio da linha est definida como verdadeira.
UID

error_bit
EN
DN
ER
File Search/Compare
Control error_check
Length 10
Position 8
Mode ALL
Expression error_code=error_list[error_check.POS]
FSC

error_check.FD

alarm
UIE
Quando um erro ocorre (error_bit est energizado), a instruo FSC verifica o cdigo do
erro em relao a uma lista de erros crticos. Se a instruo FSC encontra um erro que
seja crtico (error_check.FD is on), um alarme acionado. As instrues UID e UIE evitam
que outras tarefas interrompam a verificao e o acionamento de alarmes.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-17
Instruo Sempre Falsa
(AFI)
A instruo AFI configura a sua sada da condio da linha como falsa.
Operandos de Lgica
Ladder:
nenhuma
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo AFI configura a sua sada da condio da linha como falsa.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Use a instruo AFI para desabilitar temporariamente uma linha,
enquanto estiver depurando um programa.
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A sada da condio da linha definida como falsa.
Quando habilitada, AFI desabilita todas as instrues nessa linha.
Publicao 1756-RM003C-PT-P - Novembro 2000
10-18 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Sem Operao (NOP)
Ainstruo NOP funciona como um placeholder
Operandos de Lgica
Ladder:
nenhuma
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: possvel colocar a instruo NOP em qualquer ponto de uma linha.
Quando habilitada, a instruo NOP no realiza nenhuma operao.
Quando desabilitada, a instruo NOP no realiza nenhuma operao.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Essa instruo til para localizar ramificaes incondicionais quando
se coloca a instruo NOP na ramificao.
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A sada da condio da linha est definida como verdadeira.
A instruo NOP realiza bypass na instruo XIC para habilitar a sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP) 10-19
Notas:
Publicao 1756-RM003C-PT-P - Novembro 2000
10-20 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 11
Instrues For/Break
(FOR, BRK, RET)
Introduo
Use a instruo FOR para chamar repetidamente uma sub-rotina. Use
a instruo BRK para interromper a execuo de uma sub-rotina.
Se voc quiser: Use esta instruo: Consulte
pgina:
Executar repetidamente a rotina. FOR 11-2
Terminar a execuo repetida de uma rotina. BRK 11-5
Retornar para a instruo FOR. RET 11-6
Publicao 1756-RM003C-PT-P - Novembro 2000
11-2 Instrues For/Break (FOR, BRK, RET)
For (FOR)
A instruo FOR executa repetidamente uma sub-rotina.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo FOR executa repetidamente Routine
at que o valor Index exceda o valor Terminal. Essa instruo no
passa parmetros para a rotina.
Cada vez que a instruo FOR executa a rotina, a mesma adiciona o
tamanho Step a Index.
Tome cuidado para no realizar uma malha vrias vezes em uma
nica varredura. Um nmero excessivo de repeties pode fazer com
que o temporizador do watchdog do controlador expire e cause uma
falha grave.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Routine
name
ROUTINE nome da
rotina
rotina a ser executada
Index DINT tag conta quantas vezes a rotina foi executada
Initial value SINT
INT
DINT
imediato
tag
valor onde se inicia o ndice
Terminal
value
SINT
INT
DINT
imediato
tag
valor onde parar a execuo da rotina
Step size SINT
INT
DINT
imediato
tag
quantidade a ser acrescentada ao ndice
cada vez que a instruo FOR executar a
rotina
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues For/Break (FOR, BRK, RET) 11-3
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
O controlador executa a sub-rotina uma vez.
Caso haja instrues FOR recorrentes na mesma sub-rotina, uma pr-varredura
realizada somente na primeira vez na sub-rotina. Caso haja vrias instrues FOR (no
recorrentes) na mesma sub-rotina, realiza-se uma pr-varredura na sub-rotina todas as
vezes.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
index valor terminal
no
sim
executar rotina
index =(index + step_size)
entrada da condio da linha for verdadeira
fim
index = initial_value
sada da condio da linha definida
como verdadeira
tamanho step < 0
no
sim
index valor terminal
no
sim
ir para o
fim
fim
ir para
o fim
Publicao 1756-RM003C-PT-P - Novembro 2000
11-4 Instrues For/Break (FOR, BRK, RET)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando habilitada, a instruo FOR executa repetidamente routine_2 e incrementa value_2em 1 todas as vezes.
Quando value_2 > 10 ou uma instruo BRK estiver habilitada, a instruo FOR no mais executa routine_2.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues For/Break (FOR, BRK, RET) 11-5
Break (BRK)
A instruo BRK interrompe a execuo de uma rotina que foi
chamada por uma instruo FOR.
Operandos de Lgica
Ladder:
nenhuma
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo BRK sai da rotina e retorna o
controlador instruo aps FOR.
Se houver instrues FOR encadeadas, uma instruo BRK retornar o
controle para a instruo FOR mais profunda.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A sada da condio da linha est definida como verdadeira.
A execuo retorna para a instruo que segue a instruo FOR que est chamando.
Quando habilitada, a instruo BRK pra de executar a rotina atual e
retorna para a instruo que segue a instruo FOR que est chamando.
Publicao 1756-RM003C-PT-P - Novembro 2000
11-6 Instrues For/Break (FOR, BRK, RET)
Retorno (RET)
A instruo RET retorna para a instruo FOR que est chamando.
Operandos de Lgica
Ladder:
nenhuma
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo RTE retorna para a instruo FOR. A
instruo FOR incrementa o valor Index pelo tamanho de Step e
executa a sub-rotina novamente. Se o valor Index exceder o valor
Terminal, a instruo FOR ser concluda e a execuo se
movimentar para a instruo que segue a instruo FOR.
A instruo FOR no usa parmetros. A instruo FOR ignora os
parmetros inseridos em uma instruo RET.
possvel usar tambm uma instruo TND para finalizar a execuo
de uma sub-rotina.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Linguagens Disponveis:
Lgica Ladder
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A sada da condio da linha est definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues For/Break (FOR, BRK, RET) 11-7
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando habilitada, a instruo RTE retorna para a instruo FOR que est
chamando. A instruo FOR executa a sub-rotina novamente e
incrementa o valor Index pelo tamanho Step ou se o valor Index exceder o
valor Terminal, a instruo FOR concluda e a execuo se movimenta
para a instruo que segue a instruo FOR.
Quando habilitada, a instruo FOR executa repetidamente
routine_2 e incrementa value_2em 1 todas as vezes.
Quando value_2 > 10 ou uma instruo BRK estiver
habilitada, a instruo FOR no mais executa routine_2.
rotina que est chamando sub-rotina
Publicao 1756-RM003C-PT-P - Novembro 2000
11-8 Instrues For/Break (FOR, BRK, RET)
Notas:
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 12
Instrues Especiais
(FBC, DDT, DTR, PID)
Introduo
As instrues especiais realizam operaes especficas aplicao.
Se voc quiser: Use esta instruo: Consulte
pgina:
Comparar os dados com uma boa referncia
j conhecida e registrar quaisquer
diferenas.
FBC 12-2
Comparar os dados com uma boa referncia
j conhecida, registrar quaisquer diferenas
e atualizar a referncia para combinar com a
fonte.
DDT 12-10
Passar os dados da fonte pela mscara e
comparar o resultado com os dados de
referncia. Em seguida, escrever a fonte na
referncia para a prxima comparao.
DTR 12-18
Controlar uma malha de PID. PID 12-21
Publicao 1756-RM003C-PT-P - Novembro 2000
12-2 Instrues Especiais (FBC, DDT, DTR, PID)
Comparao de Bit de
Arquivo (FBC)
A instruo FBC compara os bits em uma matriz Source com os bits
em uma matriz Reference.
Operandos de Lgica
Ladder:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source DINT tag da matriz matriz a ser comparada com a referncia
no use CONTROL.POS em subscrito
Reference DINT tag da matriz matriz a ser comparada com a fonte
no use CONTROL.POS em subscrito
Result: DINT tag da matriz matriz para armazenar o resultado
no use CONTROL.POS em subscripts
Cmp control CONTROL estrutura estrutura de controle para a comparao
Length DINT imediato nmero de bits a ser comparado
Position DINT imediato posio atual na fonte
valor inicial normalmente 0
Result
control
CONTROL estrutura estrutura de controle para os resultados
Length DINT imediato nmero de locais de armazenamento
no resultado
Position DINT imediato posio atual no resultado
valor inicial normalmente 0
ATENO
!
Use tags diferentes para comparar a estrutura de
controle e a estrutura de controle do resultado. O
uso do mesmo tag para ambas as estruturas pode
resultar em operao no previsvel, com
possibilidade de causar danos ao equipamento e/ou
ferimentos pessoais.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-3
Estrutura de Comparao:
Estrutura de Resultado:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo FBC compara os bits na matriz Source
com os bits na matriz Reference e registra o nmero do bit de cada
diferena na matriz Result.
A instruo FBC opera na memria de dados contnua.
A diferena entre as instrues DDT e FBC que cada vez que a
instruo DDT encontra uma diferena, a instruo altera o bit de
referncia para estabelecer correspondncia com o bit da fonte. A
instruo FBC no altera o bit de referncia.
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo FBC est habilitada.
.DN BOOL O bit executado energizado quando a instruo FBC compara o ltimo bit nas matrizes
Source e Reference.
.FD BOOL O bit encontrado energizado cada vez que a instruo FBC registra uma diferena (operao
uma de cada vez) ou depois de registrar todas as diferenas (operao todas por varredura).
.IN BOOL O bit inibido indica o modo de busca de FBC.
0 = todos os modos
1 = uma diferena em um modo de tempo
.ER BOOL O bit de erro energizado se a comparao for .POS < 0, .LEN < 0, o resultado .POS < 0 ou o
resultado .LEN < 0. A instruo pra a execuo at que o programa desenergize o bit .ER.
.LEN DINT O valor do comprimento identifica o nmero de bits a ser comparado.
.POS DINT O valor da posio identifica o bit atual.
Mnemnico: Tipo de Dados: Descrio:
.DN BOOL O bit executado energizado quando a matriz Result est cheia.
.LEN DINT O valor do comprimento identifica o nmero de locais de armazenamento na matriz Result.
.POS DINT O valor da posio identifica a posio atual na matriz Result.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-4 Instrues Especiais (FBC, DDT, DTR, PID)
Seleo do modo de busca
Flags de Status Aritmtico: no afetados
Condies de Falha:
Se voc quiser detectar: Selecione este modo:
Uma diferena de vez em
quando
Energizar o bit .IN na estrutura CONTROL de comparao.
Cada vez que a entrada da condio da linha passar de falsa para verdadeira, a
instruo FBC busca a prxima diferena entre as matrizes Source e Reference. Ao
encontrar uma diferena, a instruo energiza o bit .FD, registra a posio da diferena
e interrompe a execuo.
Todas as diferenas Zerar o bit .IN na estrutura CONTROL de comparao.
Cada vez que a entrada da condio da linha passar de falsa para verdadeira, a
instruo FSC busca todas as diferenas entre as matrizes Source e Reference.
Uma falha grave ocorrer se: Tipo de falha: Cdigo de falha:
Result.POS > tamanho da matriz de resultado 4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-5
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura
fim
o bit compare.EN
desenergizado.
o bit compare.FD desenergizado.
sada da condio da linha
definida como falsa
examinar bit
compare.DN
compare .DN = 0
compare .DN = 1
o bit compare.DN desenergizado.
o valor compare.POS desenergizado.
o bit result.DN desenergizado.
o valor result.POS desenergizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-6 Instrues Especiais (FBC, DDT, DTR, PID)
Condio: Ao:
entrada da condio da linha for falsa
fim
o bit compare .EN desenergizado.
o bit compare.FD desenergizado.
sada da condio da linha
definida como falsa
examinar bit
compare.DN
compare.DN = 0
compare.DN = 1
o bit compare.DN desenergizado.
o valor compare.POS desenergizado.
o bit result.DN desenergizado.
o valor result.POS desenergizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-7
Condio: Ao:
examinar bit
compare.EN
compare.EN = 1
compare.EN = 0
entrada da condio da linha for verdadeira
examinar bit
compare.DN
compare.DN = 1
compare.DN = 0
o bit compare .EN
energizado.
o bit compare.ER
desenergizado.
o bit compare.FD
desenergizado.
compare.LEN 0
sim
no
compare.POS < 0
sim
no
o bit compare.ER energizado.
comparar
pgina 12-8
fim
sada da condio da linha
definida como verdadeira
ir para a
sada
sair
ir para a
sada
ir para
a sada
Publicao 1756-RM003C-PT-P - Novembro 2000
12-8 Instrues Especiais (FBC, DDT, DTR, PID)
Condio: Ao:
compare.POS
compare.LEN
sim
no
compare.POS = compare.LEN
o bit compare.DN energizado.
compara
ir para a
sada
source[compare.POS] =
reference[compare.POS]
no
sim
examinar o bit
result.DN
result.DN = 1
result.DN = 0
compare.POS =
compare.POS + 1
o bit compare.FD
energizado.
o bit result.DN
desenergizado.
o valor result.POS
desenergizado.
result.POS < 0
sim
no
result.LEN 0
sim
no
o bit compare.ER energizado.
ir para a
sada
sim
no
falha grave
result[result.POS] = compare.POS
result.POS = result.POS + 1
result.POS >
result.LEN
no
sim
o bit result.DN energizado.
pgina 12-7
pgina12-7
result.POS >
tamanho da matriz de
resultado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-9
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
fonte
array_dint1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
referncia
array_dint2
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0
resultado
array_dint3
5 3
Quando habilitada, a instruo FBC compara a fonte array_dint1 com a referncia array_dint2 e armazena os
locais das diferenas no resultado array_dint3.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-10 Instrues Especiais (FBC, DDT, DTR, PID)
Deteco de Diagnstico
(DDT)
A instruo DDT compara bits em uma matriz Source com os bits em
uma matriz Reference para determinar as alteraes de estado.
Operandos de Lgica
Ladder:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source DINT tag da
matriz
matriz a ser comparada com a referncia
no use CONTROL.POS em subscrito
Reference DINT tag da
matriz
matriz a ser comparada com a fonte
no use CONTROL.POS em subscrito
Result: DINT tag da
matriz
matriz para armazenar os resultados
no use CONTROL.POS em subscrito
Cmp control CONTROL estrutura estrutura de controle para a comparao
Length DINT imediato nmero de bits a ser comparado
Position DINT imediato posio atual na fonte
valor inicial normalmente 0
Result
control
CONTROL estrutura estrutura de controle para os resultados
Length DINT imediato nmero de locais de armazenamento
no resultado
Position DINT imediato posio atual no resultado
valor inicial normalmente 0
ATENO
!
Use tags diferentes para comparar a estrutura de
controle e a estrutura de controle do resultado. O
uso do mesmo tag para ambas as estruturas pode
resultar em operao no previsvel, com
possibilidade de causar danos ao equipamento e/ou
ferimentos pessoais.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-11
Estrutura de Comparao:
Estrutura de Resultado:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando habilitada, a instruo DDT compara os bits na matriz Source
com os bits na matriz Reference, registra o nmero de bit de cada
diferena na matriz Result e altera o valor do bit Reference para
corresponder ao valor do bit Source correspondente.
A instruo DDT opera na memria de dados contnua.
A diferena entre as instrues DDT e FBC que cada vez que a
instruo DDT encontra uma diferena, a instruo DDT altera o bit
de referncia para estabelecer correspondncia com o bit da fonte. A
instruo FBC no altera o bit de referncia.
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit habilitado indica que a instruo DDT est habilitada.
.DN BOOL O bit executado energizado quando a instruo DDT compara o ltimo bit nas matrizes
Source e Reference.
.FD BOOL O bit encontrado energizado cada vez que a instruo DDT registra uma diferena
(operao uma de cada vez) ou depois de registrar todas as diferenas (operao todas por
varredura).
.IN BOOL O bit inibido indica o modo de busca de DDT.
0 = todos os modos
1 = uma diferena em um modo de tempo
.ER BOOL O bit de erro energizado se a comparao for .POS < 0, .LEN < 0, o resultado .POS < 0 ou o
resultado .LEN < 0. A instruo pra a execuo at que o programa desenergize o bit .ER.
.LEN DINT O valor do comprimento identifica o nmero de bits a ser comparado.
.POS DINT O valor da posio identifica o bit atual.
Mnemnico: Tipo de Dados: Descrio:
.DN BOOL O bit executado energizado quando a matriz Result est cheia.
.LEN DINT O valor do comprimento identifica o nmero de locais de armazenamento na matriz Result.
.POS DINT O valor da posio identifica a posio atual na matriz Result.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-12 Instrues Especiais (FBC, DDT, DTR, PID)
Seleo do modo de busca
Flags de Status Aritmtico: no afetados
Condies de Falha:
Se voc quiser detectar: Selecione este modo:
Uma diferena de vez em
quando
Energizar o bit .IN na estrutura CONTROL de comparao.
Cada vez que a entrada da condio da linha passar de falsa para verdadeira, a
instruo DDT busca a prxima diferena entre as matrizes Source e Reference. Ao
encontrar uma diferena, a instruo energiza o bit .FD, registra a posio da diferena
e interrompe a execuo.
Todas as diferenas Zerar o bit .IN na estrutura CONTROL de comparao.
Cada vez que a entrada da condio da linha passar de falsa para verdadeira, a
instruo DDT busca todas as diferenas entre as matrizes Source e Reference.
Uma falha grave ocorrer se: Tipo de falha: Cdigo de falha:
Result.POS > tamanho da matriz de
resultado
4 20
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-13
Execuo de Lgica
Ladder:
Condio: Ao:
pr-varredura
fim
o bit compare .EN desenergizado.
o bit compare.FD desenergizado.
sada da condio da linha
definida como falsa
examinar bit
compare.DN
compare.DN = 0
compare.DN = 1
o bit compare.DN desenergizado.
o valor compare.POS desenergizado.
o bit result.DN desenergizado.
o valor result.POS desenergizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-14 Instrues Especiais (FBC, DDT, DTR, PID)
Condio: Ao:
entrada da condio da linha for falsa
fim
o bit compare .EN desenergizado.
o bit compare.FD desenergizado.
sada da condio da linha
definida como falsa
examinar bit
compare.DN
compare.DN = 0
compare.DN = 1
o bit compare.DN desenergizado.
o valor compare.POS
desenergizado.
o bit result.DN desenergizado.
o valor result.POS desenergizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-15
Condio: Ao:
examinar o bit
compare.EN
compare.EN = 1
compare.EN = 0
entrada da condio da linha for verdadeira
examinar bit
compare.DN
compare.DN bit = 1
compare.DN bit = 0
o bit compare .EN
energizado.
o bit compare.ER
desenergizado.
o bit compare.FD
desenergizado.
compare.LEN 0
sim
no
compare.POS < 0
sim
no
o bit compare.ER energizado.
Comparar
pgina 12-16
fim
sada da condio da linha
definida como verdadeira
ir para a
sada
sair
ir para a
sada
ir para
a sada
Publicao 1756-RM003C-PT-P - Novembro 2000
12-16 Instrues Especiais (FBC, DDT, DTR, PID)
Condio: Ao:
compare.POS
compare.LEN
sim
no
compare.POS = compare.LEN
o bit compare.DN energizado.
compara
ir para a
sada
source[compare.POS] =
reference[compare.POS]
no
sim
examinar o bit
result.DN
result.DN = 1
result.DN = 0
compare.POS =
compare.POS + 1
o bit compare.FD
energizado.
reference[compare.POS]
= source[compare.POS]
o bit result.DN
desenergizado.
o valor result.POS
desenergizado.
result.POS < 0
sim
no
result.LEN 0
sim
no
o bit compare.ER energizado.
ir
para
sim
no
falha grave
result[result.POS] = compare.POS
result.POS = result.POS + 1
result.POS
result.LEN
no
sim
o bit result.DN energizado.
pgina 12-15
pgina 12-7
result.POS >
tamanho da matriz de
resultado
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-17
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
fonte
array_dint1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
referncia (antes da
comparao)
array_dint2
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0
resultado:
array_dint3
5 3
referncia (depois da
comparao)
array_dint2
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Quando habilitada, a instruo DDT compara a fonte array_dint1 com a referncia array_dint2 e armazena os
locais das diferenas no resultado array_dint3. O controlador tambm altera os bits de diferena na referncia
array_dint2 para corresponder fonte array_dint1.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-18 Instrues Especiais (FBC, DDT, DTR, PID)
Dados Transicionais (DTR)
A instruo DTR passa o valor Source por Mask e compara o resultado
com o valor Reference.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo DTR passa o valor Source por Mask e compara o resultado
com o valor Reference. A instruo DTR tambm escreve o valor
Source mascarado no valor Reference para a prxima comparao.
Source permanece inalterado.
Um 1 na mscara significa que o bit de dados passou. Um 0 na
mscara significa que o bit de dados foi bloqueado.
Quando Source mascarado for diferente de Reference, a sada da
condio da linha se torna verdadeira durante uma varredura.
Quando Source mascarado for igual a Reference, a sada da condio
da linha se torna falsa.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
Source DINT imediato
tag
matriz a ser comparada com a referncia
Mask DINT imediato
tag
quais bits devem ser bloqueados ou podem
passar
Reference DINT tag matriz a ser comparada com a fonte
ATENO
!
A programao online com essa instruo pode ser
perigosa. Se o valor Reference for diferente de
Source, a sada da condio da linha se torna
verdadeira. Tome cuidado se voc inserir essa
instruo quando o controlador estiver no modo Run
ou Remote Run.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-19
Insero de uma valor de mscara imediato
Ao inserir uma mscara, o software de programao retorna ao
padro dos valores decimais. Caso voc queira inserir uma mscara
usando outro formato, coloque o prefixo correto antes do valor.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Prefixo: Descrio:
16# hexadecimal
por exemplo; 16#0F0F
8# octal
por exemplo; 8#16
2# binrio
por exemplo; 2#00110011
Condio: Ao:
pr-varredura The Reference = Source AND Mask.
A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa The Reference = Source AND Mask.
A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira
fim
masked source =
reference
no
sim
referncia definida igual fonte mascarada
sada da condio da linha energizada quando
verdadeira
sada da condio da
linha energizada
quando falsa
Publicao 1756-RM003C-PT-P - Novembro 2000
12-20 Instrues Especiais (FBC, DDT, DTR, PID)
Exemplo de Lgica
Ladder:
Um 0 na mscara no altera o bit.
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando habilitada, a instruo DTR coloca uma mscara em value_1. Se houver diferena
entre dois valores, a sada da condio da linha definida como verdadeira.
13385
A linha permanecer falsa enquanto o
valor de entrada no for alterado.
A linha permanecer verdadeira durante uma
varredura quando uma alterao for detectada.
0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
1 8 3 1 8 7
mscara = 0FFF
1 8 7
fonte
value_1
referncia
value_2
1 8 3
1 8 3
1 8 3
varredura atual
varredura
anterior
varredura
anterior
varredura atual
exemplo 1 exemplo 2
9
7
0
0
0
0
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-21
Proporcional, Integral e
Derivativo (PID)
A instruo PID controla um tag de processo como, por exemplo,
fluxo, presso, temperatura ou nvel.
Operandos de Lgica
Ladder:
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Descrio:
PID PID estrutura estrutura PID
Process
variable
SINT
INT
DINT
REAL
tag valor a ser controlado
Tieback SINT
INT
DINT
REAL
imediato
tag
(opcional)
sada de uma estao manual/automtica de
hardware que est realizando bypass da
sada do controlador
insira 0 se voc no quiser usar esse
parmetro
Control
variable
SINT
INT
DINT
REAL
tag valor que vai para o dispositivo de controle
final (vlvula, amortecedor etc.)
se voc estiver usando a zona morta, Control
variable deve ser do tipo REAL ou o mesmo
ser forado em 0 quando houver um erro
dentro da zona morta
PID master
loop
PID estrutura opcional
tag PID para o PID mestre
Se voc estiver realizando o controle em
cascata e esse PID for uma malha escrava,
insira o nome do PID mestre.
insira 0 se voc no quiser usar esse
parmetro
Inhold bit BOOL tag opcional
status atual do bit inhold de um canal de
sada analgico 1756 para suportar uma
reinicializao ininterrupta
insira 0 se voc no quiser usar esse
parmetro
Inhold value SINT
INT
DINT
REAL
tag opcional
valor de nova leitura de dados de uma canal
de sada analgica 1756 para suportar uma
reinicializao ininterrupta.
insira 0 se voc no quiser usar esse
parmetro
Publicao 1756-RM003C-PT-P - Novembro 2000
12-22 Instrues Especiais (FBC, DDT, DTR, PID)
Estrutura: Especifique uma estrutura PID nica para cada instruo PID.
Setpoint somente display
valor atual do setpoint.
Process
variable
somente display
valor atual de Process Variable convertido
em escala
Output % somente display
valor de porcentagem da sada da corrente
Operando Tipo: Formato: Descrio:
Mnemnico: Tipo de Dados: Descrio:
.CTL DINT O membro .CTL fornece acesso aos membros de status (bits) em uma palavra de 32 bits. A
instruo PID energiza os bits 07 -15.
Este bit: Corresponde a este membro:
31 .EN
30 .CT
29 .CL
28 .PVT
27 .DOE
26 .SWM
25 .CA
24 .MO
23 .PE
22 .NDF
21 .NOBC
20 .NOZC
Este bit: Este membro que configurado pela instruo PID:
15 .INI
14 .SPOR
13 .OLL
12 .OLH
11 .EWD
10 .DVNA
09 .DVPA
08 .PVLA
07 .PVHA
SP REAL setpoint
.KP REAL independente ganho proporcional (sem unidade)
dependente ganho do controlador (sem unidade)
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-23
.KI REAL independente ganho integral (1/s)
dependente tempo de reset (minutos por repetio)
.KD REAL independente ganho derivativo (segundos)
dependente tempo da taxa (minutos)
.BIAS REAL feedforward ou bias %
.MAXS REAL valor de converso de escala da unidade de medida mxima
.MINS REAL valor de converso de escala da unidade de medida mnima
.DB REAL unidades de medida da zona morta
.SO REAL defininir % da sada
.MAXO REAL limite de sada mximo (% da sada)
.MINO REAL limite de sada mnimo (% da sada)
.UPD REAL tempo de atualizao da malha (segundos)
.PV REAL valor PV em escala
.ERR REAL valor de erro em escala
.OUT REAL % da sada
.PVH REAL limite de alarme superior para o tag do processo
.PVL REAL limite de alarme inferior para o tag do processo
.DVP REAL limite de alarme de desvio positivo
.DVN REAL limite de alarme de desvio negativo
.PVDB REAL zona morta do alarme do tag de processo
.DVDB REAL zona morta do alarme de desvio
.MAXI REAL valor mximo de PV (entrada sem escala)
.MINI REAL valor mnimo de PV (entrada sem escala)
.TIE REAL valor de tieback para controle manual
.MAXCV REAL valor mximo de CV (corresponde a 100%)
.MINCV REAL valor mnimo de CV (corresponde a 0%)
.MINTIE REAL valor mnimo de tieback (corresponde a 100%)
.MAXTIE REAL valor mximo de tieback (corresponde a 0%)
Mnemnico: Tipo de Dados: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
12-24 Instrues Especiais (FBC, DDT, DTR, PID)
.DATA REAL[17] O membro .DATA armazena:
Elemento Descrio:
.DATA[0] acmulo integral
.DATA[1] valor temporrio de filtro derivativo
.DATA[2] valor .PV anterior
.DATA[3] valor .ERR anterior
.DATA[4] valor .SP vlido anterior
.DATA[5] constante de converso de escala em porcentagem
.DATA[6] constante de converso em escala .PV
.DATA[7] constante de converso em escala derivativa
.DATA[8] valor .KP anterior
.DATA[9] valor .KI anterior
.DATA[10] valor .KD anterior
.DATA[11] ganho .KP dependente
.DATA[12] ganho .KI dependente
.DATA[13] ganho .KD dependente
.DATA[14] valor .CV anterior
.DATA[15] constante .CV para desfazer a converso
.DATA[16] constante tieback para desfazer a converso
.EN BOOL habilitado
.CT BOOL tipo cascata (0=escravo; 1=mestre)
.CL BOOL malha da cascata (0=no; 1=sim)
.PVT BOOL rastreamento do tag do processo (0=no; 1=sim)
.DOE BOOL derivativa de (0=PV; 1=erro)
.SWM BOOL modo manual do software (0=no - automtico; 1=sim- manual com chave)
.CA BOOL ao de controle (0 significa E=SP-PV; 1 significa E=PV-SP)
.MO BOOL modo de estao (0=automtico; 1=manual)
.PE BOOL equao PID (0=independente; 1=dependente)
.NDF BOOL filtro derivativo (0=no; 1=sim)
.NOBC BOOL clculo de volta para bias (0=no; 1=sim)
.NOZC BOOL cruzamento zero para zona morta (0=no; 1=sim para zona morta)
.INI BOOL PID inicializada (0=no; 1=sim)
.SPOR BOOL setpoint fora da faixa (0=no; 1=sim)
.OLL BOOL CV est abaixo do limite de sada mnimo (0=no; 1=sim)
.OLH BOOL CV est acima do limite de sada mximo (0=no; 1=sim)
.EWD BOOL o erro est dentro da zona morta (0=no; 1=sim)
.DVNA BOOL o desvio est definido como alarme baixo (0=no; 1=sim)
Mnemnico: Tipo de Dados: Descrio:
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-25
Operandos do Bloco de
Funo
Esta instruo no est disponvel no bloco de funo.
Descrio: A instruo PID geralmente recebe a varivel de processo (PV) de um
mdulo de entrada analgica e modula uma sada da varivel de
controle (CV) em um mdulo de sada analgica a fim de manter a
varivel de processo no setpoint desejado.
O bit .EN indica o status de execuo. O bit .EN energizado quando
a entrada da condio da linha passa de falsa para verdadeira. O bit
.EN desenergizado quando a entrada da condio da linha se torna
falsa. A instruo PID no utiliza um bit .DN. A instruo PID
executada a cada varredura, sempre que a entrada da condio da
linha for verdadeira.
Flags de Status Aritmtico: no afetados
Condies de Falha:
.DVPA BOOL o desvio est definido como alarme alto (0=no; 1=sim)
.PVLA BOOL o PV est definido como alarme baixo (0=no; 1=sim)
.PVHA BOOL o PV est definido como alarme alto (0=no; 1=sim)
Mnemnico: Tipo de Dados: Descrio:
estado da linha
execuo da instruo PID
bit .EN
41027
IMPORTANTE
Estas falhas eram graves no controlador CLP-5.
Uma falha de advertncia ocorrer se: Tipo de falha: Cdigo de falha:
.UPD 0 4 35
setpoint fora de faixa 4 36
Publicao 1756-RM003C-PT-P - Novembro 2000
12-26 Instrues Especiais (FBC, DDT, DTR, PID)
Execuo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Configurao de uma
Instruo PID
Depois de inserir a instruo PID e especificar a estrutura PID, use a
guia Configuration para especificar como a instruo PID
deve funcionar.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A sada da condio da linha est definida como verdadeira.
Clique aqui para configurar a
instruo PID
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-27
Especificao do ajuste
Selecione a guia Tuning. As alteraes passam a ser aceitas, assim que
clicar em outro campo, OK, Apply ou Enter.
Especificao da configurao
Selecione a guia Configuration. Voc deve clicar em OK ou Apply
para que as alteraes tenham validade.
No campo: Especifique
Setpoint (SP) Insira um valor de setpoint (.SP).
Set output % Insira uma porcentagem de sada (.SO).
No modo manual do software, esse valor usado para a sada.
No modo automtico, esse valor exibe a % da sada.
Output bias Insira a procentagem de bias de sada (.BIAS).
Ganho proporcional (K
p
) Insira o ganho proporcional (.KP).
Para ganhos independentes, este o ganho proporcional (sem unidade).
Para ganhos dependentes, este o ganho do controlador (sem unidade).
Ganho Integral (K
i
) Insira o ganho integral (.KI).
Para os ganhos independentes, este o ganho integral (1/s).
Para os ganhos dependentes, este o tempo de reset (minutos por repetio).
Tempo derivativo (K
d
) Insira o ganho derivativo (.KD).
Para ganhos independentes, este o ganho derivativo (segundos).
Para os ganhos dependentes, este o tempo da taxa em minutos.
Manual mode Selecione o manual (.MO) ou o manual do software (.SWM).
O modo Manual se sobrepe ao manual do software se os dois forem selecionados.
No campo: Especifique
PID equation Selecione os ganhos independentes ou ganhos dependentes (.PE).
Use independente, caso seja necessrio que os trs ganhos (P, I e D) operem de forma
independente. Use dependente, caso seja necessrio que um ganho geral do
controlador afete os trs termos (P, I e D).
Control action Selecione E=PV-SP ou E=SP-PV para control action (.CA).
Derivative of Selecione PV ou erro (.DOE).
Use o derivativo de PV para eliminar os impulsos de sada resultantes das alteraes de
setpoint. Use o derivativo do erro para as respostas rpidas para as alteraes de
setpoint quando o algoritmo pode tolerar excedentes.
Loop update time Insira o tempo de atualizao (.UPD) para a instruo (maior do que ou igual a 0,01
segundo).
CV high limit Insira um limite superior para a varivel de controle (.MAXO).
CV low limit Insira um limite inferior para a varivel de controle (.MINO).
Deadband value Insira o valor da zona morta (.DB).
No derivative smoothing Habilita ou desabilita essa seleo (.NDF).
Publicao 1756-RM003C-PT-P - Novembro 2000
12-28 Instrues Especiais (FBC, DDT, DTR, PID)
Especificao de alarmes
Selecione a guia Alarms. Voc deve clicar em OK ou Apply para que
as alteraes tenham validade.
No bias calculation Habilita ou desabilita essa seleo (.NOBC).
No zero crossing in
deadband
Habilita ou desabilita essa seleo (.NOZC).
PV tracking Habilita ou desabilita essa seleo (.PVT).
Cascade loop Habilita ou desabilita essa seleo (.CL).
Cascade type Se a malha da cascata estiver habilitada, selecione escravo ou mestre (.CT).
No campo: Especifique
No campo: Especifique
PV high Insira um valor de limite superior para o alarme alto para a PV (.PVH).
PV low Insira um valor de limite inferior para o alarme baixo para a PV (.PVL).
PV deadband Insira um valor de zona morta para o alarme de PV (.PVDB).
positive deviation Insira um valor de desvio positivo (.DVP).
negative deviation Insira um valor de desvio negativo (.DVN).
deviation deadband Insira um valor de zona morta para o alarme de desvio (.DVDB).
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-29
Especificao de converso de escala
Selecione a guia Scaling. Voc deve clicar em OK ou Apply para que
as alteraes tenham validade.
Utilizao das Instrues
PID
O controle de malha fechada PID mantm uma varivel de processo
em um setpoint desejado. A figura a seguir mostra um exemplo de
nvel de taxa de fludo/fluxo:
No exemplo acima, o nvel no tanque comparado com o setpoint.
Se o nvel for mais elevado do que o set point, a equao PID
aumenta a varivel de controle e abre a vlvula de sada do tanque,
diminuindo, portanto, o nvel no tanque.
No campo: Especifique
PV unscaled maximum Insira um valor mximo de PV (.MAXI) igual ao valor mximo sem escala recebido do
canal de entrada analgica para o valor PV.
PV unscaled minimum Insira um valor mnimo de PV (.MINI) igual ao valor mnimo sem escala recebido do
canal de entrada analgica para o valor PV.
PV engineering units
maximum
Insira as unidades de medida mximas correspondentes a .MAXI (.MAXS)
PV engineering units
minimum
Insira as unidades de medida mnimas correspondentes a .MINII (.MINS)
CV maximum Insira um valor mximo de CV correspondente a 100% (.MAXCV).
CV minimum Insira um valor mnimo de CV correspondente a 0% (.MINCV).
Tieback maximum Insira um valor mximo de tieback (.MAXTIE) igual ao valor mximo sem escala
recebido do canal de entrada analgica para o valor de tieback.
Tieback minimum Insira um valor mnimo de tieback (.MINTIE) que seja igual ao valor mnimo sem escala
recebido do canal de entrada analgica para o valor de tieback.
PID Initialized Se voc alterar as constantes de converso de escala durante o modo Run, desligue
para reincializar os valores internos, anteriores converso de escala (.INI).
-
+
14271
setpoint
taxa de fluxo
erro
equao PID
varivel de
controle
varivel de processo
detector de nvel
Publicao 1756-RM003C-PT-P - Novembro 2000
12-30 Instrues Especiais (FBC, DDT, DTR, PID)
A equao PID usada na instruo PID uma equao de forma
posicional com a opo de usar ganhos independentes ou
dependentes. Ao usar ganhos independentes, os ganhos proporcional,
integral e derivativo afetam apenas seus termos proporcional, integral
ou derivativo especficos, respectivamente. Ao usar os ganhos
dependentes, o ganho proporcional substitudo por um ganho de
controlador que afeta todos os trs termos. possvel usar a forma da
equao para realizar o mesmo tipo de controle. Os dois tipos de
equao so fornecidos apenas para que voc use o tipo com o qual
est mais familiarizado.
Opo de Ganhos: Derivativo de Equao:
Ganhos dependentes
(padro ISA)
error (E)
process variable (PV)
Ganhos independentes error (E)
process variable (PV)
CV K
C
E
1
T
i
---- Edt T
d
dE
dt
------- +
0
t

+ BIAS + =
CV K
C
E
1
T
i
---- Edt T
d

dPV
dt
-----------
0
t

+ BIAS + =
E = SP - PV
CV K
C
E
1
T
i
---- Edt T
d
dPV
dt
----------- +
0
t

+ BIAS + =
E = PV - SP
CV K
P
E K
i
+ Edt K
d
dE
dt
------- +
0
t

BIAS + =
CV K
P
E K
i
+ Edt K
d

dPV
dt
-----------
0
t

BIAS + =
E = SP - PV
CV K
P
E K
i
+ Edt K
d
dPV
dt
----------- +
0
t

BIAS + =
E = PV - SP
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-31
Onde:
Se voc no quiser usar um termo particular da equao de PID,
defina o ganho em zero. Por exemplo, se voc no quiser nenhuma
ao derivativa, defina K
d
ou T
d
igual a zero.
Windup anti-reset e transferncia ininterrupta de manual para
automtico
A instruo PID automaticamente previne o windup de reset, evitando
que o termo integral acumule sempre que a sada CV alcanar os seus
valores mximo ou mnimo, conforme definido por .MAXO e .MINO.
O termo integral acumulado permanece congelado at que a sada CV
fique abaixo do seu limite mximo ou fique acima do seu limite
mnimo. Em seguida, o acmulo normal integral reinicia
automaticamente.
Varivel: Descrio:
K
P
ganho proporcional (sem unidade)
K
p
= K
c
sem unidade
K
i ganho integral (segundos
-1
)
Para converter entre K
i
(ganho integral) e T
i
(tempo de reset), use:
K
d
ganho derivativo (segundos)
Para converter entre K
d
(ganho derivativo) e T
d
(tempo da taxa), use:
K
d
= K
c
(T
d
) 60
K
C
ganho do controlador (sem unidade)
T
i
tempo de reset (minutos/repetio)
T
d
tempo da taxa (minutos)
SP setpoint
PV varivel de processo
E erro [(SP-PV) ou (PV-SP)]
BIAS feedforward ou bias
CV varivel de controle
dt tempo de atualizao de malha
K
i
K
C
60T
i
----------- =
Publicao 1756-RM003C-PT-P - Novembro 2000
12-32 Instrues Especiais (FBC, DDT, DTR, PID)
A instruo PID suporta dois modos manuais de controle:
A instruo PID tambm fornece automaticamente transferncias
ininterruptas do modo manual do software para o automtico ou do
manual para o automtico. A instruo PID calcula novamente o valor
do termo de acmulo integral requerido para fazer com que o
caminho da sada CV energize o valor da sada (.SO) no modo manual
do software ou a entrada tieback no modo manual. Dessa forma,
quando a malha chavear para o modo automtico, a sada CV inicia a
partir da sada configurada ou do valor de tieback e no ocorre
nenhuma "interrupo" no valor de sada.
A instruo PID tambm pode fornecer automaticamente uma
transferncia ininterrupta do manual para o automtico, mesmo que o
controle integral no seja usado (por ex.: K
i
= 0). Nesse caso, a
instruo modifica o termo .BIAS para fazer com que o caminho da
sada CV energize a sada ou os valores tieback. Quando o controle
automtico for reiniciado, o termo .BIAS manter o seu ltimo valor.
Voc pode desabilitar o novo clculo do termo .BIAS, configurando o
bit .NOBC na estrutura de dados PID. Preste ateno, pois se voc
definir .NOBC em verdadeiro, a instruo PID no fornecer mais
uma transferncia ininterrupta de manual para automtico quando o
controle integral no for usado.
Temporizao da instruo PID
A instruo PID e a amostra da varivel de processo precisam ser
atualizadas periodicamente. Esse tempo de atualizao est
relacionado ao processo fsico que est sendo controlado. Para malhas
muito lentas como, por exemplo, malhas de temperatura, um tempo
de atualizao de uma vez por segundo ou mais geralmente
suficiente para se obter bom controle. Malhas um pouco mais rpidas
como, por exemplo, malhas de fluxo ou presso, podem requerer um
Modo Manual de Controle: Descrio:
software manual (.SWM) tambm conhecido como modo de sada configurado
permite ao usurio definir a % da sada do software
O valor de sada configurado (.SO) usado como a sada da malha. O valor de sada
configurado geralmente se origina de uma entrada de operao de um dispositivo de
interface de operao.
manual (.MO) pega o valor de tieback como uma entrada e ajusta as suas variveis internas para gerar
o mesmo valor na sada.
A entrada tieback para a instruo PID convertida em uma escala de 0-100%, de
acordo com os valores de .MINTIE e .MAXTIE e usada como a sada da malha. A
entrada tieback geralmente se origina da sada da estao manual/automtica do
hardware, que est realizando o bypass da sada do controlador.
Nota: O modo Manual sobrepe ao modo Manual do software se os dois bits de modo
estiverem energizados.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-33
tempo de atualizao de uma vez a cada 250 milissegundos. Somente
em casos raros como, por exemplo, controle de tenso em um carretel
de desbobinador, requerem atualizaes de malha a cada
10 milissegundos ou mais rpido.
Como a instruo PID usa uma base de tempo no seu clculo,
necessrio sincronizar a execuo da instruo com a amostra da
varivel de processo (PV).
A forma mais fcil de executar a instruo PID coloc-la em uma
tarefa peridica. Defina o tempo de atualizao de malha (.UPD) igual
taxa da tarefa peridica e certifique-se de que a instruo PID seja
executada a cada varredura da tarefa peridica. Por exemplo, use uma
linha de diagrama ladder no condicionada.
Ao usar uma tarefa peridica, certifique-se de que a entrada analgica
para a varivel de processo seja atualizada para o controlador a uma
taxa que significativamente mais rpida do que a taxa da tarefa
peridica. Na forma ideal, a varivel de processo deve ser enviada
para o controlador pelo menos cinco a dez vezes mais rpido do que
a taxa da tarefa peridica. Isto reduz a diferena de tempo entre as
amostras atuais da varivel de processo e a execuo da malha PID.
Por exemplo, se a malha PID estiver em uma tarefa peridica de 250
milissegundos, use um tempo de atualizao de malha de 250
milissegundos (.UPD = .25) e configure o mdulo de entrada
analgica para produzir dados a, pelo menos, cada 25 e 50 ms.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-34 Instrues Especiais (FBC, DDT, DTR, PID)
Outro mtodo, um pouco menos preciso de execuo da instruo
PID colocar a instruo em uma tarefa contnua e usar um bit
executado do temporizador para disparar a execuo da instruo
PID.
Nesse mtodo, o tempo de atualizao de malha da instruo PID
deve ser configurado igual ao valor pr-programado do temporizador.
No caso de usar uma tarefa peridica, voc deve ajustar o mdulo de
entrada analgica para produzir a varivel do processo a uma taxa
significativamente mais elevada do que o tempo de atualizao da
malha. Voc deve usar somente o mtodo do temporizador da
execuo de PID para as malhas com os tempos de atualizao que
so vrias vezes mais longas do que o tempo de execuo do pior
caso para a tarefa contnua.
A forma mais precisa de executar uma instruo PID usar o recurso
de amostragem em tempo real (RTS) dos mdulos de entrada
analgica 1756. O mdulo de entrada analgica realiza uma amostra
das suas entradas taxa de amostragem em tempo real definida na
configurao do mdulo. Quando o perodo de amostra em tempo
real do mdulo expira, o mdulo atualiza as suas entradas e atualiza
os dados para impresso da data e hora (representado pelo membro
.RollingTimestamp da estrutura de dados de entrada analgica)
produzidos pelo mdulo. Os dados de impresso de hora e data
variam de 0-32767 milissegundos. Monitore os dados de impresso de
data e hora. Quando o mesmo alterado, uma nova amostra da
varivel de processo foi recebida. Cada vez que a data e a hora so
alteradas, execute a instruo PID uma vez. Como a amostra da
varivel de processo direcionada pelo mdulo de entrada analgica,
o tempo de amostra de entrada muito preciso e o tempo de
atualizao da malha usado pela instruo PID deve ser configurado
igual ao tempo RTS do mdulo de entrada analgica.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-35
Para certificar-se de que no haja perda de amostras da varivel de
processo, execute a sua lgica em uma taxa mais rpida do que o tempo de
RTS. Por exemplo, se o tempo RTS for de 250 ms, possvel colocar a
instruo PID em uma tarefa peridica que executada a cada 100 ms para
garantir que nenhuma amostra seja perdida. possvel colocar a lgica PID
em uma tarefa contnua, contanto que voc se certifique de que a lgica
ser atualizada com uma freqncia maior do que 250 milissegundos.
Um exemplo do mtodo RTS de execuo mostrado abaixo. A execuo da
instruo PID depende da recepo de novos dados de entrada analgica. Se
o mdulo de entrada analgica apresentar falha ou for removido, o
controlador pra de receber impresses de data e hora atualizadas e a malha
de PID pra a execuo. Voc deve monitorar o bit de status da entrada
analgica PV, e se isso mostrar um status deficiente, force a malha no modo
manual do software e execute a malha a cada varredura. Isto permite que o
operador ainda altere manualmente a sada da malha PID.
Reinicializao ininterrupta
A instruo PID pode interagir com os mdulos de sada analgica 1756
para suportar uma reincializao ininterrupta quando o controlador
mudar do modo Program para Run ou na energizao do controlador.
Quando um mdulo de sada analgica 1756 perde comunicao com o
controlador ou detecta que o controlador est no modo Program, o mdulo
de sada analgica energiza as suas sadas para os valores de condio de
falha especificados na configurao do mdulo. Quando o controlador
retorna para o modo Run ou re-estabelece comunicao com o mdulo de
sada analgica, voc pode fazer com que a instruo PID reset
automaticamente a sada da varivel de controle igual sada analgica,
usando o bit Inhold e os parmetros Inhold Value na instruo PID.
Publicao 1756-RM003C-PT-P - Novembro 2000
12-36 Instrues Especiais (FBC, DDT, DTR, PID)
Para configurar uma reinicializao initerrupta:
A seguinte instruo PID usa o bit Inhold e o valor Inhold:
Polarizao derivativa
O clculo da derivativa melhorado por um filtro de polarizao derivativa.
Esse filtro digital de primeira ordem e de passa/baixa ajuda a reduzir os
grandes impulsos do termo derivativo causados por rudo na PV. Essa
polarizao se torna mais agressiva com valores maiores de ganho derivativo.
possvel desabilitar a polarizao derivativa se o processo necessitar de
valores muito grandes de ganho derivativo (K
d
> 10, por exemplo). Para
desabilitar a polarizao derivativa, selecione a opo No derivative
smoothing na guia Configuration ou energize o bit .NDF na estrutura PID.
Faa o seguinte: Detalhes:
Configure o canal do mdulo de sada
analgica 1756 que recebe a varivel de
controle da instruo PID.
Selecione hold for initialization na pgina de propriedades para o canal especfico do
mdulo.
Isto informa ao mdulo de sada analgica que, quando o controlador retornar para o modo
Run ou re-estabelecer comunicao com o mdulo, o mdulo deve manter a sada analgica
no seu valor atual at que o valor enviado do controlador corresponda (com uma amplitude
de 0,1%) ao valor atual usado pelo canal de sada. A sada do controlador aumentar
seguindo em rampa at o valor de sada atualmente mantido, usando-se o termo .BIAS.
Esse aumento em rampa semelhante transferncia ininterrupta.
Insira o tag do bit Inhold e o tag Inhold
Value na instruo PID
O mdulo de sada analgica 1756 retorna dois valores para cada canal na sua estrutura de
dados de entrada. Quando verdadeiro, o bit de status InHold (.Ch2InHold, por exemplo)
indica que o canal de sada analgica est mantendo o seu valor. O valor de nova leitura de
Data (.Ch2Data, por exemplo) mostra o valor de sada atual em unidades de medida.
Insira o tag no bit de status InHold como o parmetro do bit InHold da instruo PID. Insira o
tag do valor de nova leitura de Data como o parmetro Inhold Value.
Quando o bit Inhold passar para verdadeiro, a instruo PID move Inhold Value para a sada
do tag de Controle e re-inicializa para fornecer suporte para uma reinicializao initerrupta
nesse valor. Quando o mdulo de sada analgica receber esse valor de volta do
controlador, o mesmo desenergiza o bit de status InHold, o que permite que a instruo PID
inicie o controle normalmente.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-37
Configurao da zona morta
A zona morta ajustvel permite que voc selecione uma faixa de erro
acima e abaixo do setpoint, onde as sadas no sero alteradas desde
que o erro permanea dentro da faixa. Essa zona morta permite o
controle do nvel de correspondncia entre a varivel de processo e o
setpoint, sem que a sada seja alterada. A zona morta tambm ajuda a
reduzir o desgaste no seu dispositivo de controle final.
O cruzamento zero um controle de zona morta que permite que a
instruo utilize o erro para clculos, conforme a varivel de processo
atravessa a zona morta, at que a varivel de processo cruze o
setpoint. Quando a varivel de processo cruzar o setpoint (o erro
cruza o valor zero e altera o sinal) e durante o tempo em que a
varivel de processo permanecer na zona morta, a sada no ser
alterada.
A zona morta se estende acima e abaixo do setpoint, de acordo com o
valor especificado por voc. Insira zero para inibir a zona morta. A
zona morta possui as mesmas unidades convertidas do setpoint.
possvel usar a zona morta sem recurso de cruzamento zero,
selecionando-se a opo no zero crossing for deadband na guia
Configuration ou energizando-se o bit .NOZC na estrutura PID.
Se voc estiver usando a zona morta, Control variable deve ser do tipo
REAL ou o mesmo ser forado em 0 quando houver um erro dentro
da zona morta
Uso da limitao de sada
possvel definir um limite de sada (% da sada) na sada de controle.
Quando a instruo detectar que a sada atingiu um limite, ela
energizar o bit de alarme e impedir que a sada ultrapasse o limite
superior ou inferior.
erro dentro da faixa da zona
morta
+ zona morta
setpoint
- zona morta
tempo 41026
Publicao 1756-RM003C-PT-P - Novembro 2000
12-38 Instrues Especiais (FBC, DDT, DTR, PID)
Feedforward ou polarizao da sada (bias)
possvel direcionar (feedforward) um distrbio do sistema, alimentando
o valor .BIAS no valor de bias/feedforward da instruo PID.
O valor feedforward representa um distrbio alimentado na instruo
PID antes que o distrbio tenha chance de alterar a varivel de
processo. Feedforward geralmente usado para controlar processos
com um atraso de transporte. Por exemplo, um valor feedforward
representando gua fria sendo jogada em uma mistura quente
poderia impulsionar o valor de sada mais rpido do que esperar que
a varivel de processo consegue alterar o resultado da mistura.
Um valor bias geralmente usado quando nenhum controle integral
usado. Nesse caso, o valor de bias pode ser ajustado para manter a
sada na faixa requerida para manter o PV prximo ao setpoint.
Malhas em cascata
A PID forma cascata com duas malhas, atribuindo a sada na
porcentagem da malha de mestre para o setpoint da malha de escravo.
A malha de escravo automaticamente converte a sada da malha de
mestre em unidades de medida corretas para o setpoint da malha de
escravo, com base nos valores da malha de escravo para .MAXS e .MINS.
Controle de um ndice
possvel manter dois valores em um ndice, usando-se a instruo
MUL com estes parmetros:
valor no controlado
valor controlado (o setpoint resultante a ser usado pela
instruo PID)
razo entre esses dois valores
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Especiais (FBC, DDT, DTR, PID) 12-39
Na instruo MUL, insira:
Para este parmetro MUL: Insira este valor:
destination valor controlado
source A valor no controlado
source B razo
Publicao 1756-RM003C-PT-P - Novembro 2000
12-40 Instrues Especiais (FBC, DDT, DTR, PID)
Teoria PID
Os nmeros a seguir mostram o fluxo do processo para as instrues PID.
processo PID
processo PID com malhas mestre/escravo
+
-
-1
+
SP
Exibido
como EUs
Erro Exibido
como EUs
Software A/M
ou
Modo A/M Station
Ao de
Controle
Auto SP-PV
(Erro)
Manual
no
sim
PVT
SP
PV-SP
Converte Binrio para
Unidades de Medida
(PV-mn)(mx-mn)
+ min
mx-min
PV
PV
Exibido
como EUs
Converte Unidades
em %
Erro X 100
mx-mn.
Clculo PID
Polarizao
da Sada %
Software A/M
Mode
Auto
Auto (Out%)
Define
Sada %
Converte Unidades de
Tieback em %
tieback-mintie
maxtie-mintie
x100
Manual
Manual
Limitao
da Sada
Define
Sada %
A/M Station
Mode
Sada (CV) Exibida
em % do Fator de
Escala EU
Converte % em Unidades CV
CV%(mxcv-mncv)
100
+ mncv
CV
+
-
-1
+
+
-
-1
+
SP
Auto
Manual
PVT
no
sim
Converte Binrio em
Unidades de Medida
(PV-mn)(mx-mn)
maxi-mini
+ mn
PV
SP-PV
PV-SP
(Erro)
Converte Unidade
em %
Erro X 100
mx-mn
Clculo PID
Polarizao
da Sada %
Software A/M
Mode
Auto
Auto (Out%)
Limitao
da Sada
Define
Sada %
A/M Station
Mode
Define
Sada %
Manual
Manual
(Master.Out)
SP
PV
Malha
Mestre
Software A/M
ou
A/M Station Mode
Ao de
Controle
Malha
Escravo
(Master.Out)
Converte Binrio em
Unidades de Medida
(PV-mn)(mx-mn)
maxi-mini
+ mn
(SP)
PV
Converte % em
Unidades de Medida
Converte Unidades
Tieback em %
tieback-mintie
maxtie-mintie
x100
Converte Unidades
em %
Erro X 100
mx-mn
Converte Unidades
em %
Erro X 100
mx-mn
X (mx-mn)
100
+ mn
Ao de
Controle
SP-PV
PV-SP
Clculo PID
Polarizao
da Sada %
Define
Sada %
Auto
Auto
Manual
Manual
A/M Station
Mode
Limitao
da Sada
Software A/M
Mode
Define
Sada %
Converte % em
CV%(maxcv-mincv)
100
+ mincv
Os itens relacionados nesta caixa
so parmetros, unidades e modos
pois pertencem malha Escrava
Manual
Manual
Auto
Software
A/M Mode
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 13
Instrues Trigonomtricas
(SIN, COS, TAN, ASN, ACS, ATN)
Introduo
As instrues trigonomtricas avaliam as operaes aritmticas usando
as operaes trigonomtricas.
possvel misturar tipos de dados, mas podem ocorrer perda de
preciso e erros de arredondamentos e a instruo demorar mais
tempo para executar. Verifique o bit de status de overflow (S:V) para
ver se o resultado foi truncado.
Para as instrues de lgica ladder, o tipo de dados em negrito indica
os tipos de dados timos. Uma instruo executa mais rapidamente e
requer menos memria se todos os operandos da instruo usam o
mesmo tipo de dado timo, geralmente DINT ou REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
Calcular o seno de um valor SIN 13-2
Calcular o co-seno de um valor COS 13-5
Calcular a tangente de um valor TAN 13-8
Calcular o arco seno de um valor ASN 13-11
Calcular o arco co-seno de um valor ACS 13-14
Calcular o arco tangente de um valor ATN 13-16
Publicao 1756-RM003C-PT-P - Novembro 2000
13-2 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Seno (SIN)
A instruo SIN calcula o seno do valor de Source (em radianos) e
coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo Lgica Ladder
Idiomas disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
calcula o seno desse valor
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura SIN
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo matemtica.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta
sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-3
Descrio: A Fonte deve ser maior ou igual a -205887,4 (-2x2
15
) e menor ou
igual a 205887,4 (2x2
15
). O valor resultante em Destination sempre
maior ou igual a -1 e menor ou igual a 1.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador calcula o seno de Source e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo SIN calcula o seno de <1><8><1>. e coloca o resultado em
result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
13-4 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Exemplo do Bloco de
Funo:
O valor da sada de function_block_A se torna o valor de entrada para Source. A instruo
calcula o seno de Source e coloca o valor em Dest, que se torna um parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-5
Co-seno (COS)
A instruo COS calcula o co-seno do valor de Source (em radianos) e
coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
calcula o co-seno desse valor
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura COS
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo matemtica.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so definidos para esta
sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
13-6 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Descrio: A Fonte deve ser maior ou igual a -205887,4 (-2x2
15
) e menor ou
igual a 205887,4 (2x2
15
). O valor resultante em Destination sempre
maior ou igual a -1 e menor ou igual a 1.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador calcula o co-seno de Source e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo COS calcula o co-seno de <1><19><1> e coloca o resultado em result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-7
Exemplo do Bloco de
Funo:
O valor da sada de function_block_A se torna o valor da entrada para Source. A instruo calcula
o co-seno de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
13-8 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Tangente (TAN)
A instruo TAN calcula a tangente do valor de Source (em radianos)
e coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
calcula a tangente desse valor
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura TAN
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se energizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo matemtica.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so definidos para esta
sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-9
Descrio: A Fonte deve ser maior ou igual a -102943,7(-2x2
14
) e menor ou
igual a 102943,7 (2x2
14
).
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador calcula a tangente de Source e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo TAN calcula a tangente de <1><19><1>e coloca o resultado
emresult.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
13-10 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Exemplo do Bloco de
Funo:
O valor da sada de function_block_A se torna o valor da entrada para Source. A instruo calcula a
tangente de Source e coloca o valor em Dest, que se torna o parmetro da entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-11
Arco Seno (ASN)
A instruo ASN calcula o arco seno do valor de Source (em radianos)
e coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
calcula o arco seno desse valor
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura ASN
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo matemtica.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
13-12 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Parmetros de sada
Descrio: Source deve ser maior ou igual a -1 e menor ou igual a 1. O valor
resultante em Destination sempre maior ou igual a -/2 e menor ou
igual a /2 (onde = 3,141593).
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so definidos para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador calcula o arco seno de Source e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo ASN calcula o arco seno de <1><19><1> e coloca o resultado em result.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-13
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo calcula o
arco seno de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
13-14 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Arco Co-seno (ACS)
A instruo ACS calcula o arco co-seno do valor de Source (em
radianos) e coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
calcula o arco co-seno desse valor
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura ACS
Parmetro de
entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo matemtica.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta
sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-15
Descrio: Source deve ser maior ou igual a -1 e menor ou igual a 1. O valor
resultante em Destination sempre maior ou igual a 0 ou menor ou
igual a (onde = 3,141593).
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador calcula o arco co-seno de Source e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo ACS calcula o arco co-seno de <1><19><1> e coloca o resultado em result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
instruction first run Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
13-16 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Exemplo do Bloco de
Funo:
Arco Tangente (ATN)
A instruo ATN calcula o arco tangente do valor de Source e coloca o
resultado em Destination (em radianos).
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo calcula o
arco co-seno de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
calcula o arco tangente desse valor
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura ATN
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-17
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: O valor resultante em Destination sempre maior ou igual a -/2 e
menor ou igual a /2 (onde = 3,141593).
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo matemtica.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador calcula o arco tangente de Source e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
13-18 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo ATN calcula o arco tangente de <1><19><1> e coloca o
resultado em result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo calcula o
arco tangente de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN) 13-19
Notas:
Publicao 1756-RM003C-PT-P - Novembro 2000
13-20 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 14
Instrues Matemticas Avanadas
(LN, LOG, XPY)
Introduo
As instrues matemticas avanadas incluem estas instrues:
possvel misturar tipos de dados, mas podem ocorrer perda de
preciso e erros de arredondamentos e a instruo demorar mais
tempo para executar. Verifique o bit S:V para observar se o resultado
foi truncado.
Para instrues de lgica ladder, os tipos de dados em negrito
indicam os tipos de dados timos. Uma instruo executa mais
rapidamente e requer menos memria se todos os operandos da
instruo usam o mesmo tipo de dado timo, geralmente DINT ou
REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
Calcular o log natural de um valor LN 14-2
Calcular o log da base 10 de um valor LOG 14-4
Elevar um valor potncia de outro valor XPY 14-7
Publicao 1756-RM003C-PT-P - Novembro 2000
14-2 Instrues Matemticas Avanadas (LN, LOG, XPY)
Log Natural (LN)
A instruo LN calcula o log natural de Source e coloca o resultado
em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo
Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
encontrar o log natural desse valor.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura LN
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas.
o valor inicial definido
Source REAL Entrada para instruo matemtica.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta
sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas Avanadas (LN, LOG, XPY) 14-3
Descrio: O Source deve ser maior que zero, ou o bit de status de overflow
(S:V) energizado. O valor resultante em Destination maior do que
ou igual a -87,33655 e menor do que ou igual a 88,72284.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O controlador calcula o log natural de Source e coloca o resultado em Destination.
A sada da condio da linha est definida como verdadeira.
Quando habilitada, a instruo LN calcula o log natural de value<F1> e coloca o resultado em <F19><F1>result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn est desenergizado EnableOut est desenergizado.
EnableIn est energizado A instruo executa.
EnableOut est energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
14-4 Instrues Matemticas Avanadas (LN, LOG, XPY)
Exemplo do Bloco de
Funo:
Base Log de 10 (LOG)
A instruo LOG calcula a base log de 10 de Source e coloca o
resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo calcula o
log natural de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Bloco de Funo
Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
encontrar o log natural desse valor.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura LOG
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas Avanadas (LN, LOG, XPY) 14-5
Estrutura: Parmetros de entrada
Parmetros de sada
Descrio: O Source deve ser maior que zero, ou o bit de status overflow (S:V)
energizado. O valor resultante em Destination maior do que ou
igual a -37,92978 e menor do que ou igual a 38,53184.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas.
o valor inicial definido
Source REAL Entrada para instruo matemtica.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta
sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O controlador calcula o log de Source e coloca o resultado em Destination.
A sada da condio da linha est definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
14-6 Instrues Matemticas Avanadas (LN, LOG, XPY)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo LOG calcula o log natural de value<F1> e coloca o resultado em <F19><F1>result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn est desenergizado EnableOut est desenergizado.
EnableIn est energizado A instruo executa.
EnableOut est energizado.
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo calcula a
base de log 10 de Source e coloca o valor em Dest, que se torna o parmetro de entrada para
function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas Avanadas (LN, LOG, XPY) 14-7
X Elevado Potncia de Y
(XPY)
A instruo XPY calcula Source A (X) elevado potncia de Source B
(Y) e armazena o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo Lgica Ladder
Linguagens
Operando Tipo: Formato: Descrio:
Source A SINT
INT
DINT
REAL
imediato
tag
valor de base
Source B SINT
INT
DINT
REAL
imediato
tag
exponente
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH estrutura estrutura XPY
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas.
o valor inicial definido
Source A REAL Valor base.
vlido = qualquer flutuante
Source B REAL Exponente.
vlido = qualquer flutuante
Publicao 1756-RM003C-PT-P - Novembro 2000
14-8 Instrues Matemticas Avanadas (LN, LOG, XPY)
Parmetros de sada
Descrio: Se Source A for negativo, Source B deve ser um valor inteiro ou uma
falha de advertncia ocorrer.
A instruo XPY usa esse algoritmo: Destination = X**Y
O controlador avalia x
0
=1 e 0
x
=0.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
Execuo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta
sada.
Uma falha de advertncia ocorrer se: Tipo de falha: Cdigo de
falha:
Source A negativa e Source B no um valor
inteiro
4 4
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O controlador calcula Source A elevado potncia de Source B e coloca o resultado em
Destination.
A sada da condio da linha est definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues Matemticas Avanadas (LN, LOG, XPY) 14-9
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Quando habilitada, a instruo XPY calcula value_1 elevado potncia de value_2 e coloca o resultado em result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn est desenergizado EnableOut est desenergizado.
EnableIn est energizado A instruo executa.
EnableOut est energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
14-10 Instrues Matemticas Avanadas (LN, LOG, XPY)
Exemplo do Bloco de
Funo:
Os valores de sada de function_block_A e function_block_B se tornam os valores de entrada para
SourceA e SourceB, respectivamente. A instruo eleva SourceA potncia de SourceB e coloca o
resultado em Dest, que se torna o parmetro de entrada para function_block_C.
function_block_A
function_block_B
function_block_C
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 15
Instrues de Converso Matemtica
(DEG, RAD, TOD, FRD, TRN)
Introduo
As instrues de converso matemtica convertem valores.
possvel misturar tipos de dados, mas podem ocorrer perda de
preciso e erros de arredondamentos e a instruo demorar mais
tempo para executar. Verifique o bit S:V para observar se o resultado
foi truncado.
Para instrues de lgica ladder, os tipos de dados em negrito
indicam os tipos de dados timos. Uma instruo executa mais
rapidamente e requer menos memria se todos os operandos da
instruo usam o mesmo tipo de dado timo, geralmente DINT ou
REAL.
Se voc quiser: Use esta instruo: Consulte
pgina:
Converter radianos em graus. DEG 15-2
Converter graus em radianos. RAD 15-5
Converter um valor inteiro em um valor BCD. TOD 15-8
Converter um valor BCD em um valor inteiro. FRD 15-12
Remover a parte fracionria de um valor TRN 15-15
Publicao 1756-RM003C-PT-P - Novembro 2000
15-2 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Graus (DEG)
A instruo DEG converte Source (em radianos) para graus e coloca o
resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo
Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
valor a ser convertido em graus.
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura DEG
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sada no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo de converso.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo de converso. Os flags de status aritmtico so energizados para
esta sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-3
Descrio: A instruo DEG usa este algoritmo:
Source*180/ (onde = 3,141593)
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador converte Source em graus e coloca o resultado em Destination.
A sada da condio da linha est definida como verdadeira.
Quando habilitada, a instruo DEG converte <1><19><1> em graus e coloca o resultado em result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
15-4 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Exemplo do Bloco de
Funo:
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo converte
Source (em radianos) para graus e coloca o resultado em Dest, que se torna o parmetro de entrada
para function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-5
Radianos (RAD)
A instruo RAD converte Source (em graus) para radianos e coloca o
resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo
Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
REAL
imediato
tag
valor a ser convertido em radianos
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_MATH_ADVANCED estrutura estrutura RAD
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo de converso.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest REAL Resultado da instruo de converso. Os flags de status aritmtico so energizados para
esta sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
15-6 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Descrio: A instruo RAD usa esse algoritmo:
Source*/180 (onde = 3,141593)
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador converte Source em radianos e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo RAD converte <1><19><1> em radianos e coloca o resultado em result.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-7
Exemplo do Bloco de
Funo:
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo converte
Source (em graus) para radianos e coloca o resultado em Dest, que se torna o parmetro de entrada
para function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
15-8 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Converso para BCD (TOD)
A instruo TOD converte um valor decimal (0 Source 99.999.999) para
um valor BCD e coloca o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
imediato
tag
valor a ser convertido em decimal.
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Destination SINT
INT
DINT
tag armazena o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_CONVERT estrutura estrutura TOD
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source DINT Entrada para a instruo de converso.
vlido = qualquer inteiro
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-9
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo de converso. Os flags de status aritmtico so energizados para
esta sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
15-10 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Descrio: BCD um sistema numrico Decimal de Cdigo Binrio que expressa
dgitos decimais individuais (0-9) em uma notao binria de 4 bits.
Se voc inserir um valor de Source negativo, a instruo gerar uma
falha de advertncia e zerar Destination.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha:
Execuo de Lgica
Ladder:
Uma falha de advertncia ocorrer
se:
Tipo de falha: Cdigo de falha:
source < 0 4 4
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador converte Source em BCD e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
entrada se a condio da linha for verdadeira
fim
source < 0
no
sim
source > 99.999.999
no
sim
converter fonte para BCD
S:V definido em 1
a sada da condio da linha
energizada quando verdadeira
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-11
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Quando habilitada, a instruo TOD converte value_1 em um valor BCD e coloca o resultado em result_a.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
O valor de sada de function_block_A se torna os valores de entrada para Source. A instruo converte
Source (valor decimal) para um valor BCD e coloca o resultado em Dest, que se torna OREF Test_value.
function_block_A
Publicao 1756-RM003C-PT-P - Novembro 2000
15-12 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Converso para Inteiro
(FRD)
A instruo FRD converte um valor BCD (Source) para um valor
decimal e armazena o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source SINT
INT
DINT
imediato
tag
valor a ser convertido em decimal.
Um tag SINT ou INT convertido para um valor DINT por preenchimento
com zero.
Destination SINT
INT
DINT
tag armazena o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_CONVERT estrutura estrutura FRD
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source DINT Entrada para instruo de converso.
vlido = qualquer inteiro
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-13
Parmetros de sada
Descrio: A instruo FRD converte um valor BCD (Source) para um valor
decimal e armazena o resultado em Destination.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo de converso. Os flags de status aritmtico so energizados para
esta sada.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador converte Source em valor decimal e coloca o resultado em Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo FRD converte value_a para um valor decimal e coloca o resultado em result_1.
Publicao 1756-RM003C-PT-P - Novembro 2000
15-14 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Execuo do Bloco de
Funo:
Exemplo do Bloco de
Funo:
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
O valor IREF se torna no valor de entrada para Source. A instruo converte Source
(valor BCD) em um valor decimal e coloca o resultado em Dest, que se torna o
parmetro de entrada para function_block_C.
function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-15
Truncagem (TRN)
A instruo TRN remove (trunca) a parte fracional de Source e
armazena o resultado em Destination.
Operandos de Lgica
Ladder:
Operandos do Bloco de
Funo:
Estrutura: Parmetros de entrada
Parmetros de sada
Bloco de Funo Lgica Ladder
Linguagens Disponveis:
Operando Tipo: Formato: Descrio:
Source REAL imediato
tag
valor a ser truncado
Destination SINT
INT
DINT
REAL
tag tag para armazenar o resultado
Operando Tipo: Formato: Descrio:
tag do bloco FBD_TRUNCATE estrutura estrutura TRN
Parmetro de
Entrada:
Tipo de Dados: Descrio:
EnableIn BOOL Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so
atualizadas.
o valor inicial definido
Source REAL Entrada para a instruo de converso.
vlido = qualquer flutuante
Parmetro de Sada: Tipo de Dados: Descrio:
EnableOut BOOL A instruo produziu um resultado vlido.
Dest DINT Resultado da instruo de converso. Os flags de status aritmtico so energizados para
esta sada.
Publicao 1756-RM003C-PT-P - Novembro 2000
15-16 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
Descrio: A truncagem no arredonda o valor; ao invs disso, a parte no
fracionria permanece a mesma, independente do valor da parte
fracionria.
Flags de Status Aritmtico: Os flags de status aritmtico so afetados.
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada se a condio da linha for falsa A sada da condio da linha definida como falsa.
entrada se a condio da linha for verdadeira O controlador remove a parte fracionria de Source e coloca o resultado em
Destination.
A sada da condio da linha definida como verdadeira.
Quando habilitada, a instruo TRN remove a parte fracionria de float_value_1, sem alterar a parte no
fracionria e coloca o resultado em float_value_1_truncated.
Condio: Ao:
pr-varredura Nenhuma ao tomada.
primeira varredura da instruo Nenhuma ao tomada.
primeira operao da instruo Nenhuma ao tomada.
EnableIn desenergizado EnableOut desenergizado.
EnableIn energizado A instruo executada.
EnableOut energizado.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN) 15-17
Exemplo do Bloco de
Funo:
O valor de sada de function_block_A se torna o valor de entrada para Source. A instruo trunca a parte fracional do
valor de Source e coloca o resultado em Dest, que se torna o parmetro de entrada para function_block_C.
function_block_A function_block_C
Publicao 1756-RM003C-PT-P - Novembro 2000
15-18 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Captulo 16
Instrues de Porta Serial ASCII
(ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Introduo
Use as instrues de porta serial para ler e escrever os caracteres
ASCII.
Para informaes sobre a configurao de porta serial do controlador
para usar as instrues ASCII, consulte o Manual do Usurio dos
Controladores Logix5000, publicao 1756-6.5.12PT.
Se voc quiser: Por exemplo: Use esta instruo: Consulte
pgina:
determinar quando o buffer contm
caracteres de terminao
verificar os dados que contenham caracteres
de terminao
ABL 16-5
contar os caracters no buffer verificar o nmero solicitado dos caracteres
antes de ler o buffer
ACB 16-7
remover o buffer remover dados antigos do buffer no
start-up
sincronizar o buffer com um
dispositivo
ACL 16-9
desenergizar as instrues ASCII que esto
sendo executadas no momento ou que esto
na fila
obter o status das linhas de controle da porta
serial
AHL 16-11
ligar ou desligar o sinal DTR
ligar ou desligar o sinal RTS
ler um nmero fixo de caracteres ler um dado de um dispositivo que envia o
mesmo nmero de caracteres em cada
transmisso
ARD 16-14
ler um nmero de caracteres varivel, at e
incluindo o primeiro conjunto de caracteres
de terminao
ler os dados a partir de um dispositivo que
envia um nmero de caracteres varivel em
cada transmisso
ARL 16-17
enviar caracteres e, automaticamente,
acrescentar um ou dois caracteres adicionais
para marcar o fim dos dados
enviar mensagens que sempre usam o(s)
mesmo(s) caracter(es) de extremidade
AWA 16-21
enviar caracteres enviar mensagens que usam vrios
caracteres de terminao
AWT 16-24
Publicao 1756-RM003C-PT-P - Novembro 2000
16-2 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
A instruo ASCII executada de forma assncrona para a varredura
da lgica:
Cada instruo ASCII, exceto a ACL, contm um operando SerialPort
Control , o qual precisa de um tag de tipo de dado
SERIAL_PORT_CONTROL. O operando SerialPort Control executa
estas funes:
controla a execuo da instruo
fornece as informaes de status sobre a instruo
A instruo entra na
fila ASCII.
Fila ASCII
Instruo 1 Instruo na parte
superior da fila
executada.
Buffer
Serial Port
Instruo 2
Instruo 3
Instruo 4
Quando a entrada da
condio da linha passa de
falsa para verdadeira
Os dados fluem
entre a tarefa e o
buffer.
Os dados fluem entre o
buffer e a porta serial
Lgica Tarefa ASCII
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-3
O diagrama de temporizao representa as mudanas nos bits de
status conforme uma instruo ABL testa o buffer quanto aos
caracteres de terminao
varredura varredura
varredura varredura
entra na fila reseta os bits de status
executa
quando efetuada a varredura e .DN
ou .ER forem definidos, o bit .EM
energiza
neste exemplo,
encontra os caracteres
de terminao.
entrada da
condio da linha
falsa verdadeira falsa verdadeira falsa
.EN off on off on off
. EU off on
RN off on off on off
.DN ou .ER off on off on
.FD off on off on
.EM off on off on
Publicao 1756-RM003C-PT-P - Novembro 2000
16-4 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
A fila ASCII suporta at 16 instrues. Quando a fila est cheia, uma
instruo tenta entrar na fila em cada varredura subsequente da
instruo, como representado abaixo:
Cdigos de Erro ASCII
Para determinar o motivo de falha da instruo, monitore ou examine
o membro SERIAL_PORT_CONTROL.ERROR para um cdigo de erro
hexadecimal. Use a tabela seguinte para interpretar o cdigo de erro:
varredura varredura varredura varredura
tenta entrar na fila, mas a fila est cheia
entrada da
condio da linha
falsa verdadeira falsa
.EN off on
. EU off on
Este cdigo
hex:
Indica que:
16#2 modem passou para o modo offline.
16#3 O sinal CTS foi perdido durante a comunicao.
16#4 A porta serial estava em modo de sistema.
16#A Antes da execuo da instruo o bit .UL foi energizado. Isto evita a execuo
da instruo.
16#C O controlador mudou do modo Run para o modo Program. Isto pra a
execuo de uma instruo ASCII e remove a fila.
16#D Na janela Properties do Controlador, guia User Protocol, o tamanho de buffer
ou parmetros de modo de eco so mudados e aplicados. Isto pra a
execuo de uma instruo ASCII e remove a fila.
16#E A instruo ACL foi executada.
16#F A configurao da porta serial mudou do modo do Usurio para o modo do
Sistema. Isto pra a execuo de uma instruo ASCII e remove a fila da
instruo ASCII.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-5
Teste ASCII Para Linha do
Buffer (ABL)
A instruo ABL conta os caracteres no buffer at o primeiro conjunto
de caracteres da extremidade.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a entrada da condio da linha passa de falsa para
verdadeira, a instruo ABL conta os caracteres no buffer at e
incluindo o primeiro conjunto de caracteres de terminao. A janela
Properties do Controlador, guia User Protocol, define os caracteres
ASCII que a instruo considera como caracteres de terminao.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT imediato
tag
0
Porta Serial
Control
SERIAL_PORT_
CONTROL
tag tag que controla a operao
Character
Count
DINT imediato 0
Durante a execuo, exibe o nmero de
caracteres no buffer, at e incluindo o
primeiro conjunto dos caracteres de
terminao.
EN
DN
ER
ASCII Test For Buffer Line
Channel ?
SerialPort Control ?
Character Count ?
ABL
ACL
42225
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit de habilitao indica que a instruo est habilitada.
RN BOOL O bit de operao indica que a instruo est executando.
.EM BOOL O bit vazio indica que a instruo est concluda.
.ER BOOL O bit de erro indica quando a instruo falha (erros).
.FD BOOL O bit encontrado indica que a instruo encontra os caracteres de terminao
.POS DINT A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de
caracteres de terminao.
.ERRO DINT O erro contm um valor hexadecimal que identifica a causa de um erro.
Publicao 1756-RM003C-PT-P - Novembro 2000
16-6 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Para programar a instruo ABL, siga estas orientaes:
1. Configure a porta serial do controlador para o modo do usurio
e defina os caracteres que servem como caracteres de
terminao.
2. Passe a entrada da condio de linha para a instruo ABL de
falsa para verdadeira toda vez que o buffer estiver para ser
contado. Por exemplo, para contar repetidamente o buffer, use
uma instruo XIO para examinar o bit .EN da instruo ABL.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN est energizado.
Os bits de status restantes, exceto .UL, so desenergizados.
A instruo tenta entrar na fila ASCII.
A sada da condio da linha est definida como verdadeira.
Quando temp_high_write est concluda (EM est energizado), a instruo testa continuamente o buffer quanto aos caracteres de
terminao
42226

temp_high_write.EM
/
ack.EN
EN
DN
ER
ASCII Test For Buffer Line
Channel 0
SerialPort Control ack
Character Count 0
ABL
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-7
Caracteres ASCII no Buffer
(ACB)
A instruo ACB conta os caracteres no buffer.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a entrada de condio de linha passa de falsa para
verdadeira, a instruo ACB conta os caracteres no buffer.
Para programar a instruo ACB, siga estas orientaes:
1. Configure a porta serial do controlador para modo de usurio.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT imediato
tag
0
Porta Serial
Control
SERIAL_PORT_
CONTROL
tag tag que controla a operao
Character
Count
DINT imediato 0
Durante a execuo, exibe o nmero de
caracteres no buffer.
EN
DN
ER
ASCII Chars in Buffer
Channel ?
SerialPort Control ?
Character Count ?
ACB
EN CII Handshake Lines
AHL
42225
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit de habilitao indica que a instruo est habilitada.
RN BOOL O bit de operao indica que a instruo est executando.
.EM BOOL O bit vazio indica que a instruo est concluda.
.ER BOOL O bit de erro indica quando a instruo falha (erros).
.FD BOOL O bit encontrado indica que a instruo encontra os caracteres de terminao
.POS DINT A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de
caracteres de terminao.
.ERRO DINT O erro contm um valor hexadecimal que identifica a causa do erro.
Publicao 1756-RM003C-PT-P - Novembro 2000
16-8 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
2. Passe a entrada da condio de linha para a instruo ACB de
falsa para verdadeira toda vez que o buffer estiver para ser
contado. Por exemplo, para contar repetidamente o buffer, use
uma instruo XIO para examinar o bit .EN da instruo ACB.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN est energizado.
Os bits de status restantes, exceto .UL, so desenergizados.
A instruo tenta entrar na fila ASCII.
A sada da condio da linha est definida como verdadeira.
Contar continuamente os caracteres no buffer
42227
/
weight_count.EN
EN
DN
ER
ASCII Chars in Buffer
Channel 0
SerialPort Control weight_count
Character Count 0
ACB
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-9
Remoo de Buffer e da
Fila ASCII (ACL)
A instruo ACL imediatamente remove o buffer e a fila ASCII.
Operandos de Lgica
Ladder:
Operandos de Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a entrada da condio da linha for verdadeira, a instruo
ACL imediatamente realiza uma ou ambas das seguintes aes:
remove o buffer de caracteres e remove a fila ASCII das instrues de
leitura
remove a fila ASCII das instrues de escrita
Para programar a instruo ACL, siga estas orientaes:
1. Configure a porta serial do controlador:
2. Para determinar se uma instruo foi removida da fila ou
abortada, examine as seguintes instrues apropriadas:
bit .ER est energizado
membro .ERROR 16#E
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT imediato
tag
0
Clear Serial
Port Read
BOOL imediato
tag
Para esvaziar o buffer e remover as
instrues ARD e ARL da fila, digite Yes.
Clear Serial
Port Write
BOOL imediato
tag
Para remover as instrues AWA e AWT da
fila, digite Yes.
ASCII Clear Buffer
Channel ?
Clear Serial Port Read ?
Clear Serial Port Write ?
ACL
42225
Se sua aplicao: Ento:
usa as instrues ARD or ARL Selecione modo do Usurio
no usa as instrues ARD ou ARL Selecione ou o modo do Sistema ou do
Usurio
Publicao 1756-RM003C-PT-P - Novembro 2000
16-10 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Exemplo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira A instruo remove as instrues especficas e o(s) buffer(s).
A sada da condio da linha est definida como verdadeira.
Quando o controlador entra no modo Run, remove o buffer e a fila ASCII
42228

S:FS
ASCII Clear Buffer
Channel 0
Clear Serial Port Read 1
Clear Serial Port Write 1
ACL
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-11
Linhas ASCII Handshake
(AHL)
A instruo AHL obtm o status das linhas de controle e liga e desliga
os sinais DTR e RTS.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT tag
imediato
0
ANDMask DINT imediato
tag
Consulte a descrio.
ORMask DINT imediato
tag
Porta Serial
Control
SERIAL_PORT_
CONTROL
tag tag que controla a operao
Channel
Status
(Decimal)
DINT imediato 0
Durante a execuo, exibe o status das
linhas de controle.
EN
DN
ER
ASCII Handshake Lines
Channel ?
AND Mask ?
??
OR Mask ?
??
SerialPort Control ?
Channel Status(Decimal) ?
AHL
ARL
42225
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit de habilitao indica que a instruo est habilitada.
RN BOOL O bit de operao indica que a instruo est executando.
.EM BOOL O bit vazio indica que a instruo est concluda.
.ER BOOL O bit de erro indica quando a instruo falha (erros).
.FD BOOL O bit encontrado indica que a instruo encontra os caracteres de terminao
.POS DINT A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de
caracteres de terminao.
.ERROR DINT O erro contm uma valor hexadecimal que identifica a causa de um erro.
Publicao 1756-RM003C-PT-P - Novembro 2000
16-12 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Descrio: Quando a entrada de condio da linha passa de falsa para
verdadeira, a instruo AHL pode realizar estas aes:
obter o status das linhas de controle da porta serial
ligar ou desligar o sinal (DTR) pronto do terminal de dados
ligar ou desligar o pedido para enviar o sinal (RTS)
Para programar a instruo AHL, siga estas orientaes:
1. Configure a porta serial do controlador:
2. Use as tabelas seguintes para selecionar os valores corretos para
os operandos ANDMask e ORMask:
3. Passe a entrada da condio de linha para a instruo AHL de
falsa para verdadeira toda vez que a instruo estiver para
executar.
Flags de Status Aritmtico: no afetados
Condies de Falha: nenhuma
Se sua aplicao: Ento:
usa as instrues ARD or ARL Selecione modo do Usurio
no usa as instrues ARD ou ARL Selecione ou o modo do Sistema ou do
Usurio
DTR: RTS: Digite este valor
ANDMask:
E digite este valor
ORMask:
off off 3 0
on 1 2
no mudado 1 0
on off 2 1
on 0 3
no mudado 0 1
no mudado off 2 0
on 0 2
no mudado 0 0
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-13
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN est energizado.
Os bits de status restantes, exceto .UL, so desenergizados.
A instruo tenta entrar na fila ASCII.
A sada da condio da linha est definida como verdadeira.
Quando get_control_line_status est on, a instruo AHL obtm o status das linhas de controle da porta serial e exibe o status no
operando Channel Status. Para vizualizar o status de uma linha de controle especfica, monitore a tag SerialPort Control e expanda o
membro POS.
42230

get_control_line_status
EN
DN
ER
ASCII Handshake Lines
Channel 0
AND Mask 0

OR Mask 0

SerialPort Control serial_port
Channel Status(Decimal) 29
AHL
Publicao 1756-RM003C-PT-P - Novembro 2000
16-14 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Leitura ASCII (ARD)
A instruo ARD remove os caracteres do buffer e armazena-os em
Destination.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT imediato
tag
0
Destination SINT
INT
DINT
elemento
de uma tag
de matriz
primeiro elemento da matriz na qual os
caracteres so movidos (leitura)
Porta Serial
Control
SERIAL_PORT_
CONTROL
tag tag que controla a operao
String
Length
DINT imediato nmero de caracteres para mover para
destination (leitura)
Characters
Read
DINT imediato 0
Durante a execuo, exibe o nmero de
caracteres que foram lidos.
EN
DN
ER
ASCII Read
Channel ?
Destination ?
??
SerialPort Control ?
String Length ?
Characters Read ?
ARD
EN ASCII W it A d
AWA
42225
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit de habilitao indica que a instruo est habilitada.
RN BOOL O bit de operao indica que a instruo est executando.
.EM BOOL O bit vazio indica que a instruo est concluda.
.ER BOOL O bit de erro indica quando a instruo falha (erros).
.FD BOOL O bit encontrado indica que a instruo encontra os caracteres de terminao
.POS DINT A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de
caracteres de terminao.
.ERROR DINT O erro contm um valor hexadecimal que identifica a causa de um erro.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-15
Descrio: Quando a entrada da condio da linha passa de falsa para
verdadeira, a instruo ARD remove o nmero especfico de
caracteres do buffer e armazena-os em Destination.
A instruo continua a executar at remover o nmero
especfico de caracteres (operando String Length).
Enquanto a instruo ARD est sendo executada, nenhuma
outra instruo ASCII executada.
Para programar a instruo ARD, siga estas orientaes:
1. Configure a porta serial do controlador para modo de usurio.
2. Use os resultados de uma instruo ACB para iniciar a instruo
ARD. Isto previne a instruo ARD de segurar a fila ASCII
enquanto ela espera o nmero de caracteres requisitado.
Consulte "Exemplo de Lgica Ladder:" na pgina 16-16.
3. Passe a entrada da condio de linha da instruo ARD de falsa
para verdadeira toda vez que o buffer estiver para ser lido.
4. Use uma matriz de SINTs para Destination. Cada caracter ASCII
usa oito bits (um SINT), para que cada elemento da matriz tenha
armazenado um caracter.
5. Voc quer que a primeira varredura do programa atualize o
operando String Length de acordo com o comprimento da
matriz Destination ou o tamanho do buffer, o que for menor?
6. Se o dado um valor, tal como um peso, converta-o em um
valor inteiro ou valor de ponto flutuante.
Flags de Status Aritmtico: no afetados
Condies de Falha:
Se: Ento, no operando String Length:
sim Digite 0.
no Digite o nmero de caracteres para mover para o destination.
Se: Uma falha de advertncia ocorre:
Tipo: Cdigo:
operando String Length negativo. 4 30
Publicao 1756-RM003C-PT-P - Novembro 2000
16-16 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
O exemplo seguinte representa o uso de uma instruo ACB para
verificar se o nmero correto de caracteres est no buffer antes que a
instruo ARD execute e leia os caracteres.
Execu do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN energizado.
Os bits de status restantes, exceto .UL, so desenergizados.
A instruo tenta entrar na fila ASCII.
A sada da condio da linha est definida como verdadeira.
Uma balana envia os valores de pesos para a porta serial (canal 0) do controlador. Cada peso sempre contm sete caracteres. Para
determinar quando o controlador recebe um peso, a instruo ACB inclui continuamente os caracteres no buffer.
Quando o buffer contm ao menos sete caracteres, o controlador recebeu um peso. A instruo ARD move o peso para o tag weight_ascii,
que uma matriz de SINTs.
Quando o controlador termina de ler o peso (weight_read.EM est energizado), a sub-rotina Ascii_To_Real executa uma vez para
converter o peso para um valor de ponto flutuante (REAL) para uso na aplicao.
42227
/
weight_count.EN
EN
DN
ER
ASCII Chars in Buffer
Channel 0
SerialPort Control weight_count
Character Count 0
ACB
Grtr Than or Eql (A>=B)
Source A weight_count.pos
0
Source B 7

GEQ
EN
DN
ER
ASCII Read
Channel 0
Destination weight_ascii[0]
'$00'
SerialPort Control weight_read
String Length 7
Characters Read 0
ARD

weight_read.EM
ONS
weight_convert
Jump to Subroutine
Routine name Ascii_To_Real
Return par weight
JSR
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-17
Linha de Leitura ASCII
(ARL)
A instruo ARL remove caracteres do buffer e armazena-os em
Destination.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT imediato
tag
0
Destination SINT
INT
DINT
elemento
de um tag
de matriz
primeiro elemento da matriz na qual os
caracteres so movidos (leitura)
Porta Serial
Control
SERIAL_PORT_
CONTROL
tag tag que controla a operao
String
Length
DINT imediato nmero de caracteres mximo para mover
para destination (ex.: quando parar de ler
se nenhum caracter de terminao for
encontrado)
Characters
Read
DINT imediato 0
Durante a execuo, exibe o nmero de
caracteres que foram lidos.
EN
DN
ER
ASCII Read Line
Channel ?
Destination ?
??
SerialPort Control ?
String Length ?
Characters Read ?
ARL
EN ASCII W it
AWT
42225
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit de habilitao indica que a instruo est habilitada.
RN BOOL O bit de operao indica que a instruo est executando.
.EM BOOL O bit vazio indica que a instruo est concluda.
.ER BOOL O bit de erro indica quando a instruo falha (erros).
.FD BOOL O bit encontrado indica que a instruo encontra os caracteres de terminao
.POS DINT A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de
caracteres de terminao.
.ERROR DINT O erro contm um valor hexadecimal que identifica a causa de um erro.
Publicao 1756-RM003C-PT-P - Novembro 2000
16-18 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Descrio: Quando a entrada da condio da linha passa de falsa para
verdadeira, a instruo ARL remove os caracteres do buffer e
armazena-os em Destination como segue:
A instruo ARL continua a ser executada at remover ou
primeiro conjunto de caracteres de terminao
nmero especfico de caracteres (operando String Length)
Enquanto a instruo ARL est sendo executada, nenhuma outra
instruo ASCII executada.
Para programar a instruo ARL, siga estas orientaes:
1. Configure a porta serial do controlador:
a. Selecione modo do Usurio
b. Defina os caracteres que servem como caracteres de
terminao.
2. Use os resultados de uma instruo ABL para iniciar a instruo
ARL. Isto previne a instruo ARL de segurar a fila ASCII
enquanto espera pelos caracteres de terminao. Consulte
"Exemplo de Lgica Ladder:" na pgina 16-19.
3. Passe a entrada da condio de linha para a instruo ARL de
falsa para verdadeira toda vez que o buffer estiver para ser lido.
4. Use uma matriz de SINTs para destination. Cada caracter ASCII
usa oito bits (um SINT), para que cada elemento da matriz
armazene um caracter.
5. Voc quer que a primeira varredura do programa atualize o
operando String Length de acordo com o comprimento da
matriz Destination ou o tamanho do buffer, o que for menor?
6. Se o dado um valor, tal como um peso, converta-o em um
valor inteiro ou valor de ponto flutuante.
Se: Ento, no operando String Length:
sim Digite 0.
no Digite o nmero de caracteres mximo que qualquer mensagem
incluir (ex.: quando parar de ler se nenhum caracter de terminao
for encontrado).
Por exemplo, se as mensagens variam de 3 a 6 caracteres no
comprimento, digite 6.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-19
Flags de Status Aritmtico: no afetados
Condies de Falha:
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
O seguinte exemplo representa o uso de uma instruo ABL para
testar o buffer quanto ao final da mensagem antes da instruo ARL
ler a mensagem.
Se: Uma falha de advertncia ocorre:
Tipo: Cdigo:
operando String Length negativo. 4 30
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN est energizado.
Os bits de status restantes, exceto .UL, esto desenergizados.
A instruo tenta entrar na fila ASCII.
A sada da condio da linha est definida como verdadeira.
Depois de enviar uma mensagem para o terminal MessageView, como indicado por temp_high_write.EM, o controlador espera que um
operador reconhea a mensagem. Cada reconhecimento varia de 3 a 6 caracteres, mas sempre termina em $r. Como $r configurado
como o caracter de terminao na janela Properties do Controlador, guia User Protocol, a instruo ABL testa continuamente o buffer
quanto ao $r.

temp_high_write.EM
/
ack.EN
EN
DN
ER
ASCII Test For Buffer Line
Channel 0
SerialPort Control ack
Character Count 0
ABL
Publicao 1756-RM003C-PT-P - Novembro 2000
16-20 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando a instruo ABL encontra o $r (ack.FD energizado), o controlador recebeu o reconhecimento pelo operador. A instruo ARL
remove os caracteres do buffer, at e incluindo o $r, e coloca-os no tag temp_high_ack tag, que uma matriz SINT.
42226

ack.FD
EN
DN
ER
ASCII Read Line
Channel 0
Destination temp_high_ack[0]
'$00'
SerialPort Control temp_high_ack_read
String Length 6
Characters Read 0
ARL
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-21
Anexar Leitura ASCII (AWA)
A instruo AWA envia caracteres da matriz Source para um
dispositivo serial e anexa um ou dois caracteres pr-definidos.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT imediato
tag
0
Source SINT
INT
DINT
elemento
de uma tag
de matriz
primeiro elemento de matriz que contm
o dado a ser enviado
Porta Serial
Control
SERIAL_PORT_
CONTROL
tag tag que controla a operao
String
Length
DINT imediato nmero de caracteres a serem enviados
Characters
sent
DINT imediato 0
Durante a execuo, exibe o nmero de
caracteres que foram enviados
EN
DN
ER
ASCII Write Append
Channel ?
Source ?
??
SerialPort Control ?
String Length ?
Characters Sent ?
AWA
42225
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit de habilitao indica que a instruo est habilitada.
RN BOOL O bit de operao indica que a instruo est executando.
.EM BOOL O bit vazio indica que a instruo est concluda.
.ER BOOL O bit de erro indica quando a instruo falha (erros).
.FD BOOL O bit encontrado indica que a instruo encontra os caracteres de terminao
.POS DINT A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de
caracteres de terminao.
.ERROR DINT O erro contm um valor hexadecimal que identifica a causa de um erro.
Publicao 1756-RM003C-PT-P - Novembro 2000
16-22 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Descrio: Quando a entrada da condio da linha passa de falsa para
verdadeira, a instruo AWA:
envia o nmero de caracteres especfico (String Length) da
matriz Source para o dispositivo que est conectado porta
serial do controlador
adiciona no fim do dado (anexa) um ou dois caracteres que so
definidos na janela Properties do Controlador, guia User
Protocol
Para programar a instruo AWA, siga estas orientaes:
1. Configure a porta serial do controlador:
a. Sua aplicao tambm inclui as instrues ARD ou ARL?
b. Defina os caracteres para anexar os dados.
2. Passe a entrada da condio de linha para a instruo AWA de
falsa para verdadeira toda vez que os caracteres estiverem para
ser enviados.
3. Use uma matriz de SINTs para o source. Cada caracter ASCII usa
oito bits (um SINT), para que cada elemento da matriz armazene
um caracter.
4. Voc quer que a primeira varredura do programa atualize o
operando de Comprimento da matriz Fonte ou o tamanho do
buffer, o que for menor?
5. Na matriz Source, digite os caracteres a serem enviados. Omita
os caracteres que a instruo acrescentar automaticamente.
Se: Ento:
sim Selecione modo do Usurio
no Selecione ou o modo do Sistema ou do
Usurio
Se: Ento, no operando String Length:
sim Digite 0.
no Digite o nmero de caracteres a serem enviados.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-23
Flags de Status Aritmtico: no afetados
Condies de Falha:
Execuo de Lgica
Ladder:
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Se: Uma falha de advertncia ocorre:
Tipo: Cdigo:
operando String Length negativo. 4 30
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN est energizado.
Os bits de status restantes, exceto .UL, est desenergizados.
A instruo tenta entrar na fila ASCII.
A sada da condio da linha est definida como verdadeira.
Quando a temperatura exceder o limite superior (temp_high is on), a instruo AWA envia uma mensagem para o terminal MessageView
que est conectado porta serial do controlador. A mensagem contm nove caracteres da matriz msg_5. A instruo tambm envia
(anexa) os caracteres definidos nas propriedades do controlador. Neste exemplo, a instruo AWA envia um caracterer $0D, que marca o
fim da mensagem
42226

temp_high
EN
DN
ER
ASCII Write Append
Channel 0
Source msg_5[0]
'$14'
SerialPort Control temp_high_write
String Length 9
Characters Sent 0
AWA
Publicao 1756-RM003C-PT-P - Novembro 2000
16-24 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Escrita ASCII (AWT)
A instruo AWT envia caracteres da matriz Source para um
dispositivo serial.
Operandos de Lgica
Ladder:
Estrutura:
Operandos do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Descrio: Quando a entrada da condio de linha faz a transio de falsa para
verdadeira, a instruo AWT envia o nmero especificado de
caracteres (Comprimento do String) da matriz Source para o
dispositivo que est conectado porta serial do controlador.
Linguagens Disponveis:
Lgica Ladder
Operando Tipo: Formato: Insira:
Channel: DINT imediato
tag
0
Source SINT
INT
DINT
elemento
de uma tag
de matriz
primeiro elemento de matriz que contm
o dado a ser enviado
Porta Serial
Control
SERIAL_PORT_
CONTROL
tag tag que controla a operao
String
Length
DINT imediato nmero de caracteres a serem enviados
enviar
caracteres
DINT imediato 0
Durante a execuo, exibe o nmero de
caracteres que foram enviados
EN
DN
ER
ASCII Write
Channel ?
Source ?
??
SerialPort Control ?
String Length ?
Characters Sent ?
AWT
42225
Mnemnico: Tipo de Dados: Descrio:
.EN BOOL O bit de habilitao indica que a instruo est habilitada.
RN BOOL O bit de operao indica que a instruo est executando.
.EM BOOL O bit vazio indica que a instruo est concluda.
.ER BOOL O bit de erro indica quando a instruo falha (erros).
.FD BOOL O bit encontrado indica que a instruo encontra os caracteres de terminao
.POS DINT A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de
caracteres de terminao.
.ERRO DINT O erro contm um valor hexadecimal que identifica a causa de um erro.
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-25
Para programar a instruo AWT, siga estas orientaes:
1. Configure a porta serial do controlador:
2. Passe a entrada da condio de linha para a instruo AWT de
falsa para verdadeira toda vez que os caracteres estiverem para
ser enviados.
3. Use uma matriz de SINTs para o source. Cada caracter ASCII usa
oito bits (um SINT), para que cada elemento da matriz tenha
armazenado um caracter.
4. Voc quer que a primeira varredura do programa atualize o
operando de Comprimento da matriz Fonte ou o tamanho do
buffer, o que for menor?
5. Na matriz Source, digite os caracteres a serem enviados.
Flags de Status Aritmtico: no afetados
Condies de Falha:
Execuo de Lgica
Ladder:
Se sua aplicao: Ento:
usa as instrues ARD or ARL Selecione modo do Usurio
no usa as instrues ARD ou ARL Selecione ou o modo do Sistema ou do Usurio
Se: Ento, no operando String Length:
sim Digite 0.
no Digite o nmero de caracteres a serem enviados.
Se: Uma falha de advertncia ocorre:
Tipo: Cdigo:
operando String Length negativo. 4 30
Condio: Ao:
pr-varredura A sada da condio da linha definida como falsa.
entrada da condio da linha for falsa A sada da condio da linha definida como falsa.
entrada da condio da linha for verdadeira O bit .EN est energizado.
Os bits de status restantes, exceto .UL, esto desenergizados.
A instruo tenta entrar na fila ASCII.
A sada da condio da linha est definida como verdadeira.
Publicao 1756-RM003C-PT-P - Novembro 2000
16-26 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Exemplo de Lgica
Ladder:
Execuo do Bloco de
Funo:
Esta instruo no est disponvel no bloco de funo.
Quando a temperatura alcana o limite inferior (temp_low est energizado), a instruo AWT envia uma mensagem para o terminal
MessageView que est conectado porta serial do controlador. A mensagem contm os primeiros 10 caracteres da matriz msg_4. O
dcimo caracter um $0D, que marca o fim da mensagem.
42229

temp_low
EN
DN
ER
ASCII Write
Channel 0
Source msg_4[0]
'$00'
SerialPort Control temp_low_msg_send
String Length 10
Characters Sent 0
AWT
Publicao 1756-RM003C-PT-P - Novembro 2000
Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT) 16-27
Notas:
Publicao 1756-RM003C-PT-P - Novembro 2000
16-28 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Apndice A
Atributos Comuns
Introduo
Este apndice descreve os atributos comuns s instrues Logix .
Valores Imediatos
Sempre que voc inserir um valor imediato (constante) no formato
decimal (por ex.:-2,3), o controlador armazenar o valor usando 32
bits. Se voc inserir um valor em uma base diferente da decimal
como, por exemplo, binria ou hexadecimal, e no especificar todos
os 32 bits, o controlador colocar um zero nos bits no especificados
(preenchimento com zero).
Converses de Dados
As converses de dados ocorrem quando se combina tipos de dados
na sua programao:
Para mais informaes sobre: Consulte pgina:
Valores Imediatos A-1
Converses de Dados A-1
EXEMPLO
Preenchimento com zero de valores imediatos
Se voc inserir: O controlador armazenar:
-1 16#ffff ffff (-1)
16#ffff (-1) 16#0000 ffff (65535)
8#1234 (668) 16#0000 029 c (668)
2#1010 (10) 16#0000 000a (10)
Ao programar em: As converses podem ocorrer quando:
lgica ladder se combina tipos de dados para os parmetros dentro de
uma instruo
bloco de funo se liga dois parmetros que possuem tipos diferentes de
dados
Publicao 1756-RM003C-PT-P - Novembro 2000
A-2 Atributos Comuns
As instrues executam mais rpido e necessitam de menos memria
se todos os operandos da instruo usarem:
os mesmos tipos de dados
um tipo de dado timo:
Na seo Operandos de cada instruo neste manual, um
tipo de dados em negrito indica um tipo de dado timo.
Os tipos de dados DINT e REAL so geralmente os tipos de
dados timos.
A maioria das instrues do bloco de funo somente suporta
um tipo de dados (o tipo de dados timo) para os operandos.
Se voc combinar os tipos de dados e usar os tags que no so do
tipo de dado timo, o controlador converter os dados de acordo
com estas regras
Alguns operandos so um valor REAL?
Depois da execuo da instruo, o resultado (um valor DINT
ou REAL) convertido para o tipo de dado de destino, se
necessrio.
No se pode especificar um tag BOOL na instruo que opera em
tipos de dados inteiros ou REAL.
Como a converso de dados precisa de memria e tempo adicionais,
possvel aumentar a eficincia dos programas atravs:
do uso do mesmo tipo de dado em toda a instruo
da reduo do uso de tipos de dados SINT ou INT
Em outras palavras, use todos os tags DINT ou REAL, juntamente com
os valores imediatos, nas suas instrues.
As sees a seguir explicam como os dados sero convertidos ao usar
os tags SINT ou INT ou ao combinar tipos de dados.
Se: Ento os operandos de entrada (por ex.: fonte, tag em uma
expresso, limite) so convertidos em:
sim REALs
no DINTs
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos Comuns A-3
SINT ou INT para DINT
Para aquelas instrues que convertem os valores SINT ou INT em
valores DINT, as sees Operandos neste manual identificam o
mtodo de converso.
O exemplo a seguir mostra os resultados da converso de um valor
usando uma extenso de sinal e preenchimento com zero.
Como os valores imediatos so sempre preenchidos com zero, a
converso de um valor SINT ou INT pode produzir resultados
inesperados. No exemplo a seguir, a comparao falsa porque
Source A, tipo INT, converte por extenso de sinal; enquanto que
Source B, valor imediato, preenchida com zero.
Este mtodo de converso: Converte os dados, colocando:
extenso de sinal o valor do bit mais esquerda (o sinal do valor) em cada
posio de bit esquerda dos bits existentes at que
haja 32 bits.
Preenchimento com zero zeros esquerda dos bits existentes at que haja 32 bits
Este valor. 2#1111_1111_1111_1111 (-1)
Converte para este
valor por extenso
de sinal
2#1111_1111_1111_1111_1111_1111_1111_1111 (-1)
Converte este valor
por preenchimento
com zero
2#0000_0000_0000_0000_1111_1111_1111_1111 (65535)
der Logic Listing - Total number of rungs: 3
Equal
Source A remote_rack_1:I.Data[0]
2#1111_1111_1111_1111
Source B 2#1111_1111_1111_1111

EQU
42093
Publicao 1756-RM003C-PT-P - Novembro 2000
A-4 Atributos Comuns
Se voc usar um tag SINT ou INT e um valor imediato em uma
instruo que converte dados por extenso de sinal, use um destes
mtodos para manusear os valores imediatos:
Especifique um valor imediato na base decimal
Se voc estiver inserindo o valor em uma base diferente da
decimal, especifique todos os 32 bits do valor imediato. Para
tanto, insira o valor no bit esquerda em cada posio de bit a
sua esquerda at que haja 32 bits.
Crie um tag para cada operando e use o mesmo tipo de dados
em toda a instruo. Para atribuir um valor constante, possvel:
Insirir um valor em uma dessas variveis
Acrescentar uma instruo MOV que move o valor para um
dos tags.
Use uma instruo MEQ para verificar somente os bits
requisitados.
Os exemplos a seguir mostram duas formas de misturar um valor
imediato com um tag INT. Os dois exemplos verificam os bits de um
mdulo 1771 de E/S para determinar se todos os bits esto
energizados. Como a palavra de dados de entrada de um mdulo
1771 de E/S um tag INT, mais fcil usar um valor constante de 16
bits.
EXEMPLO
Exemplo :Combinao de um tag INT com um valor
imediato
J que remote_rack_1:I.Data[0] um tag INT, o valor
com o qual deve ser comparado tambm inserido
como um tag INT.
Equal
Source A remote_rack_1:I.Data[0]
2#1111_1111_1111_1111
Source B int_0
2#1111_1111_1111_1111
EQU
42093
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos Comuns A-5
Inteiro para REAL
O controlador armazena os valores REAL em uma preciso nica
IEEE, formato de nmero de ponto flutuante. Use um bit para o sinal
do valor, 23 bits para o valor base e 8 bits para o expoente (total de 32
bits). Se combinar um tag de inteiro (SINT, INT ou DINT) e um tag
REAL como entradas na mesma instruo, o controlador converte o
valor inteiro em REAL antes da instruo ser executada.
Um valor SINT ou INT sempre convertido para o mesmo valor
REAL.
Um valor DINT pode no ser convertido para o mesmo valor
REAL:
Um valor REAL usa at 24 bits para o valor base (23 bits
armazenados mais um bit "escondido").
Um valor DINT usa at 32 bits para o valor (um para o sinal e
31 para o valor).
Se o valor DINT requerer mais do que 24 bits significativos,
pode no converter para o mesmo valor REAL. Se no
converter, o controlador arredonda para o valor REAL mais
prximo, usando 24 bits significativos.
DINT para SINT para INT
Para converter um valor DINT para um valor SINT ou INT, o
controlador trunca a parte superior de DINT e energiza o flag de
EXEMPLO
Exemplo: Combinao de um tag INT com um valor
imediato
J que remote_rack_1:I.Data[0] um tag INT, o valor com o
qual deve ser comparado primeiro se move para int_0, em
um tag INT, tambm. Em seguida, a instruo EQU
compara os dois tags.
2#1111_1111_1111_1111
Move
Source 2#1111_1111_1111_1111

Dest int_0
2#1111_1111_1111_1111
MOV
Equal
Source A remote_rack_1:I.Data[0]
2#1111_1111_1111_1111
Source B int_0
2#1111_1111_1111_1111
EQU
42093
Publicao 1756-RM003C-PT-P - Novembro 2000
A-6 Atributos Comuns
status de overflow, se necessrio. O exemplo a seguir mostra o
resultado de um converso de DINT para SINT ou INT.
REAL para um inteiro
Para converter um valor REAL para um valor inteiro, o controlador
arredonda a parte fracionria e trunca a parte superior da parte no
fracionria. Se os dados forem perdidos, o controlador energiza o flag
de status de overflow. Os nmeros so arredondados da seguinte
forma:
Nmeros diferentes de x,5 so arredondados para o nmero
inteiro mais prximo.
X,5 arredondado para o nmero par mais prximo.
O exemplo a seguir mostra o resultado da converso de valores REAL
em valores DINT.
EXEMPLO
Converso de um DINT para um INT e um SINT
EXEMPLO
Converso de valores REAL em valores DINT
Este valor DINT: Converte para este valor menor:
16#0001_0081 (65.665) INT: 16#0081 (129)
SINT: 16#81 (-127)
Este valor REAL: Converte para este valor DINT:
-2,5 -2
-1,6 -2
-1,5 -2
-1,4 -1
1,4 1
1,5 2
1,6 2
2,5 2
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos Comuns A-7
IMPORTANTE
Os flags de status aritmtico so baseados no valor a ser
armazenado. As instrues que normalmente no afetam as
palavras-chaves do status aritmtico podem parecer faz-lo
se a converso de tipo ocorrer por causa dos tipos de dados
para os parmetros da instruo. O processo de converso
de tipo define as palavras-chaves do status aritmtico.
Publicao 1756-RM003C-PT-P - Novembro 2000
A-8 Atributos Comuns
1 Publicao 1756-RM003C-PT-P - Novembro 2000
Apndice B
Atributos de Bloco de Funo
Introduo
Este apndice descreve caractersticas nicas das instrues de bloco
de funo. Estude as informaes deste apndice para entender
corretamente como as rotinas de bloco de funo operaro.
Dados Retentivos
Se usar um IREF para especificar dados de entrada para uma instruo
de bloco de funo, os dados neste IREF sero retidos para a
varredura da rotina do bloco de funo. O IREF retm dados de tags
de uso geral do controlador e especficos do programa. O controlador
atualiza todos os dados IREF no incio de cada varredura.
IMPORTANTE
Quando programar no bloco de funo, limite a faixa de unidade de
medida para +/-10
+/-15
pois os clculos internos de ponto flutuante
so feitos usando ponto flutuante de preciso nica. As unidades de
medida fora desta faixa podem acarretar em perda de preciso se os
resultados se aproximarem das limitaes do ponto flutuante de
preciso nica (+/-10
+/-38
).
IREF
Publicao 1756-RM003C-PT-P - Novembro 2000
B-2 Atributos de Bloco de Funo
Neste exemplo, o valor de tagA armazenado no incio da execuo
da rotina. O valor armazenado usado na execuo do Block_01.
Este mesmo valor tambm usado na execuo do Block_02. Se o
valor de tagA se altera durante a execuo da rotina, o valor
armazenado de tagA no IREF no se altera at a prxima execuo da
rotina.
Este exemplo igual ao do anterior. O valor de tagA armazenado
somente uma vez no incio da execuo da rotina. A rotina usa este
valor armazenado durante toda a rotina.
Ordem de Execuo
O software de programao RSLogix 5000 determina automaticamente
a ordem de execuo para os blocos de funo na rotina quando:
se verifica uma rotina de bloco de funo
se verifica um projeto que contm uma rotina de bloco de
funo
se descarrega um projeto que contm uma rotina de bloco de
funo
Define-se a ordem de execuo atravs da conexo de blocos de
funo juntos e da indicao de fios localizados de feedback, se
necessrio.
tagA
Block_01
Block_02
tagA
Block_01
Block_02
tagA
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos de Bloco de Funo B-3
Se os blocos de funo no so conectados juntos, no existe ordem
de execuo para determinar.
Se os blocos so conectados sequencialmente, a ordem de execuo
se move da entrada para sada. As entradas de um bloco devem estar
disponveis antes que o controlador possa executar este bloco. Por
exemplo, o bloco 2 deve executar antes do bloco 3, pois as sadas do
bloco 2 alimentam as entradas do bloco 3.
A ordem de execuo se refere somente aos blocos que so
conectados juntos. O exemplo a seguir est correto pois os dois
grupos de blocos no esto conectados juntos. Os blocos dentro de
um grupo especfico executam a ordem apropriada em relao aos
blocos daquele grupo.
1 2 3
1 3 5
2 4 6
Publicao 1756-RM003C-PT-P - Novembro 2000
B-4 Atributos de Bloco de Funo
Se um grupo de blocos estiver em uma malha, o controlador no
pode determinar que entradas devem estar disponveis primeiro. Use
um fio de feedback localizado para determin-las. Se um pino de
entrada estiver conectado a um fio de feedback localizado, a entrada
no deve estar disponvel antes que o bloco possa executar. Neste
exemplo, o bloco 1 usa a sada do bloco 3 que foi produzido na
execuo anterior da rotina.
Em resumo, uma rotina de bloco de funo executa nesta ordem:
1. O controlador retm todos os valores de dados nos IREFs.
2. O controlador executa os outros blocos de funo para determinar
como so conectados.
3. O controlador escreve sadas nos OREFs.
1 2 3
fio de feedback localizado
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos de Bloco de Funo B-5
Respostas de Bloco de
Funo para Condies de
Overflow
Em geral, as instrues de bloco de funo que mantm o histrico
no o atualiza com valores NAN, ou INF quando um overflow
ocorre. Cada instruo tem uma destas respostas para uma condio
de overflow:
Modos de Temporizao
Estas instrues de controle de processo e inversor suportam modos
diferentes de temporizao.
DEDT NTCH
DERV PI
HPF PIDE
INTG RLIM
LDLG SCRV
LDL2 SOC
LPF TOT
Resposta 1:
Os blocos executam seus algoritmos e
verificam o resultado para NAN ou INF.
Se NAN ou INF, as sadas de bloco
NAN ou INF.
Resposta 2:
Os blocos com sadas de limitao
executam seus algoritmos e verificam o
resultado por NAN ou INF. Os limites
de sada so definidos pelos parmetros de
entrada HighLimit e LowLimit. Se INF, o
bloco produz um resultado limitado.
Se NAN, os limites da sada no so
usados e os blocos produzem NAN.
Resposta 3:
A condio de overflow no se aplica. Estas
instrues possuem geralmente uma sada
booleana.
ALM NTCH
DEDT PMUL
DERV POSP
ESEL RLIM
FGEN RMPS
HPF SCRV
LDL2 SEL
LDLG SNEG
LPF SRTP
MAVE SSUM
MAXC TOT
MINC UPDN
MSTD
MUX
HLL
INTG
PI
PIDE
SCL
SOC
BAND OSRI
BNOT RESD
BOR RTOR
BXOR SETD
CUTD TOFR
D2SD TONR
D3SD
DFF
JKFF
OSFI
Publicao 1756-RM003C-PT-P - Novembro 2000
B-6 Atributos de Bloco de Funo
Existem trs modos de temporizao diferentes:
As instrues baseadas no tempo requerem um valor constante para o
DeltaT, para que o algoritmo de controle calcule adequadamente a
sada do processo. Se o DeltaT varia, uma descontinuidade ocorre na
sada do processo. A gravidade da descontinuidade depende da
instruo e a faixa da variao do DeltaT. Uma descontinuidade
ocorre se:
a instruo no executada durante uma varredura.
a instruo executada mltiplas vezes durante uma tarefa.
a tarefa estiver operando e a taxa de varredura da tarefa ou o
tempo de amostra da entrada do processo se altera.
o usurio altera o modo de base de tempo enquanto a tarefa
estiver operando.
O parmetro de ordem alterado no bloco de filtro enquanto a
tarefa est operando. A alterao do parmetro Order seleciona
um algoritmo de controle diferente dentro da instruo.
Modo de Temporizao: Descrio:
peridico No modo peridico, o perodo delta (Delta T) usado pela instruo a taxa de varredura da tarefa quando a
instruo executada dentro de uma tarefa peridica. Se a instruo for executada em uma tarefa contnua,
o Delta T igual ao tempo transcorrido desde a execuo anterior.
A atualizao da entrada do processo deve ser sincronizada com a execuo da tarefa ou amostragem 5-10
vezes mais rpida do que a da tarefa, a fim de minimizar o erro de amostragem entre a entrada e
a instruo.
amostragem configurada No modo de amostragem configurada, o perodo delta (Delta T) usado pela instruo o valor escrito no
parmetro OversampleDT da instruo. Use este modo quando a instruo executa em uma tarefa contnua
e a entrada do processo no tem timestamp associado com as atualizaes. Se a entrada do processo tiver
timestamp, prefira usar o modo de amostragem em tempo real.
Adicione lgica para o programa controlar quando a instruo executa. Por exemplo, pode-se usar um
temporizador ajustado para o valor OversampleDeltaT para controlar a execuo usando a entrada EnableIn
da instruo.
A entrada do processo deve ser amostrada 5-10 vezes mais rpido do que a execuo da instruo, a fim de
minimizar o erro de amostragem entre a entrada e a instruo.
amostragem em tempo real No modo de amostragem em tempo real, o perodo delta (Delta T) usado pela instruo a diferena entre
dois valores de registro de data e hora que correspondem s atualizaes da entrada do processo. Use este
modo quando a instruo executa em uma tarefa contnua e a entrada do processo tem um registro de data
e hora associado s atualizaes.
O valor de registro de data e hora lido a partir do nome do tag inserido no parmetro RTSTimeStamp da
instruo. Normalmente, este nome de tag um parmetro no mdulo de entrada associado com a entrada
do processo.
A instruo compara o valor configurado RTSTime (perodo programado de atualizao) com o DeltaT
calculado para determinar se todas as atualizaes da entrada do processo esto sendo lidas pela
instruo. Se o DeltaT no estiver dentro de 1 milissegundo do tempo de configurao, a instruo ajusta o
bit de status RTSMissed para indicar que um problema existe na leitura de atualizaes para a entrada no
mdulo.
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos de Bloco de Funo B-7
Parmetros comuns de instruo para modos de temporizao
As instrues que suportam modos de base de tempo possuem estes
parmetros de entrada e sada:
Parmetros de entrada
Parmetro de
Entrada:
Tipo de Dados: Descrio:
TimingMode DINT Seleciona modo de execuo de temporizao.
Valor: Descrio:
0 modo peridico
1 modo de amostragem configurada
2 modo de amostragem em tempo real
vlido = 0 a 2
valor inicial = 0
Quando TimingMode = 0 e a tarefa peridica, a temporizao peridica habilitada e o
DeltaT ajustado para a taxa de varredura da tarefa. Quando TimingMode = 0 e a tarefa
contnua, a temporizao peridica habilitada e o DeltaT ajustado amplitude do tempo
transcorrido desde a ltima vez que a instruo foi executada.
Quando TimingMode = 1, a temporizao da amostragem configurada habilitada e o DeltaT
ajustado para o valor do parmetro OversampleDT.
Quando TimingMode = 2, a temporizao da amostragem em tempo real habilitada e o
DeltaT a diferena entre os valores atual e anterior de registro de data e hora lidos a partir
do mdulo associado com a entrada.
Se TimingMode for invlido, a instruo energiza o bit apropriado em Status.
OversampleDT REAL Tempo de execuo para temporizao de oversample. O valor usado para DeltaT est em
segundos. Se TimingMode = 1, ento OversampleDT = 0,0 desabilita a execuo do
algoritmo de controle. Se invlido, a instruo ajusta DeltaT=0,0 e energiza o bit apropriado
em Status.
vlido = 0 a 4194,303 segundos
valor inicial = 0,0
RTSTime DINT Perodo de atualizao do mdulo para temporizao de amostragem em tempo real. O
perodo programado de atualizao DeltaT est em milissegundos. O perodo de atualizao
normalmente o valor que foi usado para configurar o tempo de atualizao do mdulo. Se
invlido, a instruo energiza o bit apropriado em Status e desabilita a verificao
RTSMissed.
vlido = 1 a 32.767 ms
valor inicial = 1
RTSTimeStamp DINT Valor de registro de data e hora do mdulo para temporizao da amostragem em tempo
real. O valor de registro de data e hora que corresponde ltima atualizao do sinal de
entrada. Este valor usado para calcular o DeltaT. Se invlido, a instruo energiza o bit
apropriado em Status, desabilita a execuo do algoritmo de controle e desabilita a
verificao do RTSMissed.
vlido =1 a 32.767 ms (varia de 32767 a 0)
1 pulso = 1 milissegundo
valor inicial = 0
Publicao 1756-RM003C-PT-P - Novembro 2000
B-8 Atributos de Bloco de Funo
Parmetros de sada
Parmetro de Sada: Tipo de Dados: Descrio:
DeltaT REAL Tempo transcorrido entre atualizaes. Este o tempo transcorrido em segundos usado pelo
algoritmo de controle para calcular a sada de processo.
Peridico: DeltaT = taxa de varredura da tarefa se a tarefa for Periodic, DeltaT = tempo
transcorrido desde a execuo da instruo anterior se a tarefa for Continuous
Amostragem Configurada: DeltaT = OversampleDT
Amostragem em Tempo Real: DeltaT = (RTSTimeStamp
n
- RTSTimeStamp
n-1
)
Status: DINT Status do bloco de funo.
TimingModeInv
(Status.27)
BOOL Valor Invalid TimingMode.
RTSMissed (Status.28) BOOL Usado somente no modo de amostragem em tempo real. Ajustado quando o ABS | DeltaT -
RTSTime | > 1 (,001 segundo).
RTSTimeInv
(Status.29)
BOOL Valor Invalid RTSTime.
RTSTimeStampInv
(Status.30)
BOOL Valor Invalid RTSTimeStamp.
DeltaTInv (Status.31) BOOL Valor Invalid DeltaT.
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos de Bloco de Funo B-9
Caractersticas dos modos de temporizao
O diagrama a seguir mostra como uma instruo determina o modo
apropriado de temporizao.
TimingMode = 2 TimingMode = 1 TimingMode = 0
Determina o modo baseado
no tempo
Temporizao em tempo real
Temporizao na
amostragem configurada
Temporizao peridica
Determine o tipo de tarefa
Tarefa peridica Tarefa no peridica
DeltaT = OversampleDT
Se DeltaT < 0 ou DeltaT > 4194,303 segs.
a instruo ajusta DeltaT = 0,0 e
energiza o bit apropriado em Status.
Se DeltaT > 0, a instruo executa.
DeltaT = RTSTimeStamp
n
- RTSTimeStamp
n-1
Se DeltaT > 0, a instruo executa.
Se |RTSTIME - DeltaT| > 1, a instruo energiza o bit
RTSMissed em Status.
DeltaT = tempo de varredura da tarefa
Se DeltaT > 0, a instruo executa.
DeltaT = tempo transcorrido desde a
ltima execuo
Se DeltaT > 0, a instruo executa.
Publicao 1756-RM003C-PT-P - Novembro 2000
B-10 Atributos de Bloco de Funo
Controle de Programa/pelo
Operador
Diversas instrues suportam o conceito de controle de
Programa/pelo Operador. Estas instrues incluem:
Enhanced Select (ESEL)
Totalizer (TOT)
Enhanced PID (PIDE)
Ramp/Soak (RMPS)
Discrete 2-State Device (D2SD)
Discrete 3-State Device (D3SD)
O controle de programa/pelo operador permite que se controle estas
instrues simultaneamente tanto a partir do programa do usurio
como do dispositivo de interface de operao. Quando estiver em
controle de Programa, a instruo controlada pelas entradas de
Programa para a instruo; quando estiver em controle pelo
Operador, a instruo controlada pelas entradas do Operador para
a instruo.
O controle de Program ou pelo Operador determinado atravs do
uso destas entradas:
Para determinar se uma instruo est no controle de Programa ou
pelo Operador, examine a sada ProgOper. Se ProgOper estiver
energizado, a instruo est no controle de Programa; se ProgOper
estiver desenergizado, a instruo est no controle pelo Operaor.
O controle pelo Operador precede o controle de Programa se ambos
os bits de solicitaes forem energizados. Por exemplo, se ambos
ProgProgReq e ProgOperReq estiverem energizados, a instruo vai
para o controle pelo Operador.
Entrada: Descrio:
.ProgProgReq Um programa solicita para ir ao controle de
Programa.
.ProgOperReq Um programa solicita para ir ao controle pelo
Operador.
.OperProgReq Um operador solicita para ir ao controle de
Programa.
.OperOperReq Um operador solicita para ir ao controle pelo
Operador.
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos de Bloco de Funo B-11
As entradas de solicitao de Program precedem as entradas de
solicitao do Operador. Isto possibilita que as entradas ProgProgReq
e ProgOperReq travem uma instruo em um controle desejado. Por
exemplo, supondo que uma instruo Totalizer ir sempre ser usada
no controle pelo Operador e o programa do usurio nunca controlar
a operao ou desligamento de Totalizer. Neste caso, seria possvel
ligar um valor literal de 1 em ProgOperReq. Isto preveniria o
operador de colocar o Totalizer no controle de Programa atravs do
ajuste de OperProgReq a partir do dispositivo da interface de
operao.
Uma vez que a entrada ProgOperReq
sempre est energizada, nada
acontece ao apertar o boto
Program na tela de operao (que
energiza a entrada OperProgReg).
Normalmente, o ajuste de
OperProgReq coloca TOT no controle
Ligar um 1 em ProgOperReq significa
que o programa do usurio deseja que
TOT esteja no controle pelo Operador.
Publicao 1756-RM003C-PT-P - Novembro 2000
B-12 Atributos de Bloco de Funo
Da mesma maneira, o ajuste constante do ProgProgReq pode "travar"
a instruo no controle de Programa. Isto til para sequncias de
startup automtico quando se deseja que o programa controle a ao
da instruo sem se preocupar se um operador est assumindo o
controle inadvertidamente da instruo. Neste exemplo, o programa
est energizando a entrada ProgProgReq durante o startup e depois
desenergizando a entrada ProgProgReq assim que o startup
concludo. Uma vez que a entrada ProgProgReq for desenergizada, a
instruo se mantm no controle de Programa at que receba um
pedido de alterao. Por exemplo, o operador pode energizar a
entrada OperOperReq na tela de operao para assumir o controle da
instruo. O exemplo a seguir mostra como se trava uma instruo no
controle de Programa.
As entradas de pedido do operador sempre so desenergizadas pela
instruo quando esta executa. Isto permite que as interfaces de
operao trabalhem com estas instrues pela simples energizao do
bit de solicitao no modo desejado. No preciso programar a
interface de operao para resetar os bits solicitados. Por exemplo, se
uma interface de operao energiza a entrada OperAutoReq para uma
instruo PIDE, quando a instruo PIDE executa, ela determina qual
seria a resposta apropriada e desenergiza o OperAutoReq.
Quando StartupSequenceActive
energizada, a instruo PIDE
colocada no controle de
Programa e no modo Manual. O
valor StartupCV usado como
uma sada de malha.
Publicao 1756-RM003C-PT-P - Novembro 2000
Atributos de Bloco de Funo B-13
As entradas de solicitao do programa so normalmente
desenergizadas pela instruo pois estas so normalmente conectadas
como entradas na instruo. Se a instruo desenergiza estas entradas,
a entrada seria apenas energizada novamente pela entrada conectada.
Pode haver situaes onde se deseja usar outra lgica para ajustar as
solicitaes de Programa de maneira que estas sejam desenergizadas
pela instruo. Neste caso, pode-se energizar a entrada
ProgValueReset e a instruo sempre desenergizar as entradas de
solicitao do modo de Programa ao execut-la..
Neste exemplo, uma linha de lgica de diagrama ladder em outra
rotina usada para reter em monoestvel um ProgAutoReq para uma
instruo PIDE quando um boto pressionado. Como a instruo
PIDE desenergiza automaticamente as solicitaes do modo de
Programa, no preciso escrever qualquer lgica de diagrama ladder
para desenergizar o ProgAutoReq aps a execuo da rotina e a
instruo PIDE ir receber somente uma solicitao para passar para
Auto toda vez que o boto for apertado.
Quando o Boto TIC101AutoReq for pressionado, monoestvel retm ProgAutoReq para a instruo PIDE
TIC101. O TIC101 foi configurado com o ajuste da entrada ProgValueReset, ento quando a instruo PIDE
executa, esta desenergiza automaticamente ProgAutoReq.
Publicao 1756-RM003C-PT-P - Novembro 2000
B-14 Atributos de Bloco de Funo
Notas:
Publicao 1756-RM003C-PT-P - Noverbro 2000
ndice
A
adio 5-6
AHL 16-11
ajuste 12-27
alarmes 12-28
anexar leitura ASCII 16-21
arco co-seno 13-14
arco seno 13-11
arco tangente 13-16
arquivamento aritmtico e lgico 7-7
atributos
converso de tipos de dados A-1
valores imediatos A-1
atributos comuns A-1
converso de tipos de dados A-1
valores imediatos A-1
B
base log de 10 14-4
bitwise AND 6-17
bitwise exclusive OR 6-25
bitwise NOT 6-29
bitwise OR 6-21
break 11-5
C
clculo 5-2
caracteres ASCII no buffer 16-7
carga do sequenciador 9-12
carga FIFO 8-10
carga LIFO 8-22
classificao 7-43
cdigos de erro
ASCII 16-4
instruo MSG 3-8
combinao de tipos de dados A-1
comparao 4-2
comparao de bit de arquivo 12-2
comparao e busca de arquivo 7-19
condies de overflow B-5
configurao 3-14
instruo MSG 3-14
instruo PID 12-26
contagem crescente 2-23
contagem crescente/decrescente 2-31
contagem decrescente 2-27
controle de programa/pelo operador
caractersticas gerais B-10
converso de tipos de dados A-1
converso para BCD 15-8
converso para inteiro 15-12
cpia 7-30
co-seno 13-5
D
dados retentivos B-1
dados transicionais 12-18
definio do valor do sistema 3-30
desabilitao da interrupo pelo usurio 10-15
descarga FIFO 8-16
descarga LIFO 8-28
desenergizar sada com reteno 1-7
deslocamento de bit para a direita 8-6
deslocamento de bit para a esquerda 8-2
desvio padro 7-47
deteco de diagnstico 12-10
diferente de 4-32
distribuio do campo do bit 6-10
distribuio do campo do bit com target 6-13
diviso 5-15
diviso do mdulo 5-19
E
energizar sada 1-5
energizar sada com reteno 1-6
entrada do sequenciador 9-2
escala 12-29
escrita ASCII 16-24
estrutura CONTROL 7-7, 7-19, 7-39, 7-43, 7-47, 8-2,
8-6, 8-10, 8-16, 8-22, 8-28, 9-2, 9-7, 9-12,
12-3, 12-11
estrutura da MENSAGEM 3-2
estrutura do CONTADOR 2-23, 2-27
estrutura FBD_BIT_FIELD_DISTRIBUTE 6-13
estrutura FBD_COMPARE 4-7, 4-10, 4-13, 4-16, 4-19,
4-32
estrutura FBD_CONVERT 6-29, 15-8, 15-12
estrutura FBD_COUNTER 2-31
estrutura FBD_LIMIT 4-23
estrutura FBD_LOGICAL 6-17, 6-21, 6-25
estrutura FBD_MASK_EQUAL 4-28
estrutura FBD_MASKED_MOVE 6-7
estrutura FBD_MATH 5-7, 5-10, 5-13, 5-16, 5-20,
14-7
Publicao 1756-RM003C-PT-P - Noverbro 2000
2 ndice
estrutura FBD_MATH_ADVANCED 5-23, 5-26, 5-29,
13-2, 13-5, 13-8, 13-11, 13-14, 13-17, 14-2,
14-5, 15-2, 15-5
estrutura FBD_TIMER 2-14, 2-17, 2-20
estrutura FBD_TRUNCATE 15-15
estrutura SERIAL_PORT_CONTROL 16-2, 16-5, 16-7,
16-11, 16-14, 16-17, 16-21, 16-24
estrutura TEMPORIZADOR 2-2, 2-6, 2-10
estruturas
CONTADOR 2-23, 2-27
CONTROL 7-7, 7-19, 7-39, 7-43, 7-47, 8-2, 8-6,
8-10, 8-16, 8-22, 8-28, 9-2, 9-7, 9-12,
12-3, 12-11
FBD_BIT_FIELD_DISTRIBUTE 6-13
FBD_COMPARE 4-7, 4-10, 4-13, 4-16, 4-19, 4-32
FBD_CONVERT 6-29, 15-8, 15-12
FBD_COUNTER 2-31
FBD_LIMIT 4-23
FBD_LOGICAL 6-17, 6-21, 6-25
FBD_MASK_EQUAL 4-28
FBD_MASKED_MOVE 6-7
FBD_MATH 5-7, 5-10, 5-13, 5-16, 5-20, 14-7
FBD_MATH_ADVANCED 5-23, 5-26, 5-29, 13-2,
13-5, 13-8, 13-11, 13-14, 13-17, 14-2,
14-5, 15-2, 15-5
FBD_TIMER 2-14, 2-17, 2-20
FBD_TRUNCATE 15-15
instruo RES 2-35
MSG 3-2
PID 12-22
SERIAL_PORT_CONTROL 16-2, 16-5, 16-7, 16-11,
16-14, 16-17, 16-21, 16-24
TEMPORIZADOR 2-2, 2-6, 2-10
examinar se energizado 1-3
exponencial 14-7
expresses
formato 4-5, 5-4, 7-18, 7-28
operadores vlidos 4-5, 5-4, 7-17, 7-28
seqncia de operao 4-6, 5-5, 7-18, 7-29
F
feedforward 12-38
fim temporrio 10-11
flags de status aritmtico
overflow B-5
G
grau 15-2
I
igual a 4-6
instruo 16-11
instruo ABL 16-5
instruo ABS 5-29
instruo ACB 16-7
instruo ACL 16-9
instruo ACS 13-14
instruo ADD 5-6
instruo AFI 10-17
instruo AND 6-17
instruo ARD 16-14
instruo ARL 16-17
instruo ASN 13-11
instruo ATN 13-16
instruo AVE 7-39
instruo AWA 16-21
instruo AWT 16-24
instruo BRK 11-5
instruo BSL 8-2
instruo BSR 8-6
instruo BTD 6-10
instruo BTDT 6-13
instruo CLR 6-16
instruo CMP 4-2
instruo COP 7-30
instruo COS 13-5
instruo CPT 5-2
instruo CTD 2-27
instruo CTU 2-23
instruo CTUD 2-31
instruo DDT
modo de busca 12-12
operandos 12-10
instruo de converso
TOD 15-8
instruo DEG 15-2
instruo DIV 5-15
instruo DTR 12-18
instruo EQU 4-6
instruo FAL
modo de operao 7-1
operandos 7-7
instruo FBC
modo de busca 12-4
operandos 12-2
instruo FFL 8-10
instruo FFU 8-16
instruo FLL 7-35
Publicao 1756-RM003C-PT-P - Noverbro 2000
ndice 3
instruo FRD 15-12
instruo FSC
modo de operao 7-1
operandos 7-19
instruo GEQ 4-10
instruo GRT 4-13
instruo GSV
objetos 3-32
operandos 3-30
instruo JMP 10-2
instruo JSR 10-4
instruo LBL 10-2
instruo LEQ 4-16
instruo LES 4-19
instruo LFL 8-22
instruo LFU 8-28
instruo LIM 4-22
instruo LN 14-2
instruo LOG 14-4
instruo MCR 10-13
instruo MEQ 4-27
instruo MOD 5-19
instruo MOV 6-2
instruo MSG 3-14
cdigos de erro 3-8
conexo de cache 3-29
estrutura 3-2
mtodo de comunicao 3-28
operandos 3-2
instruo MUL 5-12
instruo MVM 6-4
instruo MVMT 6-7
instruo NEG 5-26
instruo NEQ 4-32
instruo NOP 10-18
instruo NOT 6-29
instruo ONS 1-8
instruo OR 6-21
instruo OSF 1-13
instruo OSFI 1-17
instruo OSR 1-10
instruo OSRI 1-15
instruo OTE 1-5
instruo OTL 1-6
instruo OTU 1-7
instruo PID
ajuste 12-27
alarmes 12-28
configurao 12-26
converso de escala 12-29
estrutura 12-22
feedforward 12-38
polarizao da sada (bias) 12-38
zona morta 12-37
instruo RAD 15-5
instruo RES 2-35
instruo RET 10-4, 11-6
instruo RTO 2-10
instruo RTOR 2-20
instruo SBR 10-4
instruo sempre falsa 10-17
instruo SIN 13-2
instruo SQI 9-2
instruo SQL 9-12
instruo SQO 9-7
instruo SQR 5-23
instruo SRT 7-43
instruo SSV
objetos 3-32
operandos 3-30
instruo SUB 5-9
instruo TAN 13-8
instruo TND 10-11
instruo TOD 15-8
instruo TOF 2-6
instruo TOFR 2-17
instruo TON 2-2
instruo TONR 2-14
instruo TRN 15-15
instruo UID 10-15
instruo XIO 1-3
instruo XOR 6-25
instruo XPY 14-7
instruces
ASCII 16-1
instrues
binrias 1-1
clculo 5-1
comparao 4-1
contador 2-1
controle de programa 10-1
converso 15-1
converso matemtica 15-1
deslocamento 8-1
entrada/sada 3-1
especiais 12-1
for/break 11-1
lgica 6-1
Publicao 1756-RM003C-PT-P - Noverbro 2000
4 ndice
matemticas avanadas 14-1
matriz
movimentao 6-1
porta serial 16-1
seqenciador 9-1
temporizador 2-1
trigonomtrica 13-1
instrues ASCII
ABL 16-5
ACB 16-7
ACL 16-9
AHL 16-11
ARD 16-14
ARL 16-17
AWA 16-21
AWT 16-24
introduo 16-1
instrues binrias
introduo 1-1
ONS 1-8
OSF 1-13
OSFI 1-17
OSR 1-10
OSRI 1-15
OTE 1-5
OTL 1-6
OTU 1-7
XIO 1-3
instrues de arquivo. Consulte instrues de matriz
instrues de clculo
ABS 5-29
ADD 5-6
CPT 5-2
DIV 5-15
formato da expresso 5-4, 7-18
introduo 5-1
MOD 5-19
MUL 5-12
NEG 5-26
operadores vlidos 5-4, 7-17
seqncia de operao 5-5, 7-18
SQR 5-23
SUB 5-9
instrues de comparao
CMP 4-2
EQU 4-6
formato da expresso 7-28
formato de expresso 4-5
GEQ 4-10
GRT 4-13
introduo 4-1
LEQ 4-16
LES 4-19
LIM 4-22
MEQ 4-27
NEQ 4-32
operadores vlidos 4-5, 7-28
seqncia de operao 4-6, 7-29
instrues de controle de programa
introduo 10-1
instrues de controle do programa
AFI 10-17
JMP 10-2
JSR 10-4
LBL 10-2
MCR 10-13
NOP 10-18
RET 10-4
SBR 10-4
TND 10-11
UID 10-15
instrues de converso
DEG 15-2
FRD 15-12
introduo 15-1
RAD 15-5
TRN 15-15
instrues de converso matemtica
DEG 15-2
FRD 15-12
introduo 15-1
RAD 15-5
TOD 15-8
TRN 15-15
instrues de deslocamento
BSL 8-2
BSR 8-6
FFL 8-10
FFU 8-16
introduo 8-1
LFL 8-22
LFU 8-28
instrues de entrada/sada
GSV 3-30
introduo 3-1
MSG 3-2
SSV 3-30
instrues de lgica
Publicao 1756-RM003C-PT-P - Noverbro 2000
ndice 5
introduo 6-1
instrues de matemtica avanada
LOG 14-4
XPY 14-7
instrues de matriz
arquivo/diversos. 7-1
AVE 7-39
BSL 8-2
BSR 8-6
COP 7-30
DDT 12-10
deslocamento 8-1
FBC 12-2
FFL 8-10
FFU 8-16
FLL 7-35
FSC 7-19
LFL 8-22
LFU 8-28
modo de operao 7-1
seqenciador 9-1
SQI 9-2
SQL 9-12
SQO 9-7
SRT 7-43
STD 7-47
instrues de matriza
FAL 7-7
instrues de movimentao
BTD 6-10
BTDT 6-13
CLR 6-16
introduo 6-1
MOV 6-2
MVM 6-4
MVMT 6-7
instrues de porta serial
ABL 16-5
ACB 16-7
ACL 16-9
AHL 16-11
ARD 16-14
ARL 16-17
AWA 16-21
AWT 16-24
introduo 16-1
instrues de seqenciador
introduo 9-1
instrues de srie
RES 2-35
instrues de temporizador
TOF 2-6
TOFR 2-17
instrues do contador
CTD 2-27
CTU 2-23
CTUD 2-31
introduo 2-1
RES 2-35
instrues do sequenciador
SQI 9-2
SQL 9-12
SQO 9-7
instrues do temporizador
introduo 2-1
RES 2-35
RTO 2-10
RTOR 2-20
TON 2-2
TONR 2-14
instrues especiais
DDT 12-10
DTR 12-18
FBC 12-2
introduo 12-1
PID 12-21
instrues FOR 11-2
instrues for/break
BRK 11-5
FOR 11-2
introduo 11-1
RET 11-6
instrues lgicas
AND 6-17
NOT 6-29
OR 6-21
XOR 6-25
instrues matemticas avanadas
introduo 14-1
LN 14-2
instrues PID
operandos 12-21
instrues STD 7-47
instrues trigonomtricas
ACS 13-14
ASN 13-11
ATN 13-16
COS 13-5
Publicao 1756-RM003C-PT-P - Noverbro 2000
6 ndice
introduo 13-1
SIN 13-2
TAN 13-8
L
label 10-2
leitura ASCII 16-14
limite 4-22
linha de leitura ASCII 16-17
linhas ASCII handshake 16-11
log
base 10 14-4
natural 14-2
log natural 14-2
M
maior ou igual a 4-10
maior que 4-13
mascarado igual a 4-27
mscaras 12-19
mdia 7-39
menor ou igual a 4-16
menor que 4-19
mensagem 3-2
modo All (todos) 7-2
modo de busca 12-4, 12-12
modo de operao 7-1
modo Incremental (Incremento) 7-5
modo Numerical (numrico) 7-3
modos de temporizao B-5
monoestvel 1-8
monoestvel borda de descida com entrada 1-17
monoestvel com borda de descida 1-13
monoestvel com borda de subida 1-10
monoestvel com borda de subida com entrada 1-15
movimentao 6-2
movimentao mascarada 6-4
movimentao mascarada com target 6-7
multiplicao 5-12
N
negao 5-26
O
objeto AXIS 3-33
objeto CONTROLLER 3-42
objeto CONTROLLERDEVICE 3-42
objeto CST 3-44
objeto DF1 3-45
objeto FAULTLOG 3-48
objeto MESSAGE 3-48
objeto MODULE 3-51
objeto MOTIONGROUP 3-52
objeto PROGRAM 3-53
objeto ROUTINE 3-54
objeto SERIALPORT 3-54
objeto TASK 3-56
objeto WALLCLOCKTIME 3-57
objetos
AXIS 3-33
CONTROLLER 3-42
CONTROLLERDEVICE 3-42
CST 3-44
DF1 3-45
FAULTLOG 3-48
instruo GSV/SSV 3-32
MESSAGE 3-48
MODULE 3-51
MOTIONGROUP 3-52
PROGRAM 3-53
ROUTINE 3-54
SERIALPORT 3-54
TASK 3-56
WALLCLOCKTIME 3-57
obteno do valor do sistema 3-30
operadores 4-5, 5-4, 7-17, 7-28
ordem de execuo B-2
P
polarizao da sada (bias) 12-38
preenchimento de arquivo 7-35
proporcional, integral e derivativo 12-21
R
radianos 15-5
raiz quadrada 5-23
rearme do controle mestre 10-13
remoo de buffer e da fila ASCII 16-9
reset 2-35
retorno 10-4, 11-6
S
sada do sequenciador 9-7
salto 10-2
salto para sub-rotina 10-4
Publicao 1756-RM003C-PT-P - Noverbro 2000
ndice 7
sem operao 10-18
seno 13-2
seqncia de operao 4-6, 5-5, 7-18, 7-29
sub-rotina 10-4
subtrao 5-9
T
tangente 13-8
temporizador de desenergizao 2-6
temporizador de desenergizao com reset 2-17
temporizador de energizao 2-2
temporizador de energizao com reset 2-14
temporizador retentivo energizado com reset 2-20
temporizador retentivo ligado 2-10
teste ASCII para linha buffer 16-5
truncagem 15-15
V
valor absoluto 5-29
valores imediatos A-1
X
X elevado potncia de Y 14-7
Z
zeramento 6-16
zona morta 12-37

Você também pode gostar