Sunteți pe pagina 1din 536

Controladores Logix5000

1756-L1, -L1Mx

Manual de Referncia Geral do Conjunto de Instrues

-2

Informaes Importantes ao Usurio

Por causa da diversidade de usos de produtos descritos nesta publicao, os responsveis pela aplicao e usos deste equipamento de controle devem certificar-se de que todas as etapas necessrias foram seguidas para garantir que cada aplicao e uso cumpram todos os requisitos de desempenho e segurana, incluindo todas as leis, regulamentaes, cdigos e padres aplicveis. As ilustraes, grficos, exemplos de programas e de layout mostrados neste manual so apenas para fins ilustrativos. Visto que h diversas variveis e requisitos associados a qualquer instalao em especial, a Rockwell Automation no assume a responsabilidade (incluindo responsabilidade por propriedade intelectual) pelo uso baseado nos exemplos mostrados nesta publicao. A publicao Allen-Bradley SGI-1.1, Diretrizes de Segurana para Aplicao, Instalao e Manuteno dos Dispositivos de Controle do Estado Slido (disponvel no escritrio local da Rockwell Automation), descreve algumas diferenas importantes entre os equipamentos eletrnicos e dispositivos eletromecnicos, que devem ser levadas em considerao ao utilizar produtos como os descritos nesta publicao. proibida a reproduo, parcial ou total, deste manual sem a permisso por escrito da Rockwell Automation. Ao longo deste manual, usamos notas para chamar a sua ateno para consideraes de segurana:: Identifica informaes sobre prticas ou circunstncias que podem causar ferimentos ou morte, danos patrimoniais ou perda financeira.

ATENO

!
IMPORTANTE

As instrues de ateno ajudam voc a :

identificar e evitar um perigo reconhecer as conseqncias


Identifica informaes crticas para a aplicao e compreenso bem-sucedidas do produto.

Allen-Bradley, ControlLogix, DH+, Logix5000, Logix5550, CLP-2, CLP-3, CLP-5, RSLinx, RSLogix 5000, RSNetWorx e SLC so marcas da Rockwell Automation. ControlNet uma marca da ControlNet International, Ltd. Ethernet uma marca da Digital Equipment Corporation, Intel e Xerox Corporation.

Publicao 1756-RM003D-PT-P - Junho 2001

Resumo das Alteraes

Introduo Informaes Atualizadas

A verso desse documento contm informaes novas e atualizadas.

Este documento contm as seguintes alteraes::


Estas instrues: Obteno do Valor do Sistema (GSV) e Definio do Valor do Sistema (SSV) Acesso ao objeto MESSAGE Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ) Tamanho em Elementos (SIZE) Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU) Salto para Sub-rotina (JSR) Sub-rotina (SBR) Retorno (RET) For (FOR) Consulte: 3-28 3-47 4-1 7-53 8-1 10-4 11-2

Publicao 1756-RM003D-PT-P - Junho 2001

Resumo das Alteraes

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

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.
A instruo est documentada em: este manual Manual de Referncia do Conjunto de Instrues dos Inversores e Controle de Processo dos Controladores Logix5000, publicao 1756-RM006 Logix5000 Controllers Motion Instruction Set Reference Manual, publicao 1756-RM007

Se o localizador listar: um nmero de pgina controle de processo

posicionamento

Instruo: ABL ABS ACB ACL ACS adio AFI AHL ALM AND ARD ARL ASN ATN AVE AWA AWT BAND BNOT

Local: 16-7 5-29 16-10 16-12 13-14 5-6 10-20 16-14 controle de processo 6-17 16-17 16-20 13-11 13-16 7-41 16-24 16-28 controle de processo controle de processo

Linguagens: lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo bloco de funo

Instruo: BOR BRK BSL BSR BTD BTDT BTR (tipo MSG) BTW (tipo MSG) BXOR CLR CMP CONCAT COP COS CPS CPT CTD CTU CTUD D2SD D3SD

Local: controle de processo 11-5 8-2 8-6 6-10 6-13 3-2 3-2 controle de processo 6-16 4-2 17-3 7-32 13-5 7-32 5-2 2-27 2-23 2-31 controle de processo controle de processo

Linguagens: bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo bloco de funo bloco de funo

Publicao 1756-RM003D-PT-P - Junho 2001

Localizador de Instruo

Instruo: DDT DEDT DEG DELETE DERV DFF DIV DTOS DTR EQU ESEL FAL FBC FFL FFU FGEN FIND FLL FOR FRD FSC GEQ GRT GSV HLL HPF

Local: 12-10 controle de processo 15-2 17-5 controle de processo controle de processo 5-15 18-7 12-18 4-7 controle de processo 7-7 12-2 8-10 8-16 controle de processo 17-7 7-37 11-2 15-12 7-20 4-11 4-15 3-28 controle de processo controle de processo

Linguagens: lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo bloco de funo

Instruo: INSERT INTG JKFF JMP JSR LBL LDL2 LDLG LEQ LES LFL LFU LIM LN LOG LPF MAAT MAFR MAG MAH MAHD MAJ MAM MAPC MAR MAS MASD MASR

Local: 17-9 controle de processo controle de processo 10-2 10-4 10-2 controle de processo controle de processo 4-19 4-23 8-22 8-28 4-27 14-2 14-4 controle de processo posicionamento posicionamento posicionamento posicionamento posicionamento posicionamento posicionamento posicionamento posicionamento posicionamento posicionamento posicionamento

Linguagens: lgica ladder bloco de funo bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder

Publicao 1756-RM003D-PT-P - Junho 2001

Localizador de Instruo

Instruo: MATC MAVE MAW MAXC MCCP MCD MCR MDF MDO MDR MDW MEQ MGPS MGS MGSD MGSP MGSR MID MINC MOD MOV MRAT MRHD MRP MSF MSG MSO MSTD MUL

Local: posicionamento controle de processo posicionamento controle de processo posicionamento posicionamento 10-15 posicionamento posicionamento posicionamento posicionamento 4-33 posicionamento posicionamento posicionamento posicionamento posicionamento 17-11 controle de processo 5-19 6-2 posicionamento posicionamento posicionamento posicionamento 3-2 posicionamento controle de processo 5-12

Linguagens: lgica ladder bloco de funo

Instruo: MUX MVM

Local: controle de processo 6-4 6-7 5-26 4-38 10-21 6-29 controle de processo 1-8 6-21 1-13 1-17 1-10 1-15 1-5 1-6 1-7 controle de processo 12-21 controle de processo controle de processo controle de processo 15-5 2-35 controle de processo 10-4 e 11-7

Linguagens: bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder bloco de funo bloco de funo lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo bloco de funo bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder

lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo

MVMT NEG NEQ NOP NOT NTCH ONS OR OSF OSFI OSR OSRI OTE OTL OTU PI PID PIDE PMUL POSP RAD RES RESD RET

Publicao 1756-RM003D-PT-P - Junho 2001

Localizador de Instruo

Instruo: RLIM RMPS RTO RTOR RTOS SBR SCL SCRV SEL SETD SIN SIZE SNEG SOC SQI SQL SQO SQR SRT SRTP SSUM SSV STD STOD STOR SUB

Local: controle de processo controle de processo 2-10 2-20 18-9 10-4 controle de processo controle de processo controle de processo controle de processo 13-2 7-53 controle de processo controle de processo 9-2 9-12 9-7 5-23 7-45 controle de processo controle de processo 3-28 7-49 18-3 18-5 5-9

Linguagens: bloco de funo bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder bloco de funo bloco de funo

Instruo: TAN TND TOD TOF TOFR TON TONR TOT TRN

Local: 13-8 10-13 15-8 2-6 2-17 2-2 2-14 controle de processo 15-15 10-18 10-18 controle de processo 1-1 1-3 6-25 14-7

Linguagens: lgica ladder bloco de funo lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo bloco de funo lgica ladder bloco de funo lgica ladder lgica ladder bloco de funo lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo

bloco de funo UID bloco de funo lgica ladder bloco de funo lgica ladder bloco de funo bloco de funo XPY lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo lgica ladder bloco de funo bloco de funo lgica ladder lgica ladder lgica ladder lgica ladder lgica ladder bloco de funo UIE UPDN XIC XIO XOR

Publicao 1756-RM003D-PT-P - Junho 2001

Prefcio

Introduo
Tarefa/Meta:

Este manual um dos diversos documentos de instruo baseado em Logix.


Documentos:

Programao do controlador para aplicaes Manual de Referncia Geral do Conjunto de Instrues dos Controladores Logix5000, sequenciais publicao 1756-RM003
Voc est aqui

Programao do controlador para aplicaes Manual de Referncia do Conjunto de Instrues dos Inversores e Controle de de processo ou inversores Processo , publicao 1756-RM006 Programao do controlador para aplicaes Logix5000 Controllers Motion Instruction Set Reference Manual, de posicionamento publicao 1756-RM007 Importao de um arquivo de texto ou tags em um projeto 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 Manual de Referncia de Exportao/Importao do Controlador Logix5000, publicao 1756-6.8.4PT

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Prefcio

Objetivo do Manual
Essa seo: Nome da instruo Operandos de Lgica Ladder

Este manual fornece uma descrio de cada instruo neste formato.


Fornece este tipo de informao: identifica a instruo define se a instruo de entrada ou de sada 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 Descrio

lista os valores e os bits de status de controle da instruo, se houver descreve o uso da instruo define quaisquer diferenas quando a instruo estiver habilitada e desabilitada, se apropriado define se a instruo interfere ou no nos flags de status aritmtico consulte o apndice Atributos Comuns define se a instruo gera falhas graves ou de advertncia se necessrio, define o cdigo e o tipo da falha 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 Se disponvel na Lgica Ladder, fornece pelo menos um exemplo de programao inclui uma descrio explicando cada exemplo 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 Se disponvel no bloco de funo, fornece pelo menos um exemplo de programao inclui uma descrio explicando cada exemplo

Flags de Status Aritmtico: Condies de Falha: Execuo de Lgica Ladder

Exemplo de Lgica Ladder Execuo do bloco de funo

Exemplo do bloco de funo

Os cones a seguir ajudam a identificar as informaes especficas da linguagem:


Este cone: Indica esta linguagem de programao: Lgica Ladder

bloco de funo

Publicao 1756-RM003D-PT-P - Junho 2001

Prefcio

Informaes Comuns para Todas as Instrues

O conjunto de instrues do Logix5000 possui alguns atributos comuns:


Para obter esta informao: atributos comuns Consulte este apndice apndice Atributos Comuns define: flags de status aritmtico: tipos de dados palavras-chaves apndice Atributos de Bloco de Funo define: controle do programa e operador modos de temporizao

atributos do bloco de funo

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):
Este termo: energizar Significa: o bit est energizado em 1 (ON) um valor est energizado em um nmero diferente de zero o bit est desenergizado em 0 (OFF) todos os bits em um valor so desenergizados em 0

desenergizar

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.

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.

instruo de entrada

instruo de sada

condio da entrada da linha

condio da sada da linha

Publicao 1756-RM003D-PT-P - Junho 2001

Prefcio

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.

Estados do bloco de funo


O controlador avalia as instrues do bloco de funo baseado no estado de diferentes condies.
Condio Possvel: pr-varredura Descrio: 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. 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. 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.

primeira varredura da instruo primeira operao da instruo

Publicao 1756-RM003D-PT-P - Junho 2001

Prefcio

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.

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-RM003D-PT-P - Junho 2001

Prefcio

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Sumrio
Resumo das Alteraes Localizador de Instruo Prefcio
Informaes Importantes ao Usurio . . . . . . . . Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . Informaes Atualizadas . . . . . . . . . . . . . . . . . Onde Encontrar uma Instruo . . . . . . . . . . . . Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . Quem Deve Utilizar este Manual . . . . . . . . . . . Objetivo do Manual . . . . . . . . . . . . . . . . . . . . Informaes Comuns para Todas as Instrues. Convenes e Termos Relacionados . . . . . . . . Energizar e desenergizar (zerar) . . . . . . . . . Condio de linha de Lgica Ladder . . . . . . Estados do bloco de funo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . 2 1 1 1 1 1 2 3 3 3 4 5

Captulo 1 Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Examinar Se Desenergizado (XIC) . . . . . . . . . . . . . . . . . Examinar Se Energizado (XIO) . . . . . . . . . . . . . . . . . . . Energizar Sada (OTE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Energizar Sada com Reteno (OTL) . . . . . . . . . . . . . . . Desenergizar Sada com Reteno (OTU) . . . . . . . . . . . . Monoestvel (ONS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monoestvel com Borda de Subida (OSR) . . . . . . . . . . . Monoestvel com Borda de Descida (OSF). . . . . . . . . . . Monoestvel com Borda de Subida com Entrada (OSRI) . Monoestvel com Borda de Descida com Entrada (OSFI) . . 1-1 . . 1-1 . . 1-3 . . . . . . . . . . . . . . . . 1-5 1-6 1-7 1-8 1-10 1-13 1-15 1-17

Captulo 2 Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Temporizador de Energizao (TON). . . . . . . . . . . . . . Temporizador de Desenergizao (TOF) . . . . . . . . . . . Temporizador Retentivo Ligado (RTO) . . . . . . . . . . . . . Temporizador de Energizao com Reset (TONR) . . . . Temporizador de Desenergizao com Reset (TOFR) . . Temporizador Retentivo Energizado com Reset (RTOR) Contagem Crescente (CTU) . . . . . . . . . . . . . . . . . . . . . Contagem Decrescente (CTD) . . . . . . . . . . . . . . . . . . . Contagem Crescente/Decrescente (CTUD) . . . . . . . . . . Reset (RES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 2-2 2-6 2-10 2-14 2-17 2-20 2-23 2-27 2-31 2-35

Captulo 3 Instrues de Entrada/Sada (MSG, GSV, SSV)


Introduo . . . . . . . . . . . . . . . . . . . . . . . . Mensagem (MSG) . . . . . . . . . . . . . . . . . . . Cdigos de Erro MSG . . . . . . . . . . . . . . . . Cdigos de erro do ControlLogix (CIP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 3-2 3-7 3-7

Publicao 1756-RM003D-PT-P - Junho 2001

ii

Sumrio

Cdigos de erros estendidos do ControlLogix . . . . . . Cdigos de erro do CLP e SLC (.ERR) . . . . . . . . . . . . Cdigos de erro estendiddos do CLP e SLC (.EXERR) Cdigos de erro de Block-Transfer . . . . . . . . . . . . . . Cdigos de erro do Logix5550 . . . . . . . . . . . . . . . . . Cdigos de erros estendidos do Logix5550 . . . . . . . . Especificao dos Detalhes de Configurao (Guia Configuration) . . . . . . . . . . . . . . . . . . . . . . . . . . . Especificao de Mensagens CIP. . . . . . . . . . . . . . . . Uso de mensagens CIP genricas para resetar os mdulos de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . Especificao das mensagens do CLP-5. . . . . . . . . . . Especificao de Mensagens do SLC . . . . . . . . . . . . . Especificao das mensagens de block-transfer . . . . . Especificao das mensagens do CLP-3. . . . . . . . . . . Especificao das mensagens do CLP-2. . . . . . . . . . . Exemplos de Configurao MSG . . . . . . . . . . . . . . . . . . Especificaes dos Detalhes de Comunicao (Guia Communication) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Especificao de um percurso de conexo . . . . . . . . Especificao de um mtodo de comunicao: . . . . . Seleo de uma opo de cache: . . . . . . . . . . . . . . . Obteno do Valor do Sistema (GSV) e Definio do Valor do Sistema (SSV) . . . . . . . . . . . . . . . . . . . . . . . Objetos GSV/SSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Acesso ao objeto AXIS (Eixo) . . . . . . . . . . . . . . . . . . Acesso ao objeto CONTROLLER . . . . . . . . . . . . . . . Acesso ao objeto CONTROLLERDEVICE . . . . . . . . . . Acesso ao objeto CST. . . . . . . . . . . . . . . . . . . . . . . . Acesso ao objeto DF1 . . . . . . . . . . . . . . . . . . . . . . . Acesso ao objeto FAULTLOG . . . . . . . . . . . . . . . . . . Acesso ao objeto MESSAGE . . . . . . . . . . . . . . . . . . . Acesso ao objeto MODULE . . . . . . . . . . . . . . . . . . . Acesso ao objeto MOTIONGROUP . . . . . . . . . . . . . Acesso ao objeto PROGRAM . . . . . . . . . . . . . . . . . . Acesso ao objeto ROUTINE . . . . . . . . . . . . . . . . . . . Acesso ao objeto SERIALPORT . . . . . . . . . . . . . . . . . Acesso ao objeto TASK . . . . . . . . . . . . . . . . . . . . . . Acesso ao objeto WALLCLOCKTIME . . . . . . . . . . . . . Exemplo de Programao GSV/SSV . . . . . . . . . . . . . . . . Obteno de informaes de falha . . . . . . . . . . . . . . Configurao de flags de habilitao e desabilitao .

. . . . . .

. . . . . .

3-8 3-9 3-10 3-11 3-12 3-12

. . 3-13 . . 3-14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 3-16 3-17 3-18 3-19 3-20 3-21 3-22 3-22 3-26 3-27 3-28 3-30 3-31 3-39 3-39 3-41 3-42 3-45 3-46 3-48 3-49 3-50 3-51 3-52 3-54 3-55 3-56 3-56 3-57

Captulo 4 Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Introduo . . . . . . . . . . . . . . . Comparao (CMP) . . . . . . . . . Expresses CMP . . . . . . . . Operadores vlidos . . . . . . Formatao de expresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 4-2 4-4 4-4 4-6

Publicao 1756-RM003D-PT-P - Junho 2001

Sumrio

iii

Determinao da seqncia de operao . . Igual a (EQU) . . . . . . . . . . . . . . . . . . . . . . . . . Maior ou Igual a (GEQ). . . . . . . . . . . . . . . . . . Maior que (GRT). . . . . . . . . . . . . . . . . . . . . . . Menor ou Igual a (LEQ) . . . . . . . . . . . . . . . . . Menor Que (LES) . . . . . . . . . . . . . . . . . . . . . . Limite (LIM) . . . . . . . . . . . . . . . . . . . . . . . . . . Mscara Igual a (MEQ) . . . . . . . . . . . . . . . . . . Insero de um valor de mscara imediato . Diferente de (NEQ) . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

4-6 4-7 4-11 4-15 4-19 4-23 4-27 4-33 4-34 4-38

Captulo 5 Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)
Introduo . . . . . . . . . . . . . . . Clculo (CPT) . . . . . . . . . . . . . Operadores vlidos . . . . . . Formatao de expresses . Determinao da seqncia Adio (ADD) . . . . . . . . . . . . . Subtrao (SUB) . . . . . . . . . . . Multiplicao (MUL) . . . . . . . . Diviso (DIV) . . . . . . . . . . . . . Mdulo (MOD) . . . . . . . . . . . . Raiz Quadrada (SQR) . . . . . . . Negao (NEG). . . . . . . . . . . . Valor Absoluto (ABS) . . . . . . . .......... .......... .......... .......... de operao .......... .......... .......... .......... .......... .......... .......... .......... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 5-2 5-4 5-4 5-5 5-6 5-9 5-12 5-15 5-19 5-23 5-26 5-29

Captulo 6 Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Movimentao (MOV) . . . . . . . . . . . . . . . . . . . . . . Movimentao Mascarada (MVM). . . . . . . . . . . . . . Insero de um valor de mscara imediato . . . . Movimentao Mascarada com Target (MVMT). . . . Distribuio do Campo do Bit (BTD) . . . . . . . . . . . Distribuio do Campo do Bit com Target (BTDT) . Zeramento (CLR). . . . . . . . . . . . . . . . . . . . . . . . . . Bitwise AND (AND) . . . . . . . . . . . . . . . . . . . . . . . Bitwise OR (OR) . . . . . . . . . . . . . . . . . . . . . . . . . . Bitwise Exclusive OR (XOR) . . . . . . . . . . . . . . . . . Bitwise NOT (NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 6-2 6-4 6-5 6-7 6-10 6-13 6-16 6-17 6-21 6-25 6-29

Captulo 7 Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Introduo . . . . . . . . . . . . . . . . . . . . . . Seleo do Modo de Operao . . . . . . . Modo All (Todos) . . . . . . . . . . . . . . Modo Numerical (numrico) . . . . . . Modo Incremental (incremento) . . . Arquivamento Aritmtico e Lgico (FAL) Expresses FAL . . . . . . . . . . . . . . . . Operadores vlidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 7-2 7-2 7-3 7-5 7-7 7-18 7-18

Publicao 1756-RM003D-PT-P - Junho 2001

iv

Sumrio

Expresses de formatao . . . . . . . . . . . . . . . . . . . . . . Determinao da seqncia de operao . . . . . . . . . . . Comparao e Busca de Arquivo (FSC) . . . . . . . . . . . . . . . Expresses FSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Operadores vlidos . . . . . . . . . . . . . . . . . . . . . . . . . . . Formatao das expresses . . . . . . . . . . . . . . . . . . . . . Determinao da seqncia de operao . . . . . . . . . . . Cpia de Arquivo (COP) Cpia Sncrona de Arquivo (CPS). Preenchimento de Arquivo (FLL) . . . . . . . . . . . . . . . . . . . . Mdia de Arquivo (AVE) . . . . . . . . . . . . . . . . . . . . . . . . . . Classificao de Arquivo (SRT) . . . . . . . . . . . . . . . . . . . . . Desvio Padro do Arquivo (STD) . . . . . . . . . . . . . . . . . . . Tamanho em Elementos (SIZE) . . . . . . . . . . . . . . . . . . . . .

7-19 7-19 7-20 7-29 7-30 7-30 7-31 7-32 7-37 7-41 7-45 7-49 7-53

Captulo 8 Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . Deslocamento de Bit para a Esquerda (BSL). Deslocamento de Bit para a Direita (BSR) . . Carga FIFO (FFL) . . . . . . . . . . . . . . . . . . . . Descarga FIFO (FFU) . . . . . . . . . . . . . . . . . Carga LIFO (LFL). . . . . . . . . . . . . . . . . . . . . Descarga LIFO (LFU). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1 8-2 8-6 8-10 8-16 8-22 8-28

Captulo 9 Instrues de Seqenciador (SQI, SQO, SQL)


Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . Entrada do Sequenciador (SQI) . . . . . . . . . . . . Insero de um valor de mscara imediato . Utilizao de SQI sem SQO . . . . . . . . . . . . Sada do Sequenciador (SQO) . . . . . . . . . . . . . Insero de um valor de mscara imediato . Utilizao de SQI com SQO . . . . . . . . . . . . Reset da posio de SQO . . . . . . . . . . . . . . Carga do Sequenciador (SQL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1 9-2 9-3 9-6 9-7 9-8 9-11 9-11 9-12

Captulo 10 Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)
Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Salto para Label (JMP) Label (LBL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Salto para Sub-rotina (JSR) Sub-rotina (SBR) Retorno (RET). . . . . . . . . . . . . . . . . . . . . . . . . . . Fim Temporrio (TND) . . . . . . . . . . . . . . . . . . . . Rearme do Controle Mestre (MCR). . . . . . . . . . . . Desabilitao da Interrupo pelo Usurio (UID) Habilitao da Interrupo pelo Usurio (UIE) . . . Instruo Sempre Falsa (AFI) . . . . . . . . . . . . . . . . Sem Operao (NOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 . . . . . . . 10-2

. . . . . . . 10-4 . . . . . . 10-13 . . . . . . 10-15 . . . . . . 10-18 . . . . . . 10-20 . . . . . . 10-21

Publicao 1756-RM003D-PT-P - Junho 2001

Sumrio

Captulo 11 Instrues For/Break (FOR, BRK, RET)


Introduo . . . For (FOR) . . . . Break (BRK) . . Retorno (RET). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1 11-2 11-5 11-7

Captulo 12 Instrues Especiais (FBC, DDT, DTR, PID)


Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comparao de Bit de Arquivo (FBC) . . . . . . . . . . . Seleo do modo de busca. . . . . . . . . . . . . . . . . Deteco de Diagnstico (DDT) . . . . . . . . . . . . . . . Seleo do modo de busca. . . . . . . . . . . . . . . . . Dados Transicionais (DTR) . . . . . . . . . . . . . . . . . . . Insero de uma valor de mscara imediato . . . . Proporcional, Integral e Derivativo (PID) . . . . . . . . . Configurao de uma Instruo PID. . . . . . . . . . . . . Especificao do ajuste . . . . . . . . . . . . . . . . . . . Especificao da configurao . . . . . . . . . . . . . . Especificao de alarmes . . . . . . . . . . . . . . . . . . Especificao de converso de escala . . . . . . . . . Utilizao das Instrues PID. . . . . . . . . . . . . . . . . . Windup anti-reset e transferncia ininterrupta de manual para automtico . . . . . . . . . . . . . . . . . . . Temporizao da instruo PID . . . . . . . . . . . . . Reinicializao ininterrupta. . . . . . . . . . . . . . . . . Polarizao derivativa . . . . . . . . . . . . . . . . . . . . Configurao da zona morta. . . . . . . . . . . . . . . . Uso da limitao de sada. . . . . . . . . . . . . . . . . . Feedforward ou polarizao da sada (bias) . . . . Malhas em cascata . . . . . . . . . . . . . . . . . . . . . . . Controle de um ndice . . . . . . . . . . . . . . . . . . . . Teoria PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . processo PID . . . . . . . . . . . . . . . . . . . . . . . . . . . processo PID com malhas mestre/escravo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 . 12-2 . 12-4 12-10 12-12 12-18 12-19 12-21 12-26 12-27 12-27 12-28 12-29 12-29 12-31 12-32 12-35 12-36 12-37 12-37 12-38 12-38 12-38 12-40 12-40 12-40

Captulo 13 Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)


Introduo . . . . . . . . Seno (SIN) . . . . . . . . Co-seno (COS) . . . . . Tangente (TAN) . . . . Arco Seno (ASN) . . . . Arco Co-seno (ACS) . Arco Tangente (ATN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1 . 13-2 . 13-5 . 13-8 13-11 13-14 13-16

Captulo 14 Instrues Matemticas Avanadas (LN, LOG, XPY)


Introduo . . . . . . . . . . Log Natural (LN) . . . . . . Base Log de 10 (LOG). . X Elevado Potncia de ....... ....... ....... Y (XPY) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1 14-2 14-4 14-7

Publicao 1756-RM003D-PT-P - Junho 2001

vi

Sumrio

Captulo 15 Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)


Introduo . . . . . . . . . . . . . . Graus (DEG). . . . . . . . . . . . . Radianos (RAD) . . . . . . . . . . Converso para BCD (TOD) . Converso para Inteiro (FRD) Truncagem (TRN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-1 . 15-2 . 15-5 . 15-8 15-12 15-15

Captulo 16 Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Introduo . . . . . . . . . . . . . . . . . . . . . . . Execuo da Instruo . . . . . . . . . . . . Cdigos de Erro ASCII . . . . . . . . . . . . Tipos de String . . . . . . . . . . . . . . . . . Teste ASCII Para Linha do Buffer (ABL) . . Caracteres ASCII no Buffer (ACB) . . . . . . Remoo de Buffer e da Fila ASCII (ACL). Linhas ASCII Handshake (AHL) . . . . . . . . Leitura ASCII (ARD) . . . . . . . . . . . . . . . . Linha de Leitura ASCII (ARL) . . . . . . . . . . Anexar Leitura ASCII (AWA) . . . . . . . . . . Escrita ASCII (AWT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1 . 16-2 . 16-5 . 16-6 . 16-7 16-10 16-12 16-14 16-17 16-20 16-24 16-28

Captulo 17 Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)


Introduo . . . . . . . . . . . . . . . . . . Tipos de String . . . . . . . . . . . . Concatenao de String (CONCAT) Remoo de String (DELETE) . . . . Encontro de String (FIND) . . . . . . . Insero de String (INSERT). . . . . . Meio do String (MID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1 . 17-2 . 17-3 . 17-5 . 17-7 . 17-9 17-11

Captulo 18 Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)


Introduo . . . . . . . . . . . Tipos de String . . . . . String Para DINT (STOD) String Para REAL (STOR) . DINT Para String (DTOS) REAL Para String (RTOS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-1 18-2 18-3 18-5 18-7 18-9

Apndice A Atributos Comuns


Introduo . . . . . . . . . . . . . . Valores Imediatos . . . . . . . . . Converses de Dados . . . . . . SINT ou INT para DINT . . Inteiro para REAL. . . . . . . DINT para SINT para INT. REAL para um inteiro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1 A-1 A-1 A-3 A-5 A-5 A-6

Publicao 1756-RM003D-PT-P - Junho 2001

Sumrio

vii

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

Index

Publicao 1756-RM003D-PT-P - Junho 2001

viii

Sumrio

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

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.
Se voc quiser: habilitar as sadas quando o bit estiver energizado habilitar as sadas quando o bit for desenergizado energizar o bit energizar um bit (retentivo) desenergizar um bit (retentivo) energizar as sadas para uma varredura cada vez que uma linha se torna verdadeira energizar o bit para uma varredura cada vez que uma linha se torna verdadeira energizar o bit para uma varredura cada vez que uma linha se torna falsa energizar um bit para uma varredura toda vez que o bit de entrada for energizado no bloco de funo energizar um bit para uma varredura toda vez que o bit de entrada for desenergizado no bloco da funo Use esta instruo: XIC XIO OTE OTL OTU ONS OSR OSF OSRI OSFI Consulte pgina: 1-1 1-3 1-5 1-6 1-7 1-8 1-10 1-13 1-15 1-17

Examinar Se Desenergizado (XIC)

Linguagens Disponveis:

Lgica Ladder

A instruo XIC examina os dados binrios para ver se esto energizados.

Operandos de Lgica Ladder:


Operando dados binrios Tipo: BOOL Formato: tag Descrio: bit para ser testado

Operandos de Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

1-2

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

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:
Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

examinar dados binrios

dado binrio = 0

sada da condio da linha energizada quando falsa

dado binrio = 1

sada da condio da linha energizada quando verdadeira fim

Exemplo de Lgica Ladder:


exemplo 1 Se limit_switch_1 estiver energizado, isto habilitar a prxima instruo (a sada da condio da linha verdadeira).

exemplo 2

Se S:V estiver energizado (indica que um overflow ocorreu), isto habilitar a prxima instruo (a sada da condio da linha verdadeira).

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-3

Examinar Se Energizado (XIO)

Linguagens Disponveis:

Lgica Ladder

A instruo XIO examina os dados binrios para ver se foram desenergizados.

Operandos de Lgica Ladder


Operando dados binrios Tipo: BOOL Formato: tag Descrio: bit para ser testado

Operandos de Bloco de Esta instruo no est disponvel no bloco de funo. Funo: Descrio: A instruo XIO examina os dados binrios para ver se foram
desenergizados.

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Execuo da Lgica Ladder :


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

examinar dados binrios

dado binrio = 0

sada da condio da linha energizada quando verdadeira

dado binrio = 1

sada da condio da linha energizada quando falsa fim

Publicao 1756-RM003D-PT-P - Junho 2001

1-4

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

Exemplo da Lgica Ladder :


exemplo 1 Se limit_switch_2 for desenergizado, isto habilitar a prxima instruo (a sada da condio da linha verdadeira).

exemplo 2

Se S:V for desenergizado (indica que nenhum overflow ocorreu), isto habilitar a prxima instruo (a sada da condio da linha verdadeira).

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Energizar Sada (OTE)

Linguagens Disponveis:

Lgica Ladder

A instruo OTE energiza ou desenergiza o dado binrio.

Operandos de Lgica Ladder :


Operando dados binrios Tipo: BOOL Formato: tag Descrio: bit para ser energizado ou desenergizado

Operandos de Bloco de Esta instruo no est disponvel no bloco de funo. 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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-5

Execuo de Lgica Ladder :


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: O dado binrio est desenergizado. A sada da condio da linha definida como falsa. O dado binrio est desenergizado. A sada da condio da linha definida como falsa. O dado binrio est energizado. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder :

Quando habilitada, a instruo OTE energiza (acende) light_1. Quando desabilitada, a instruo OTE desenergiza (apaga) light_1.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Energizar Sada com Reteno (OTL)

Linguagens Disponveis:

Lgica Ladder

A instruo OTL energiza (com reteno) o dado binrio.

Operandos de Lgica Ladder :

Operando dados binrios

Tipo: BOOL

Formato: tag

Descrio: bit para ser energizado

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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


Publicao 1756-RM003D-PT-P - Junho 2001

1-6

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

Execuo de Lgica Ladder :


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: O dado binrio no modificado. A sada da condio da linha definida como falsa. O dado binrio no modificado. A sada da condio da linha definida como falsa. O dado binrio est energizado. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder :

Quando habilitada, a instruo OTL energiza light_2. Este bit permanece energizado at ser desenergizado, geralmente por uma instruo OTU.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Desenergizar Sada com Reteno (OTU)

Linguagens Disponveis:

Lgica Ladder

A instruo OTU desenergiza (com reteno) o dado binrio.

Operandos de Lgica Ladder :


Operando dados binrios Tipo: BOOL Formato: tag Descrio: bit para ser desenergizado

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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


Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-7

Execuo de Lgica Ladder :


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: O dado binrio no modificado. A sada da condio da linha definida como falsa. O dado binrio no modificado. A sada da condio da linha definida como falsa. O dado binrio est desenergizado. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder :

Quando habilitada, a instruo OTU desenergizalight_2.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Monoestvel (ONS)

Linguagens Disponveis:

Lgica Ladder

A instruo ONS habilita ou desabilita o restante da linha, dependendo do status do bit de armazenamento.

Operandos de Lgica Ladder :

Operando bit de armazenam ento

Tipo: BOOL

Formato: tag

Descrio: bit de armazenamento interno armazena a entrada da condio da linha desde a ltima vez que a instruo foi executada

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

1-8

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

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: pr-varredura Ao: O bit de armazenamento est energizado para prevenir um disparo invlido durante a primeira varredura. A sada da condio da linha definida como falsa. O bit de armazenamento desenergizado. A sada da condio da linha definida como falsa.

entrada da condio da linha for falsa entrada da condio da linha for verdadeira

bit de armazenamento =0 examinar o bit de armazenamento

bit de armazenamento est energizado sada da condio da linha energizada quando verdadeira

bit de armazenamento = 1

bit de armazenamento permanece energizado sada da condio da linha energizada quando falsa fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-9

Exemplo de Lgica Geralmente, voc antecede a instruo ONS com uma instruo de Ladder : 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.

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.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Monoestvel com Borda de Subida (OSR)

Linguagens Disponveis:

Lgica Ladder

A instruo OSR energiza ou desenergiza o bit de sada, dependendo do status do bit de armazenamento.

Operandos de Lgica Ladder :


Operando bit de armazenam ento bit de sada Tipo: BOOL Formato: tag Descrio: bit de armazenamento interno armazena a entrada da condio da linha desde a ltima vez que a instruo foi executada bit para ser energizado

BOOL

tag

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como OSRI, Funo: consulte a pgina 1-15. Descrio: Quando habilitada e o bit de armazenamento est desenergizado, a
instruo OSR energiza o bit de sada. Quando habilitada e o bit de

Publicao 1756-RM003D-PT-P - Junho 2001

1-10

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

armazenamento est energizado ou quando desabilitada, a instruo OSR desenergiza o bit de sada

entrada da condio da

bit de armazenamento

bit de sada

a instruo executada

instruo resetada durante a prxima execuo de varredura

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Execuo de Lgica Ladder :


Condio: pr-varredura Ao: 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. 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 falsa

entrada da condio da linha for verdadeira

examinar o bit de armazenamento

bit de armazenamento est bit de armazenamento = 0 energizado bit de sada energizado sada da condio da linha energizada quando verdadeira

bit de armazenamento = 1

bit de armazenamento permanece energizado bit de sada desenergizado sada da condio da linha energizada quando verdadeira fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-11

Exemplo de Lgica Ladder :

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.

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como OSRI, Funo: consulte a pgina 1-15.

Monoestvel com Borda de Descida (OSF)

Linguagens Disponveis:

Lgica Ladder

A instruo OSF energiza ou remove o bit de sada, dependendo do status do bit de armazenamento.

Operandos de Lgica Ladder :


Operando bit de armazenam ento bit de sada Tipo: BOOL Formato: tag Descrio: bit de armazenamento interno armazena a entrada da condio da linha desde a ltima vez que a instruo foi executada bit para ser energizado

BOOL

tag

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como OSFI, Funo: 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

Publicao 1756-RM003D-PT-P - Junho 2001

1-12

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

armazenamento est desenergizado, ou quando habilitada, a instruo OSF remove o bit de sada.

entrada da

bit de

bit de sada

a instruo executada

instruo resetada durante a prxima execuo de varredura

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Ladder :
Condio: pr-varredura Ao: 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 falsa

bit de armazenamento = 0 examinar o bit de armazenamento

bit de armazenamento permanece desenergizado bit de sada desenergizado sada da condio da linha energizada quando falsa

bit de armazenamento = 1

bit de armazenamento desenergizado bit de sada energizado sada da condio da linha energizada quando falsa

fim

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-13

Exemplo de Lgica Ladder :

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.

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como OSFI, Funo: consulte a pgina 1-17.

Monoestvel com Borda de Subida com Entrada (OSRI)

Linguagens Disponveis:

Bloco de Funo

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 Esta instruo est disponvel em lgica ladder como OSR, consulte a Ladder : pgina 1-10. Operandos do Bloco de Funo:
Operando Tipo: Formato: estrutura Descrio: Estrutura OSRI tag de bloco FBD_ONESHOT

Publicao 1756-RM003D-PT-P - Junho 2001

1-14

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial energizado Bit de entrada. Isto equivalente condio de linha para a instruo OSR de lgica ladder . o valor inicial desenergizado

InputBit

BOOL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut OutputBit BOOL BOOL Descrio: A instruo produziu um resultado vlido. Bit de sada

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-15

Descrio: Quando o InputBit energizado e o InputBitn-1 desenergizado, a


instruo OSRI energiza o OutputBit. Quando o InputBitn-1 energizado ou quando o bit de entrada desenergizado, a instruo OSRI desenergiza o OutputBit.

InputBit

InputBitn-1

OutputBit

a instruo executada

instruo resetada durante a prxima execuo de varredura

40048

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Esta instruo est disponvel em lgica ladder como OSR, consulte a Ladder : pgina 1-10. Execuo do Bloco de Funo:
Condio: pr-varredura primeiro a instruo efetua a varredura primeiro a instruo efetua a operao EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. InputBit n-1 energizado. InputBit n-1 energizado. EnableOut desenergizado. Em uma transio de desenergizado para energizado do EnableIn, a instruo energiza o InputBit n-1. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

1-16

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

Exemplo do Bloco de Funo:

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.

Monoestvel com Borda de Descida com Entrada (OSFI)

Linguagens Disponveis:

Bloco de Funo

A instruo OSFI energiza OutputBit para um ciclo de execuo quando o InputBit passa de energizado para desenergizado.

Operandos de Lgica Esta instruo est disponvel na lgica ladder como OSF, consulte a Ladder : pgina 1-13. Operandos do Bloco de Funo:
Operando Tipo: Formato: estrutura Descrio: Estrutura OSFI tag de bloco FBD_ONESHOT

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial energizado Bit de entrada. Isto equivalente condio de linha para a instruo OSF de lgica ladder o valor inicial desenergizado

InputBit

BOOL

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

1-17

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut OutputBit BOOL BOOL Descrio: A instruo produziu um resultado vlido. Bit 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.
InputBit

InputBit n-1

OutputBit

40047

a instruo executada

a instruo resetada durante a prxima execuo de varredura

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Esta instruo est disponvel na lgica ladder como OSF, consulte a Ladder : pgina 1-13. Execuo do Bloco de Funo:
Condio: pr-varredura primeiro a instruo efetua a varredura primeiro a instruo efetua a operao EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. InputBit n-1 desenergizado. InputBit n-1 desenergizado. EnableOut desenergizado. Em uma transio de desenergizado para energizado do EnableIn, a instruo desenergiza o InputBit t n-1. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

1-18

Instrues Binrias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)

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-RM003D-PT-P - Junho 2001

Captulo

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.


Se voc quiser: cronometrar em quanto tempo o temporizador habilitado cronometrar em quanto tempo um temporizador desabilitado acumular tempo determinar por quanto tempo o temporizador habilitado com um reset incorporado ao bloco de funo determinar por quanto tempo um temporizador desabilitado com um reset incorporado ao bloco de funo acumular tempo com o reset incorporado ao bloco de funo realizar uma contagem crescente realizar um contagem decrescente realizar uma contagem crescente e decrescente no bloco de funo resetar um temporizador ou contador Use esta instruo: TON TOF RTO TONR Consulte pgina: 2-2 2-6 2-10 2-14

TOFR

2-17

RTOR CTU CTD CTUD RES

2-20 2-23 2-27 2-31 2-35

A base de tempo para todos os temporizadores 1 ms.

Publicao 1756-RM003D-PT-P - Junho 2001

2-2

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Temporizador de Energizao (TON)

Linguagens Disponveis:

Lgica Ladder

A instruo TON um temporizador no retentivo que acumula tempo quando a instruo habilitada (entrada da condio da linha verdadeira).

Operandos de Lgica Ladder :


Operando Temporizado r Preset Accum Tipo: TIMER DINT DINT Formato: tag imediato imediato Descrio: estrutura do temporizador Quanto tempo para retardar (tempo acumulado) totalizar os ms que o temporizador contou valor inicial normalmente 0

Estrutura:
Mnemnico: .EN .TT .DN .PRE .ACC Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo TON est habilitada. O bit de temporizao indica que uma operao de temporizao est em andamento. O bit executado est definido quando .ACC .PRE. O valor pr-selecionado especifica o valor (unidades de 1 ms) que o acumulador deve atingir antes da instruo energizar o bit .DN. O valor acumulado especifica a quantidade de milissegundos que transcorreram desde o momento em que a instruo TON foi habilitada.

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como TONR, Funo: 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.

Publicao 1756-RM003D-PT-P - Junho 2001

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.

entrada da condio da linha bit habilitado do temporizador (.EN) bit de temporizao do temporizador (.TT) bit executado do temporizador (.DN) valor pr-programado valor acumulado do temporizador 0
temporizador no atingiu o valor .PRE em atraso

16649

Flags de Status Aritmtico: no afetados Condies de Falha:


Uma falha grave ocorrer se: Tipo de falha: .PRE < 0 .ACC < 0 4 4 Cdigo de falha: 34 34

Publicao 1756-RM003D-PT-P - Junho 2001

2-4

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Execuo da Lgica Ladder :


Condio: pr-varredura Ao: 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. 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

entrada da condio da linha for verdadeira

examinar bit .DN

bit .DN = 1

bit .DN = 0

examinar bit .EN

bit .EN = 0

bit .EN energizado bit .TT energizado last_time = current_time

bit .EN = 1

bit .TT energizado .ACC = .ACC + (current_time - last_time) last_time = current_time

examinar .ACC

.ACC .PRE

.ACC < .PRE .DN energizado bit .TT desenergizado bit .EN energizado valor .ACC renova no

sim

sada da condio da linha definida como verdadeira

.ACC = 2.147.483.647 fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-5

Exemplo de Lgica Ladder :

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

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como TONR, Funo: consulte a pgina 2-14.

Publicao 1756-RM003D-PT-P - Junho 2001

2-6

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Temporizador de Desenergizao (TOF)

Linguagens Disponveis:

Lgica Ladder

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 :


Operando Temporizador Preset Accum Tipo: TIMER DINT DINT Formato: tag imediato imediato Descrio: estrutura do temporizador Quanto tempo para retardar (tempo acumulado) totalizar os ms que o temporizador contou valor inicial normalmente 0

Estrutura:
Mnemnico: .EN .TT .DN .PRE .ACC Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo TOF est habilitada. O bit de temporizao indica que uma operao de temporizao est em andamento. O bit executado est definido quando .ACC .PRE. O valor pr-determinado especifica o valor (unidades de 1 ms) que o acumulado deve atingir antes da instruo desenergizar o bit .DN. O valor acumulado especifica o nmero de milissegundos que transcorreram desde o momento em que a instruo TOF foi habilitada.

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como TOFR, Funo: 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.

Publicao 1756-RM003D-PT-P - Junho 2001

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.


entrada da condio da linha bit habilitado do temporizador (.EN) bit de temporizao do temporizador (.TT) bit executado do temporizador (.DN) atraso na desenergizao valor pr-programado

valor acumulado do temporizador (.ACC) 0 temporizador no atingiu o valor .PRE


16650

Flags de Status Aritmtico: no afetados Condies de Falha:


Uma falha grave ocorrer se: Tipo de falha: .PRE < 0 .ACC < 0 4 4 Cdigo de falha: 34 34

Publicao 1756-RM003D-PT-P - Junho 2001

2-8

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Execuo de Lgica Ladder :


Condio: pr-varredura Ao: 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 falsa

examinar bit .DN

bit .DN = 0

bit .DN = 1

examinar bit .EN

bit .EN = 1

bit .EN desenergizado. bit .TT energizado last_time = current_time

bit .EN = 0

bit .TT energizado .ACC = .ACC + (current_time - last_time) last_time = current_time

examinar .ACC

.ACC .PRE

.ACC < .PRE

bit .DN desenergizado. bit .TT desenergizado bit .EN desenergizado.

valor .ACC renova

no

sim

sada de condio da linha definida como falsa

.ACC = 2.147.483.647 fim

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-9

Exemplo de Lgica Ladder :

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.

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como TOFR, Funo: consulte a pgina 2-17.

Publicao 1756-RM003D-PT-P - Junho 2001

2-10

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Temporizador Retentivo Ligado (RTO)

Linguagens Disponveis:

Lgica Ladder

A instruo RTO um temporizador retentivo que acumula tempo quando a instruo habilitada.

Operandos de Lgica Ladder :


Operando Temporizador Preset Accum Tipo: TIMER DINT DINT Formato: tag imediato imediato Descrio: estrutura do temporizador Quanto tempo para retardar (tempo acumulado) quantidade de ms que o temporizador contou valor inicial normalmente 0

Estrutura:
Mnemnico: .EN .TT .DN .PRE .ACC Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo RTO est habilitada. O bit de temporizao indica que uma operao de temporizao est em andamento. O bit executado indica que .ACC .PRE. O valor pr-selecionado especifica o valor (unidades de 1 ms) que o acumulado deve atingir antes da instruo energizar o bit .DN. O valor acumulado especifica o nmero de milissegundos que transcorreram desde o momento em que a instruo RTO foi habilitada.

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como RTOR, Funo: 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.

Publicao 1756-RM003D-PT-P - Junho 2001

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.
entrada da condio da linha bit habilitado do temporizador (.EN) condio da linha que controla a instruo RES bit de temporizao do temporizador (.TT)

bit executado do temporizador (.DN)

valor pr-programado valor acumulado do temporizador (.ACC) 0 temporizador no atingiu o valor .PRE
16651

Flags de Status Aritmtico: no afetados Condies de Falha:


Uma falha grave ocorrer se: Tipo de falha: .PRE < 0 .ACC < 0 4 4 Cdigo de falha: 34 34

Publicao 1756-RM003D-PT-P - Junho 2001

2-12

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Execuo Lgica Ladder :


Condio: pr-varredura Ao: 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. 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.

entrada da condio da linha for falsa

entrada da condio da linha for verdadeira

examinar bit .DN

bit .DN = 1

bit .DN = 0

examinar bit .EN

bit .EN = 0

bit .EN est energizado bit .TT est energizado last_time = current_time

bit .EN = 1

bit .TT est energizado .ACC = .ACC + (current_time - last_time) last_time = current_time

examinar .ACC

.ACC .PRE

.ACC < .PRE

.DN energizado bit .TT desenergizado bit .EN est energizado

valor .ACC renova

no

sim

sada da condio da linha definida como verdadeira

.ACC = 2.147.483.647 fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-13

Exemplo de Lgica Ladder :

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).

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como RTOR, Funo: consulte a pgina 2-20.

Publicao 1756-RM003D-PT-P - Junho 2001

2-14

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Temporizador de Energizao com Reset (TONR)

Linguagens Disponveis:

Bloco de Funo

A instruo TONR um temporizador no retentivo que acumula tempo quando TimerEnable energizado.

Operandos de Lgica Esta instruo est disponvel em Lgica Ladder como duas Ladder : instrues separadas: TON (consulte a pgina 2-2) e RES (consulte a
pgina 2-35).

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura TONR tag de bloco FBD_TIMER

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial energizado Se energizada, habilita o temporizador a operar e acumular tempo. o valor inicial desenergizado 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 Solicitao para zerar o temporizador. Quando energizado, o temporizador zera. o valor inicial desenergizado

TimerEnable PRE

BOOL DINT

Reset

BOOL

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-15

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut ACC EN TT DN Status: BOOL BOOL BOOL BOOL BOOL DINT Descrio: A instruo produziu um resultado vlido. Tempo acumulado em milissegundos. Sada habilitada de temporizador. indica que a instruo do temporizador est habilitada. Sada de temporizao do temporizador. Quando energizado, uma operao de temporizao est em progresso. Sada da temporizao concluda. Indica quando o tempo acumulado for maior ou igual ao valor pr-selecionado. Status do bloco de funo. 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. O valor pr-selecionado invlido.

InstructFault (Status.0) BOOL

PresetInv (Status.1)

BOOL

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.

TimerEnable bit habilitado (EN) bit de temporizao do temporizador (TT) bit executado de temporizador (DN) valor pr-programado valor acumulado do temporizador (ACC) 0
o temporizador no alcanou o valor PRE em atraso
16649

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 Execuo de Lgica Esta instruo est disponvel na Lgica Ladder como duas instrues Ladder : separadas: TON (consulte a pgina 2-2) e RES (consulte a pgina
2-35).

Publicao 1756-RM003D-PT-P - Junho 2001

2-16

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. EN, TT e DN so desenergizados. o valor ACC definido em 0. EN, TT e DN so desenergizados. o valor ACC definido em 0. EnableOut desenergizado. 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. Quando o parmetro de entrada Reset energizado, a instruo desenergiza EN, TT e DN e define ACC = zero.

reset

Exemplo do Bloco de Funo:

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-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-17

Temporizador de Desenergizao com Reset (TOFR)

Linguagens Disponveis:

Bloco de Funo

A instruo TOFR um temporizador no retentivo que acumula tempo quando TimerEnable desenergizado.

Operandos de Lgica Esta instruo est disponvel na Lgica Ladder como duas instrues Ladder : separadas: TOF (consulte a pgina 2-6) e RES (consulte a pgina
2-35).

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura TOFR tag de bloco FBD_TIMER

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial energizado Se desenergizado, habilita o temporizador para operar e acumular tempo. o valor inicial desenergizado 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 Solicitao para zerar o temporizador. Quando energizado, o temporizador reseta. o valor inicial desenergizado

TimerEnable PRE

BOOL DINT

Reset

BOOL

Publicao 1756-RM003D-PT-P - Junho 2001

2-18

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut ACC EN TT DN Status: BOOL BOOL BOOL BOOL BOOL DINT Descrio: A instruo produziu um resultado vlido. Tempo acumulado em milissegundos. Sada habilitada pelo temporizador. Indica que a instruo do temporizador est habilitada. Sada de temporizao do temporizador. Quando energizada, uma operao de temporizao est em progresso. Sada concluda de temporizao. Indica quando o tempo acumulado maior ou igual ao pr-selecionado. Status do bloco de funo. 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. O valor pr-selecionado invlido.

InstructFault (Status.0) BOOL

PresetInv (Status.1)

BOOL

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.
TimerEnable bit habilitado (EN) bit de temporizao do temporizador (TT) bit executado do temporizador (DN) atraso na desenergizao valor pr-programado

valor acumulado do temporizador (ACC)

0 o temporizador no atingiu o PRE value

16650

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 Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-19

Execuo da Lgica Esta instruo est disponvel na Lgica Ladder como duas instrues Ladder : separadas: TOF (consulte a pgina 2-6) e RES (consulte a pgina
2-35).

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira varredura da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. EN, TT e DN so desenergizados. o valor ACC energizado para PRE. EN, TT e DN so desenergizados. o valor ACC energizado para PRE. EnableOut desenergizado. 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. 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.

reset

Exemplo do Bloco de Funo:

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-RM003D-PT-P - Junho 2001

2-20

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Temporizador Retentivo Energizado com Reset (RTOR)

Linguagens Disponveis:

Funo

A instruo RTOR um temporizador retentivo que acumula tempo quando o TimerEnable energizado.

Operandos de Lgica Esta instruo est disponvel na Lgica Ladder como duas instrues Ladder : separadas: RTO (consulte a pgina 2-10) e RES (consulte a pgina
2-35).

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura RTOR tag do bloco FBD_TIMER

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial energizado Se energizado, habilita o temporizador para operar e acumular tempo. o valor inicial desenergizado 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 Solicitao para resetar o temporizador. Quando energizado, o temporizador reseta.

TimerEnable PRE

BOOL DINT

Reset

BOOL

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-21

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut ACC EN TT DN Status: BOOL DINT BOOL BOOL BOOL DINT Descrio: A instruo produziu um resultado vlido. Tempo acumulado em milissegundos. Este valor retido at durante a desenergizao da entrada TimerEnable. Isto torna o comportamento deste bloco diferente do bloco TONR. Sada habilitada do temporizador. Indica que a instruo do temporizador habilitada. Sada de temporizao do temporizador. Quando energizada, a operao de temporizao est em progresso. Sada de temporizao concluda. Indica quando o tempo acumulado superior ou igual ao pr-selecionado. Status do bloco de funo. 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. O valor pr-selecionado invlido.

InstructFault (Status.0) BOOL

PresetInv (Status.1)

BOOL

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.
TimerEnable bit habilitado (EN) Reset bit de temporizao do temporizador (TT)

bit executado do temporizador (DN)

valor pr-programado

valor acumulado do temporizador (ACC) 0 o temporizador no alcanou o PRE value

16651

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.

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma


Publicao 1756-RM003D-PT-P - Junho 2001

2-22

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Execuo de Lgica Esta instruo est disponvel na Lgica Ladder como duas instrues Ladder : separadas: RTO (consulte a pgina 2-10) e RES (consulte a pgina
2-35).

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo primeira operao do OLC EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. EN, TT e DN so desenergizados o valor ACC no alterado EN, TT e DN so desenergizados o valor ACC no alterado EN, TT e DN so desenergizados o valor ACC no alterado EnableOut desenergizado. 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. Quando o parmetro de entrada Reset for energizado, a instruo desenergiza EN, TT e DN e define ACC = zero.

reset

Exemplo do Bloco de Funo:

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-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-23

Contagem Crescente (CTU)

Linguagens Disponveis:

Lgica Ladder

A instruo CTU conta em ordem crescente.

Operandos de Lgica Ladder :


Operando Contador Preset Accum Tipo: COUNTER DINT DINT Formato: tag imediato imediato Descrio: estrutura do contador valor mximo de contagem quantidade de vezes que o contador contou valor inicial normalmente 0

Estrutura:
Mnemnico: .CU .DN .OV .UN .PRE .ACC Tipo de Dados: BOOL BOOL BOOL BOOL DINT DINT Descrio: O bit de habilitao do contador crescente indica que a instruo CTU est habilitada. O bit executado indica que .ACC .PRE. 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. 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. O valor pr-programado especifica o valor que o acumulado deve atingir antes da instruo energizar o bit .DN. O valor acumulado especifica o nmero de transies que a instruo contou.

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como CTUD, Funo: consulte a pgina 2-31.

Publicao 1756-RM003D-PT-P - Junho 2001

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>
entrada da condio da linha

bit de contagem crescente (.CU)

bit executado de contagem crescente (.DN)

valor pr-programado

valor acumulado do contador (.ACC)


16636

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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-25

Execuo de Ladder Rel:


Condio: pr-varredura Ao: O bit .CU est energizado para prevenir incrementos invlidos durante a primeira varredura do programa. A sada da condio da linha definida como falsa. O bit .CU desenergizado. A sada da condio da linha definida como falsa.

entrada da condio da linha for falsa entrada da condio da linha for verdadeira

examinar bit .CU

bit .CU = 0

bit .CU est energizado .ACC = .ACC + 1

valor .ACC renova

sim

bit .CU = 1

no

bit .UN desenergizado bit .DN desenergizado. bit . OV desenergizado

bit .UN = 1 examinar bit .UN

bit .UN = 0 bit .UN = 0

examinar bit .UN

examinar bit .OV

bit .OV = 0

bit . OV est energizado bit .UN = 1 bit .OV = 1

examinar .ACC

.ACC .PRE

.ACC < .PRE bit .DN desenergizado. bit .DN est energizado.

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

2-26

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Exemplo de Lgica Ladder :

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.

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como CTUD, Funo: consulte a pgina 2-31.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-27

Contagem Decrescente (CTD)

Linguagens Disponveis:

Lgica Ladder

A instruo CTD conta no sentido decrescente.

Operandos de Lgica Ladder :


Operando Contador Preset Accum Tipo: COUNTER DINT DINT Formato: tag imediato imediato Descrio: estrutura do contador valor mnimo de contagem quantidade de vezes que o contador contou valor inicial normalmente 0

Estrutura:
Mnemnico: .CD .DN .OV .UN .PRE .ACC Tipo de Dados: BOOL BOOL BOOL BOOL DINT DINT Descrio: O bit de habilitao do contador decrescente indica que a instruo CTD est habilitada. O bit executado indica que .ACC .PRE. 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. 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. O valor pr-programado especifica o valor que o acumulado deve atingir antes da instruo energizar o bit .DN. O valor acumulado especifica o nmero de transies que a instruo contou.

Operandos de Bloco de Esta instruo est disponvel no bloco de funo como CTUD, Funo: consulte a pgina 2-31.

Publicao 1756-RM003D-PT-P - Junho 2001

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.
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

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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-29

Execuo da Lgica Ladder :


Condio: pr-varredura Ao: O bit .CD est energizado para prevenir decrementos invlidos durante a primeira varredura do programa. A sada da condio da linha definida como falsa. O bit .CD desenergizado. A sada da condio da linha definida como falsa.

entrada da condio da linha for falsa entrada da condio da linha for verdadeira

examinar bit .CD

bit .CD = 0

bit .CD est energizado .ACC = .ACC - 1

valor .ACC renova

sim

bit .CD = 1

no

bit . OV desenergizado bit .OV = 1 bit .DN desenergizado. bit .UN desenergizado

examinar bit .OV

bit .OV = 0 bit .UN = 0

examinar bit .UN

examinar bit .OV

bit .OV = 0

bit .UN est energizado bit .UN = 1 bit .OV = 1

examinar .ACC

.ACC .PRE

.ACC < .PRE bit .DN desenergizado. bit .DN est energizado.

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

2-30

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Exemplo de Lgica Ladder :

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.

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como CTUD, Funo: consulte a pgina 2-31.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-31

Contagem Crescente/Decrescente (CTUD)

Linguagens Disponveis:

Bloco de Funo

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 Esta instruo est disponvel em Lgica Ladder como instrues Ladder : separadas, CTU (pgina 2-23), CTD (pgina 2-27), e RES (pgina
2-35).

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura CTUD tag do bloco FBD_COUNTER

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial energizado Habilita a contagem crescente. Quando a entrada passa de desenergizada para energizada, o acumulador faz a contagem crescente em um. o valor inicial desenergizado Habilita a contagem decrescente. Quando a entrada passa de desenergizada para energizada, o acumulador faz a contagem decrescente em um. o valor inicial desenergizado 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 Solicita que o temporizador seja zerado. Quando energizado, o contador zera. o valor inicial desenergizado

CUEnable

BOOL

CDEnable

BOOL

PRE

DINT

Reset

BOOL

Publicao 1756-RM003D-PT-P - Junho 2001

2-32

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut ACC CU CD DN OV UN BOOL DINT BOOL BOOL BOOL BOOL BOOL Descrio: A instruo produziu um resultado vlido. Valor acumulado. Contagem crescente habilitada. Contagem decrescente habilitada. Contagem concluda. Energiza quando o valor acumulado for maior ou igual ao pr-selecionado. 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. 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.

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


CUEnable

bit de contagem crescente (CU)

bit executado de contagem crescente (DN)

valor pr-programado

valor acumulado do contador (ACC)


16636

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-33

Efetuando a contagem decrescente

CDEnable bit de contagem decrescente (CD) bit executado de contagem decrescente (DN)

valor acumulado do contador (ACC) valor pr-programado


16637

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 Esta instruo est disponvel na Lgica Ladder como trs instrues Ladder : separadas, CTU (pgina 2-23), CTD (pgina 2-27) e RES (pgina 2-35). Execuo do Bloco de Funo:
Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: No requer inicializao. o CUEnablen-1 e o CDEnablen-1 esto energizados. o CUEnablen-1 e o CDEnablen-1 esto energizados. EnableOut desenergizado. Em uma transio de desenergizado para energizado de EnableIn, a instruo energiza CUEnablen-1 e CDEnablen-1. A instruo executada. EnableOut energizado. Quando energizada, a instruo desenergiza CUEnablen-1, CDEnablen-1, CU, CD, DN, OV e UN e define ACC = zero.

reset

Publicao 1756-RM003D-PT-P - Junho 2001

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-RM003D-PT-P - Junho 2001

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

2-35

Reset (RES)

Linguagens Disponveis:

Lgica Ladder

A instruo RES reseta uma estrutura de TEMPORIZADOR, CONTADOR ou CONTROLE .

Operandos de Lgica Ladder :


Operando estrutura Tipo: TIMER CONTROL COUNTER Formato: tag Descrio: estrutura para reset

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. Funo: Descrio: Quando habilitada, a instruo RES desenergiza esses elementos:
Ao usar a instruo RES para um: TIMER COUNTER CONTROL A instruo desenergiza: valor .ACC bits de status de controle valor .ACC bits de status de controle valor .POS bits de status de controle

ATENO

!
Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

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-RM003D-PT-P - Junho 2001

2-36

Instrues do Temporizador e do Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)

Execuo de Lgica Ladder :


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo RES reseta a estrutura especificada. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder :


Exemplo: Descrio: Quando habilitado, resete o timer_3.

Quando habilitado, resete o counter_1.

Quando habilitado, resete o control_1.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

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: enviar dados de/para outro mdulo obter informaes de status do controlador definir informaes de status do controlador Use esta instruo: MSG GSV SSV Consulte pgina: 3-2 3-28 3-28

Publicao 1756-RM003D-PT-P - Junho 2001

3-2

Instrues de Entrada/Sada (MSG, GSV, SSV)

Mensagem (MSG)

Linguagens Disponveis:

Lgica Ladder a Rel

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 a Rel:


Operando: Controle de mensagem Tipo: MESSAGE Formato: tag Descrio: estrutura da mensagem

Estrutura:
Mnemnico: Tipo de Dados: .FLAGS INT Descrio: O membro .FLAGS fornece acesso aos membros de status (bits) em uma palavra de 16 bits. Este bit: 2 4 5 6 7 8 9 Corresponde a este membro: .EW .ER .DN .ST .EN .TO .EN_CC

Importante: Enquanto uma MSG est habilitada, o reset dos bits de status MSG pode romper a comunicao. .ERR .EXERR .REQ_LEN .DN_LEN .EW .ER .DN .ST INT INT INT INT BOOL BOOL BOOL BOOL Se o bit .ER for energizado, a palavra de cdigo de erro identifica os cdigos de erro para a instruo MSG. A palavra de cdigo de erro estendido especifica as informaes de cdigo de erro adicionais para alguns cdigos de erro. O comprimento requisitado especifica quantas palavras a instruo de mensagem tentar transferir. O comprimento executado identifica quantas palavras realmente foram transferidas. 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. 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. 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. 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-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-3

Mnemnico: Tipo de Dados: .EN BOOL

Descrio: 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. Se voc energizar o bit .TO manualmente, o controlador interrompe o processamento da mensagem e energiza o bit .ER. O bit habilitado do cache determina como controlar a conexo MSG. Consulte "Seleo de uma opo de cache:" na pgina 3-27 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.

.TO .EN_CC

BOOL BOOL

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.

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. 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 .EN

bit .EW conexo com .EN_CC = 0

bit .ST bit .DN ou .ER


41382

Publicao 1756-RM003D-PT-P - Junho 2001

3-4

Instrues de Entrada/Sada (MSG, GSV, SSV)

Onde: 1

Descrio: entrada da condio da linha for verdadeira .EN est energizado .EW est energizado a conexo est aberta* a mensagem enviada .ST est energizado .EW desenergizado 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) 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 a mensagem enviada .ST est energizado .EW desenergizado. 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) a entrada da condio da linha se torna falsa e .DN ou .ER energizado .EN desenergizado

*O bit .EW no energizado se a mensagem no puder ser executada.

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-5

Execuo de Lgica Ladder a Rel:


Condio: entrada da condio da linha for falsa Ao:

bit .EN = 1 examinar bit .EN bit .EN = 0

bit .EW = 1 examinar o bit .EW

bit .EW = 0

bit .ST = 1 examinar o bit .ST

bit .ST = 0

bit .DN = 1 examinar bit .DN

bit .DN = 0

bit .ER = 1 examinar bit .ER

bit .ER = 0

comando de block-transfer

sim caminho vlido do mdulo sim

no

no bit .DN = 1 examinar bit .DN sim

conexo do mdulo em funcionamento

no

bit .DN = 0

bit .EN desenergizado

executar pedido de mensagem

bit .ER = 1 examinar bit .ER bit .EW est energizado bit .ER est energizado

bit .ER = 0

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

3-6

Instrues de Entrada/Sada (MSG, GSV, SSV)

Condio: entrada da condio da linha for verdadeira


bit .EN = 1

Ao:

bit .EN = 0 examinar bit .EN

bit .EW = 1 examinar o bit .EW examinar o bit .EW

bit .EW = 1

bit .EW = 0

bit .EW = 0

bit .ST = 1 examinar o bit .ST examinar o bit .ST

bit .ST = 1

bit .ST = 0

bit .ST = 0

bit .DN = 1 examinar bit .DN

bits .EW, .ST, .TO, .DN e .ER so desenergizados bit .EN est energizado

bit .DN = 0

bit .EN est energizado

bit .ER = 1 examinar bit .ER

bit .ER = 0

comando de block-transfer

sim caminho vlido do mdulo sim

no

no

sim

conexo do mdulo em funcionamento

no

bits .EW, .ST, .TO, .DN e .ER so desenergizados bit .EN est energizado executar pedido de mensagem bit .EW est energizado bit .ER est energizado

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-7

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): 0001 0002 0003 0004 0005 Descrio: Falha de conexo (consulte os cdigos de erro estendidos) Recurso insuficiente Valor invlido Erro de sintaxe IOI (consulte os cdigos de erro estendidos) Destino desconhecido, classe no suportada, instncia indefinida ou elemento de estrutura indefinida (consulte os cdigos de erro estendidos) Espao insuficiente no pacote Perda de conexo Servio no suportado Erro no segmento de dados ou valor de atributo invlido Erro na lista de atributo Estado j existe Conflito no modelo do objeto Objeto j existe Atributo no configurvel Permisso negada Conflito com o estado do dispositivo A resposta no ser adequada Fragmento primitivo Dados de comando insuficientes Atributo no suportado Excesso de dados Pedido de ponte muito grande Resposta da ponte muito grande Falta de lista de atributos Lista de atributos invlidos Erro no servio incorporado Display do software: igual descrio igual descrio igual descrio igual descrio igual descrio

0006 0007 0008 0009 000A 000B 000C 000D 000E 000F 0010 0011 0012 0013 0014 0015 001A 001B 001C 001D 001E

igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio
Publicao 1756-RM003D-PT-P - Junho 2001

3-8

Instrues de Entrada/Sada (MSG, GSV, SSV)

Cdigo de erro (hex): 001F 0022 0025 0026 0027 0028 0029

Descrio: Falha relacionada conexo (consulte os cdigos de erro estendidos) Resposta recebida invlida Erro de segmento principal Erro de IOI invlido Atributo inesperado na lista Erro na DeviceNet Identificao de membro invlido Erro na DeviceNet membro no configurvel

Display do software: igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio igual descrio

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.
Cdigo de erro estendido (hex): 0100 0103 0106 0107 0108 0109 0110 0111 0114 0115 0116 0118 Descrio: Cdigo de erro estendido (hex): 011A 0203 0204 0205 0206 0301 0302 0303 0305 0311 0312 0315 0317 Descrio:

Conexo em uso Transporte no suportado Conflito de Dispositivo de Armazenamento de Configurao Conexo no encontrada Tipo de conexo invlida Tamanho de conexo invlida Mdulo no configurado EPR no suportado Mdulo errado Tipo de dispositivo errado Reviso errada Formato de configurao invlido

Aplicao fora das conexes Perodo de espera da conexo Perodo de espera de mensagem no conectada Erro de parmetro enviado no conectado Mensagem muito grande Sem espao de memria no buffer Largura de faixa no disponvel No h disponibilidade de screeners Correspondncia de assinatura Porta no disponvel Endereo de rede no disponvel Tipo de segmento invlido Conexo no programada

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-9

Estes so os cdigos de erro estendidos para o cdigo de erro 001F.


Cdigo de erro estendido (hex): 0203 Descrio: Perodo de espera da conexo

Estes so os cdigos de erro estendidos para os cdigos de erro 0004 e 0005.


Cdigo de erro estendido (hex): 0000 0001 Descrio: status estendido fora da memria status estendido fora dos exemplos

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 (hex): 0010 0020 0030 0040 0050 0060 0070 0080 0090 00B0 00F0 Descrio: Comando ilegal ou formato do controlador local Mdulo de comunicao no est funcionando N remoto est faltando, desconectado ou desligado Controlador conectado, mas com falha (hardware) Nmero de estao errado Funo requisitada no est disponvel Controlador est no modo de Programa Arquivo de compatibilidade do controlador no existe N remoto no consegue comandar o buffer Controlador est descarregando, portanto no pode ser acessado Erro de PCCC (consulte os cdigos de erro estendidos) Display do software: Conflito com o estado do dispositivo erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido

Publicao 1756-RM003D-PT-P - Junho 2001

3-10

Instrues de Entrada/Sada (MSG, GSV, SSV)

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): 0001 0002 0003 0004 0005 Descrio: Cdigo de erro estendido (hex): 0011 0012 0013 0014 Descrio:

Controlador converteu incorretamente o endereo Endereo incompleto Endereo incorreto Formato ilegal do endereo smbolo no encontrado Formato ilegal do endereo o smbolo tem o valor 0 ou maior do que o nmero mximo de caracteres suportados pelo dispositivo Arquivo de endereo no existe no controlador alvo Arquivo de destino muito pequeno para o nmero de palavras solicitado. No consegue completar o pedido Situao alterada durante operao com vrios pacotes Dados ou arquivo muito grande Memria no disponvel Controlador alvo no consegue colocar as informaes requisitadas em pacotes Erro de privilgio; acesso negado Funo requisitada no est disponvel Pedido redundante Comando no pode ser executado Overflow; overflow do histograma Sem acesso

Tipo de dados requisitados no corresponde aos dados disponveis Parmetros de comando incorretos Referncia de endereo existe para uma rea apagada Falha na execuo do comando por motivo desconhecido Overflow do histograma do CLP-3 Erro na converso dos dados Scanner no est disponvel para comunicao com um adaptador de gaveta 1771 Adaptador no est disponvel para comunicao com o mdulo Resposta do mdulo 1771 no foi vlida Etiqueta duplicada Controlador que armazena a configurao do arquivo ativo o arquivo est sendo usado Controlador que armazena a configurao do programa ativo algum est descarregando dados ou fazendo edio online Arquivo do disco est protegido contra gravao ou no pode ser acessado (somente offline) Arquivo do disco est sendo usado por outra aplicao Atualizao no realizada (somente offline)

0015 0016 0017 0018 0019 001A 001B

0006 0007 0008

0009 000A 000B 000C 000D 000E 000F 0010

001C

001D

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-11

Cdigos de erro de Block-Transfer


Estes so os cdigos de erro especficos para block-transfer no ControlLogix.
Cdigo de erro (hex): 00D0 00D1 00D2 00D3 00D6 00EA 00EB 00EC 00ED 00EE 00EF 00F0 00F3 00F5 00F6 00F7 00F8 00F9 00FA 00FB 00FC 00FD Descrio: O scanner no recebeu uma resposta de block-transfer do mdulo de block-transfer dentro de 3,5 s do pedido O checksum da resposta de leitura no corresponde ao checksum do conjunto de dados O scanner solicitou uma leitura ou escrita, mas o mdulo de block-transfer forneceu uma resposta contrria O scanner solicitou um comprimento e o mdulo de block-transfer respondeu com um comprimento diferente O scanner recebeu uma resposta do mdulo de block-transfer, indicando que o pedido de escrita apresentou falha O scanner no foi configurado para comunicar-se com a gaveta que teria este mdulo de block-transfer A ranhura lgica especfica no est disponvel para o tamanho de gaveta determinado No momento, h um pedido de block-transfer em andamento e uma resposta requerida antes que outro pedido possa ser iniciado O tamanho de pedido de block-transfer no est de acordo com os pedidos de tamanho vlidos para block-transfer O tipo de pedido de block-transfer no est de acordo com o BT_READ ou BT_WRITE previsto O scanner no conseguiu encontrar uma ranhura disponvel na tabela de block-transfer para acomodar o pedido de block-transfer O scanner recebeu um pedido para resetar os canais de E/S remota enquanto havia block-transfers em aberto As filas para block-transfers remotos esto cheias Nenhum canal de comunicao est configurado para a ranhura ou gaveta solicitada Nenhum canal de comunicao est configurado para E/S remota O perodo de espera de block-transfer configurado na instruo encerrou a temporizao antes da concluso Erro no protocolo de block-transfer block-transfer no solicitado Os dados de block-transfer foram perdidos devido a um canal de comunicao em ms condies O mdulo de block-transfer solicitou um comprimento diferente daquele associado instruo de block-transfer O checksum dos dados de leitura do block-transfer estava errado Houve uma transferncia invlida dos dados de escrita de block-transfer entre o adaptador e o mdulo de block-transfer Display do software: erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido

O tamanho do block-transfer mais o tamanho do ndice na tabela de dados de erro desconhecido block-transfer era maior do que o tamanho do arquivo da tabela de dados de block-transfer

Publicao 1756-RM003D-PT-P - Junho 2001

3-12

Instrues de Entrada/Sada (MSG, GSV, SSV)

Cdigos de erro do Logix5550


Estes so os cdigos de erro do Logix5550.
Cdigo de erro (hex): 00D0 00D1 00FB 00FC 00FD 00FE 00FF Descrio: Instncia de mapa indefinido Mdulo no est no estado de operao Porta de mensagem no suportada Tipo de dados no suportados pela mensagem Mensagem no inicializada Perodo de espera de mensagem Erro geral (consulte os cdigos de erro estendidos) Display do software: erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido erro desconhecido

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 estendido (hex): 2001 2002 2018 201B 201C 2100 2101 2102 2103 2104 2105 2106 2107 Descrio: Cdigo de erro estendido (hex): 2108 2109 210A 210B 210E 210F 2110 2111 2112 2113 2114 Descrio:

Excesso de IOI Valor deficiente para o parmetro Sinalizao rejeitada Tamanho muito pequeno Tamanho invlido Falha de privilgio Posio da chave seletora de modo invlida Senha invlida Sem emisso de senha Endereo fora da faixa Endereo e quantidade esto fora da faixa Dados em uso Tipo invlido ou no suportado

Controlador no modo de carga ou descarga Tentativa de alterar o nmero das dimenses da matriz Nome invlido do smbolo Smbolo no existe Busca apresentou falha Tarefa no pode ser iniciada No h condies de escrita (gravao) No h condies de leitura Rotina compartilhada que no pode ser editada Controlador no modo de falha Modo de operao inibido

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-13

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.

Clique aqui para configurar a instruo MSG

Os detalhes de configurao dependem do tipo de mensagem selecionado.

Se o dispositivo alvo for um: Dispositivo ControlLogix ou mdulo de E/S 1756

Selecione um dos seguintes tipos de mensagens: leitura da tabela de dados CIP escrita da tabela de dados CIP CIP genrico leitura de tipo para CLP-5 escrita de tipo para CLP-5 leitura da faixa de palavras do CLP-5 escrita da faixa de palavras do CLP-5

Consulte pgina: 3-14

controlador CLP-5

3-16

controlador SLC Mdulo de block-transfer em uma rede de E/S Remota Universal Controlador CLP-3

leitura de tipo para SLC leitura de tipo para SLC leitura de block-transfer escrita de block-transfer leitura de tipo para CLP-3 escrita de tipo para CLP-3 leitura da faixa de palavra do CLP-3 escrita da faixa de palavra do CLP-3

3-17 3-18 3-19

Controlador CLP-2

leitura sem proteo do CLP-2 escrita sem proteo do CLP-2

3-20

Publicao 1756-RM003D-PT-P - Junho 2001

3-14

Instrues de Entrada/Sada (MSG, GSV, SSV)

Voce deve especificar essa informao de configurao:


No campo: Source Element/Tag Especifique: 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. 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. 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.

Nmero de Elementos

Destination Element/Tag

Se voc especificar um tag na matriz do Logix5550 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 Logix5550 para outro.
Selecione este comando: CIP Data Table Read CIP Data Table Write Generic CIP Se voc quiser: ler os dados a partir de outro controlador. Os tipos Source e Destination devem corresponder. escrever os dados em outro controlador. Os tipos Source e Destination devem corresponder. configurar uma mensagem customizada para enviar os dados de configurao para um mdulo de E/S.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-15

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: Realizar um teste de pulso em um mdulo de sada digital No campo: Service Code (Cdigo de Servio) Object Type (Tipo de Objeto) Object ID (Identificao do Objeto) Object Attribute (Atributo do Objeto) Source Insira: 4c 1e 1 deixe em branco 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 10 deixe em branco 4d 1e deixe em branco 1 tag_name do tipo DINT Este tag representa uma mscara de bit dos pontos para resetar os fusveis para energizado. 4 deixe em branco 4b para um mdulo de entrada para um mdulo de sada deixe em branco 1 tag_name do tipo DINT Esse tag representa uma mscara de bit dos pontos para resetar o diagnstico para energizado. 4 deixe em branco 1d 1e

Resetar os fusveis eletrnicos em um mdulo de sada digital

Nmero de Elementos Destination Service Code (Cdigo de Servio) Object Type (Tipo de Objeto) Object Attribute (Atributo do Objeto) Object ID (Identificao do Objeto) Source

Resete o diagnstico de retentivo em um mdulo de E/S digital

Nmero de Elementos Destination Service Code (Cdigo de Servio) Object Type (Tipo de Objeto)

Object Attribute (Atributo do Objeto) Object ID (Identificao do Objeto) Source

Nmero de Elementos Destination

Publicao 1756-RM003D-PT-P - Junho 2001

3-16

Instrues de Entrada/Sada (MSG, GSV, SSV)

Se voc quiser: Resetar um status retentivo em um mdulo analgico

No campo: Service Code (Cdigo de Servio) Object Type (Tipo de Objeto) Object Attribute (Atributo do Objeto) Object ID (Identificao do Objeto) Source Nmero de Elementos Destination

Insira: 4b a insira o cdigo para o atributo desejado 0 deixe em branco 0 deixe em branco

Especificao das mensagens do CLP-5


Os tipos de mensagem do CLP-5 so determinados para os controladores CLP-5.
Selecione este comando: Leitura do Tipo para CLP-5 Se voc quiser: 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 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). 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). 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.

Escrita de tipo para CLP-5

Leitura da faixa de palavras do CLP-5

Escrita da Faixa de Palavras do 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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-17

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.
Comando de leitura de tipo palavras de 16 bits no controlador CLP-5 1 2 3 4 palavras de 32 bits no controlador Logix5550 1 2 3 4 Comando de leitura da faixa de palavra palavras de 16 bits no controlador CLP-5 1 2 3 4 palavras de 32 bits no controlador Logix5550 2 4 1 3

Os comandos de tipo mantm o valor e a estrutura dos dados.

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.

Especificao de Mensagens do SLC


Os tipos de mensagem do SLC so elaboradas para os controladores SLC e MicroLogix1000.
Selecione este comando: leitura de tipo para SLC leitura de tipo para SLC Se voc quiser: realizar a leitura de dados INT ou DINT. escrever dados do tipo INT ou DINT.

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).

Publicao 1756-RM003D-PT-P - Junho 2001

3-18

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.
Selecione este comando: Leitura de Block-Transfer Escrita de Block-Transfer Se voc quiser: ler dados de um mdulo de block-transfer. Este tipo de mensagem substitui a instruo BTR. escrever dados em um mdulo de block-transfer. Este tipo de mensagem substitui a instruo BTW.

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-19

Especificao das mensagens do CLP-3


Os tipos de mensagem do CLP-3 so determinados para os controladores CLP-3.
Selecione este comando: Leitura de Tipo para CLP-3 Se voc quiser: 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 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. 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). 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.

Escrita de Tipo para CLP-3

Leitura da Faixa de Palavra do CLP-3

Escrita da Faixa de Palavra do CLP-3

Publicao 1756-RM003D-PT-P - Junho 2001

3-20

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.
Comando de leitura de tipo palavras de 16 bits no controlador CLP-3 1 2 3 4 palavras de 32 bits no controlador Logix5550 1 2 3 4 Comando de leitura da faixa de palavra palavras de 16 bits no controlador CLP-3 1 2 3 4 palavras de 32 bits no controlador Logix5550 2 4 1 3

Os comandos de tipo mantm o valor e a estrutura dos dados.

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.

Especificao das mensagens do CLP-2


Os tipos de mensagem do CLP-2 so determinados para os controladores CLP-2.
Selecione este comando: Leitura sem Proteo do CLP-2 Escrita sem Proteo do CLP-2 Se voc quiser: 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. 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.

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).

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-21

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:

Percurso da Mensagem: Logix5550 Logix5550

Exemplo de Fonte e Destino: tag da fonte tag de destino array_1 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 elemento de destino array_1 N7:10

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. Logix5550 CLP-2 tag da fonte elemento de destino array_1 010

Para as instrues MSG geradas em um controlador Logix5550 e lidas em outro controlador:


Percurso da Mensagem: Logix5550 Logix5550 Exemplo de Fonte e Destino: tag da fonte tag de destino array_1 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 tag de destino N7:10 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 tag de destino 010 array_1

Publicao 1756-RM003D-PT-P - Junho 2001

3-22

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 mensagem para um mdulo de block-transfer est em uma rede de E/S Remota Universal. no sim 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.

A mensagem para um controlador CLP-2, 3, 5 ou SLC est em uma rede DH+? no

sim

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-23

Para especificar um percurso: NOTA 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.

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.):
Para a: placa de fundo de qualquer mdulo ou controlador 1756 a porta DF1 de um controlador 1756-L1 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 Especifique: 1 2

b. Especifique o prximo mdulo:


Para um mdulo em uma: placa de fundo do chassi de E/S ControlLogix rede DF1 rede ControlNet rede DH+ rede Ethernet Especifique o: nmero da ranhura endereo da estao (0-254) nmero do n (1-99 decimal) nmero do n (1-77 octal) Pode-se especificar o mdulo na rede Ethernet usando qualquer um dos seguintes formatos: endereo IP endereo IP:Porta nome DNS nome DNS:Porta (ex.: 130.130.130.5) (ex.: 130.130.130.5:24) (ex.: tanks) (ex.: tanks:24)

2. Repita a Etapa 1. at que voc especifique o mdulo ou controlador destino.

Publicao 1756-RM003D-PT-P - Junho 2001

3-24

Instrues de Entrada/Sada (MSG, GSV, SSV)

As pginas a seguir mostram exemplos de percursos de conexo:

em ControlNet, pgina 3-24 em Ethernet, pgina 3-25 para uma mensagem DH+, pgina 3-25
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

chassi local ControlNet n 49 na ranhura 0 rede ControlNet

chassi remoto ControlNet n 42 na ranhura 0


42042

Percurso: 1, 0, 2, 42, 1, 3
Onde: 1 0 2 42 1 3 Indica: a porta da placa de fundo do controlador Logix5550 no chassi local o nmero da ranhura do mdulo 1756-CNB no chassi local a porta da ControlNet do mdulo 1756-CNB na ranhura do chassi local o n da ControlNet do mdulo 1756-CNB na ranhura do chassi remoto a porta da placa de fundo do mdulo 1756-CNB no chassi remoto o nmero da ranhura do controlador no chassi remoto

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-25

EXEMPLO

Especificao de um caminho pela Ethernet

chassi local mdulo Ethernet na ranhura 1 rede Ethernet

chassi remoto mdulo Ethernet na ranhura 2 ende reo IP 127.127.127.12


42043

Percurso: 1, 1, 2, 127.127.127.12, 1, 3
Onde: 1 1 2 127.127.127.12 1 3 Indica: a porta da placa de fundo do controlador Logix5550 no chassi local o nmero da ranhura do mdulo 1756-ENET no chassi local a porta da Ethernet do mdulo 1756-ENET no chassi local o endereo IP do mdulo 1756-ENET no chassi remoto a porta da placa de fundo do mdulo 1756-ENET no chassi remoto o nmero da ranhura do controlador no chassi remoto

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 para uma mensagem DH+

chassi local DH+ = n 37 rede DH+

chassi 1771 com controlador CLP-5 DH+ = n 24


42044

Percurso: 1, 1
Onde: 1 1 Indica: a porta da placa de fundo do controlador Logix5550 no chassi local o nmero da ranhura do mdulo 1756-DHRIO no chassi local

Publicao 1756-RM003D-PT-P - Junho 2001

3-26

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. NOTA 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: controlador ControlLogix controlador ControlNet CLP-5 controlador CLP-5 controlador SLC

Ento selecione: CIP DH+

E especifique: outras especificaes no so necessrias Canal: Rede Fonte: Canal A ou B do mdulo 1756-DHRIO que est conectado rede DH+ 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.) Identificao da rede DH+ remota onde o dispositivo alvo reside Endereo da estao do dispositivo alvo

controlador CLP-3 controlador CLP-2

Rede Destino: N Destino:

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 Rede Fonte: Identificao da rede dos dados (0-65535) fornecidos pela aplicao para RSLinx Identificao de rede virtual configurado no RSLinx (0-65535) Identificao de destino (0-77 octal) fornecida pela aplicao para RSLinx

Rede Destino: (Isto permite que a aplicao receba dados de um controlador.) N Destino:

O nmero da ranhura do controlador Logix5550 usado como N Fonte.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-27

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:
Esse tipo de mensagem: Usando esse mtodo de comunicao: CIP CIP CIP com Identificao de Fonte DH+ CIP genrico leitura ou escrita em block-transfer N/A N/A    Usa uma conexo:  Que voc pode colocar no cache: 

leitura ou escrita da tabela de dados CIP CLP2, CLP3, CLP5 ou SLC (todos os tipos)

Use a tabela a seguir para selecionar uma opo de cache para uma mensagem.
Se a mensagem executar: repetidamente Ento: Selecione a caixa de verificao Cache Connections Retire a seleo da caixa de verificao Cache Connections Porque: 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. Isto fechar a conexo na concluso, que liberar aquela conexo para outros usos.

no frequentemente

Publicao 1756-RM003D-PT-P - Junho 2001

3-28

Instrues de Entrada/Sada (MSG, GSV, SSV)

Obteno do Valor do Sistema (GSV) e Definio do Valor do Sistema (SSV)

Linguagens Disponveis:

Lgica Ladder a Rel

As instrues GSV/SSV obtm e definem os dados do sistema do controlador que esto armazenados nos objetos.

Operandos de Lgica Ladder a Rel:

Operando: Nome da classe Nome da instncia Nome do Atributo Destination (GSV)

Tipo:

Formato: nome nome nome

Descrio: nome do objeto nome do objeto especfico, quando o objeto requisitar um nome atributo do objeto o tipo de dados depende do atributo que voc selecionou destino para os dados de atributo

SINT INT DINT REAL SINT INT DINT REAL

tag

Source (SSV)

tag

tag que contm os dados que voc quer copiar para o atributo

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. 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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-29

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. Use as instrues GSV/SSV cuidadosamente. As alteraes realizadas nos objetos podem causar operao inesperada do controlador ou danos pessoais.

ATENO

!
Flags de Status Aritmtico: no afetados Condies de Falha:

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].

Uma falha de advertncia ocorrer se: endereo de objeto invlido objeto especificado que no suporta GSV/SSV atributo invlido no se forneceu informaes suficientes para uma instruo SSV o destino GSV no era grande o suficiente para suportar os dados requisitados.

Tipo de falha: 4 4 4 4 4

Cdigo de falha: 5 6 6 6 7

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Obtenha ou configure o valor especificado. A sada da condio da linha est definida como verdadeira.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

3-30

Instrues de Entrada/Sada (MSG, GSV, SSV)

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. 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.

ATENO

!
AXIS CONTROLLER CONTROLLERDEVICE CST DF1 FAULTLOG MESSAGE MODULE MOTIONGROUP PROGRAM ROUTINE SERIALPORT TASK WALLCLOCKTIME

possvel acessar estes objetos:


Para informaes sobre este objeto: Consulte pgina: 3-31 3-39 3-39 3-41 3-42 3-45 3-46 3-48 3-49 3-50 3-51 3-52 3-54 3-55

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-31

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: * AccelerationFeedforwardGain *AxisType Tipo de Dados: REAL INT Instruo: GSV SSV GSV SSV Descrio: O valor usado para fornecer a sada de comando de torque para gerar a acelerao do comando. O tipo de eixo que est sendo usado. Valor: Significado: 0 eixo no usado 1 eixo de posicionamento 2 eixo fsico 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 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 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 O nvel de sada fixa usado para compensar a frico esttica.

*DriveFaultAction

SINT

GSV SSV

*EncoderLossFaultAction

SINT

GSV SSV

*EncoderNoiseFaultAction

SINT

GSV SSV

*FrictionCompensation

REAL

GSV SSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-32

Instrues de Entrada/Sada (MSG, GSV, SSV)

Atributo: *MaximumNegativeTravel *MaximumPositiveTravel *OutputFilterBandwidth *OutputLimit *OutputOffset *OutputScaling *PositionErrorFaultAction

Tipo de Dados: REAL REAL REAL REAL REAL REAL SINT

Instruo: GSV SSV GSV SSV GSV SSV GSV SSV GSV SSV GSV SSV GSV SSV

Descrio: O limite de percurso negativo mximo. O limite de percurso positivo mximo. A largura de faixa do filtro de sada digital servo de passa/baixa. O valor da tenso mxima de sada do servo do eixo. O valor usado para compensar os efeitos dos offsets cumulativos da sada DAC do servomdulo e da entrada do servoinversor. O valor usado para converter a sada da malha do servo na tenso equivalente a do inversor. 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 O volume de erro de posio que o servo tolera antes de emitir uma falha de erro de posio. O valor usado para se atingir um preciso posicionamento de eixo, apesar de perturbaes como, por exemplo, gravidade e frico esttica. O valor que o controlador multiplica pelo erro de posio para corrigir o erro de posio. O valor usado para realizar o desenrolamento automtico do eixo de rotao. 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 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 A sada do comando de velocidade necessria para gerar a velocidade comandada. O valor que o controlador multiplica pelo valor VelocityIntegratorError para corrigir o erro de velocidade. O valor que o controlador multiplica pelo valor VelocityError para corrigir o erro de velocidade.

*PositionErrorTolerance *PositionIntegralGain

REAL REAL

GSV SSV GSV SSV GSV SSV GSV SSV GSV SSV

*PositionProportionalGain *PositionUnwind *ServoConfigurationBits

REAL DINT DINT

*SoftOvertravelFaultAction

SINT

GSV SSV

*VelocityFeedforwardGain *VelocityIntegralGain *VelocityProportionalGain

REAL REAL REAL

GSV SSV GSV SSV GSV SSV

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-33

Atributo: ActualPosition ActualVelocity AverageVelocity AverageVelocityTimebase AxisConfigurationState AxisState

Tipo de Dados: REAL REAL REAL REAL SINT SINT

Instruo: GSV GSV GSV GSV SSV GSV GSV

Descrio: A posio real do eixo. A velocidade real do eixo. A velocidade mdia do eixo. A base de tempo da velocidade mdia do eixo. O estado da configurao do eixo. 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 A instncia de conexo do controlador produzindo os dados do eixo. A instncia de mapa do controlador produzindo os dados do eixo. A posio de comando do eixo. A velocidade de comando do eixo. O fator de converso usado para converter as unidades do usurio os pulsos de realimentao. 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). 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. O nmero de exemplo do grupo de movimento que contm o eixo. O modo de posio inicial do eixo. Valor: Significado: 0 posio inicial passiva 1 posio inicial ativa (padro) A posio de incio do eixo. A velocidade de retorno de posio inicial do eixo. 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) A velocidade de posio inicial do eixo. O nmero de instncia do eixo.

C2CConnectionInstance C2CMapTableInstance CommandPosition CommandVelocity ConversionConstant DampingFactor

DINT DINT REAL REAL REAL REAL

GSV GSV GSV GSV GSV SSV GSV SSV GSV

EffectiveInertia

REAL

GroupInstance HomeMode

DINT SINT

GSV GSV SSV

HomePosition HomeReturnSpeed HomeSequenceType

REAL REAL SINT

GSV SSV GSV SSV GSV SSV

HomeSpeed Instance

REAL DINT

GSV SSV GSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-34

Instrues de Entrada/Sada (MSG, GSV, SSV)

Atributo: InterpolatedActualPosition

Tipo de Dados: REAL

Instruo: GSV

Descrio: Para capturas de posio com base no tempo, este atributo fornece a posio do eixo real interpolado. A posio especificada em unidades de posio e baseada no valor do atributo InterpolationTime. Para interpolar uma posio de eixo real, use uma instruo SSV para configurar o atributo InterpolationTime. Para capturas de posio com base no tempo, este atributo fornece a posio do eixo de comando interpolado. A posio especificada em unidades de posio e baseada no valor do atributo InterpolationTime. Para interpolar uma posio de eixo de comando, use uma instruo SSV para configurar o atributo InterpolationTime. Use este atributo para fornecer a referncia para capturas de posio com base no tempo: Para interpolar uma posio, use uma instruo SSV para configurar o atributo InterpolationTime. O controlador, ento, atualiza os seguintes atributos: InterpolatedActualPosition InterpolatedCommandPosition Para fornecer um valor para InterpolationTime, voc pode usar qualquer evento que produza um registro de data e hora CST, como: RegistrationTime attribute Registro de data e hora de uma entrada digital O atributo InterpolationTime usa somente os 32 bits mais baixos de uma registro de data e hora CST. O exemplo de mapa de E/S do servomdulo. Offset da posio que est atualmente aplicada ao mestre de um came de posio. Especificado em unidades de posio do eixo mestre. A acelerao mxima do eixo. A desacelerao mxima do eixo. A velocidade mxima do eixo. O canal do mdulo do servomdulo. 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 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

InterpolatedCommandPosition

REAL

GSV

InterpolationTime

DINT

GSV SSV

MapTableInstance MasterOffset

DINT REAL

GSV GSV

MaximumAcceleration MaximumDeceleration MaximumSpeed ModuleChannel MotionConfigurationBits

REAL REAL REAL SINT DINT

GSV SSV GSV SSV GSV SSV GSV GSV SSV

MotionFaultBits

DINT

GSV

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-35

Atributo: MotionStatusBits

Tipo de Dados: DINT

Instruo: GSV

Descrio: Os bits de status de movimento para o eixo. (Na estrutura AXIS, este o membro MotionStatus.) Bit: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Nome do Bit: AccelStatus DecelStatus MoveStatus JogStatus GearingStatus HomingStatus StoppingStatus AxisHomedStatus PositionCamStatus TimeCamStatus PositionCamPendingStatus TimeCamPendingStatus GearingLockStatus PositionCamLockStatus MasterOffsetMoveStatus Significado: acelerao desacelerao movimento jog engrenagem guiamento orientado desligamento status inicial came de posio came de tempo came de posio pendente came de tempo pendente trava de engrenagem trava do came de posio movimento do offset mestre

MotorEncoderTestIncrement PositionError PositionIntegratorError PositionLockTolerance PositionServoBandwidth

REAL REAL REAL REAL REAL

GSV SSV GSV GSV GSV SSV GSV SSV GSV SSV

A quantidade de movimento necessria para iniciar o teste MRHD Motion Run Hookup Diagnostic. A diferena entre a posio de comando e a real de um eixo. A soma do erro de posio para um eixo. O volume de erro de posio que o servomdulo tolera ao fornecer uma indicao de status travado na posio verdadeira. 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). O tipo de parada a ser realizada no eixo. Valor: Significado: 0 parada rpida 1 desligamento rpido 2 desligamento do hardware A posio de registro para o eixo. Voc pode usar este atributo para fornecer um registro de data e hora para capturas com base no tempo: O atributo RegistrationTime contm os 32 bits mais baixos do registro de data e hora CST de um evento de registro de eixo. O registro de data e hora CST medido em microssegundos. Para interpolar uma posio baseada no evento de registro de um eixo: 1. Use uma instruo GSV para obter o valor do atributo RegistrationTime. 2. Use uma instruo SSV para configurar o atributo InterpolationTime para o valor do atributo RegistrationTime.

ProgrammedStopMode

SINT

RegistrationPosition RegistrationTime

REAL DINT

GSV GSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-36

Instrues de Entrada/Sada (MSG, GSV, SSV)

Atributo: ServoConfigurationUpdateBits

Tipo de Dados: DINT

Instruo: GSV

Descrio: 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 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 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 O nvel de tenso de sada para a malha do servo do eixo.

ServoEventBits

DINT

GSV

ServoFaultBits

DINT

GSV

ServoOutputLevel

REAL

GSV

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-37

Atributo: ServoStatusBits

Tipo de Dados: DINT

Instruo: GSV

Descrio: 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 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 A posio real do eixo quando se inicia um novo movimento comandado para o eixo. A posio de comando do eixo quando se inicia um novo movimento comandado para o eixo. O mestre faz o offset quando a ltima instruo Motion Axis Move (MAM) foi executada em um destes tipos de movimentos: AbsoluteMasterOffset IncrementalMasterOffset Especificado em unidades de posio do eixo mestre. A posio real de um eixo quando a instruo MGSP Motion Group Strobe Position (Posio da Sonda do Grupo de Movimento) executada. A posio de comando de um eixo quando a instruo MGSP Motion Group Strobe Position (Posio da Sonda do Grupo de Movimento) executada. O mestre faz o offset quando a instruo Motion Group Strobe Position (MGSP) executada. Especificado em unidades de posio do eixo mestre. 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) 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 O valor de acelerao medido durante a instruo MRAT Motion Run Axis Tuning (Ajuste do Eixo de Operao de Movimento). O tempo de acelerao medido durante a instruo MRAT Motion Run Axis Tuning (Ajuste do Eixo de Operao de Movimento).

ServoStatusUpdateBits

DINT

GSV

StartActualPosition StartCommandPosition StartMasterOffset

REAL REAL REAL

GSV GSV GSV

StrobeActualPosition

REAL

GSV

StrobeCommandPosition

REAL

GSV

StrobeMasterOffset

REAL

GSV

TestDirectionForward

SINT

GSV

TestStatus

INT

GSV

TuneAcceleration TuneAccelerationTime

REAL REAL

GSV GSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-38

Instrues de Entrada/Sada (MSG, GSV, SSV)

Atributo: TuneDeceleration TuneDecelerationTime TuneRiseTime TuneSpeedScaling

Tipo de Dados: REAL REAL REAL REAL

Instruo: GSV GSV GSV GSV

Descrio: O valor de desacelerao medido durante a instruo MRAT Motion Run Axis Tuning (Ajuste do Eixo de Operao de Movimento). O tempo de desacelerao medido durante a instruo MRAT Motion Run Axis Tuning (Ajuste do Eixo de Operao de Movimento). O tempo de elevao do eixo medido durante a instruo MRAT Motion Run Axis Tuning (Ajuste do Eixo de Operao de Movimento). 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). 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 A largura de faixa do inversor, conforme calculado a partir das medies do controlador realizadas durante a ltima instruo MRAT Motion Run Axis Tuning. 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 A velocidade mxima iniciada pela instruo MRAT Motion Run Axis Tuning (Ajuste do Eixo de Operao de Movimento). O limite de percurso usado pela instruo MRAT Motion Run Axis Tuning para limitar a ao da ao durante o ajuste. A referncia de velocidade atual para a malha de servovelocidade para um eixo. A diferena entre a velocidade real e a comandada de um eixo do servo. A velocidade real do eixo estimada pelo servomdulo. A soma do erro de velocidade para um eixo especificado. A posio de observao do eixo.

TuneStatus

INT

GSV

TuneVelocityBandwidth

REAL

GSV

TuningConfigurationBits

DINT

GSV SSV

TuningSpeed TuningTravelLimit VelocityCommand VelocityError VelocityFeedback VelocityIntegratorError WatchPosition

REAL REAL REAL REAL REAL REAL REAL

GSV SSV GSV SSV GSV GSV GSV GSV GSV

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-39

Acesso ao objeto CONTROLLER


O objeto CONTROLLER fornece as informaes de status sobre a execuo do controlador.
Atributo: TimeSlice Tipo de Dados: INT Instruo: GSV SSV Descrio: 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.

Acesso ao objeto CONTROLLERDEVICE


O objeto CONTROLLERDEVICE identifica o hardware fsico do controlador.
Atributo: DeviceName Tipo de Dados: SINT[33] Instruo: GSV Descrio: String ASCII que identifica o cdigo de catlogo do controlador e placa de memria. O primeiro byte contm uma contagem do nmero de caracteres ASCII que retornaram no string da matriz. Identifica o tipo de controlador Este cdigo de produto: 3 15 41 42 43 50 51 ProductRev INT GSV Identifica este controlador Logix: 5550 5860 5433 5434 5320 5553 5555

ProductCode

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. Nmero serial do dispositivo. O nmero serial atribudo quando o dispositivo construdo.

SerialNumber

DINT

GSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-40

Instrues de Entrada/Sada (MSG, GSV, SSV)

Atributo: Status

Tipo de Dados: INT

Instruo: GSV

Descrio: 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 Fornecedor

INT INT

GSV GSV

Identifica o dispositivo como um controlador. Controlador = 14 Identifica o fornecedor do dispositivo. Allen-Bradley = 0001

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-41

Acesso ao objeto CST


O objeto CST (coordinated system time) fornece um tempo de sistema coordenado para os dispositivos em um chassi.
Atributo: CurrentStatus Tipo de Dados: INT Instruo: GSV Descrio: Status atual do tempo de sistema coordenado. Os bits identificam o status: Bit: 0 1 Significado: falha no hardware do temporizador: o hardware do temporizador interno do dispositivo est em falha 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. mestre do tempo do sistema: o objeto CST uma fonte de tempo mestre no sistema ControlLogix sincronizado: o CurrentValue de 64 bits do objeto sincronizado por um objeto CST mestre atravs de uma atualizao de tempo do sistema. mestre da rede local: o objeto CST a fonte de tempo mestre da rede local modo do rel de entrada: o objeto CST est agindo em um modo de rel de tempo 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. no usado 00 = n que depende do tempo 01 = n do mestre de tempo 10 = n do rel de tempo 11 = no usado no usado

2 3

4 5 6

7 8-9

10-15 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-RM003D-PT-P - Junho 2001

3-42

Instrues de Entrada/Sada (MSG, GSV, SSV)

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: ACKTimeout Tipo de Dados: DINT Instruo: GSV Descrio: 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). Srie de contadores de diagnstico para o driver de comunicao DF1. DF1 escravo assinatura (0x0042) bits do modem pacotes enviados pacotes recebidos pacotes no entregues tentativas de mensagens NAKs recebidos poll de pacotes recebidos pacotes not ACKed defeituosos nenhuma memria not ACKed pacotes duplicados recebidos no usado contagem de recuperaes DCD contagem de modem perdida no usado no usado no usado no usado no usado mestre assinatura (0x0044) bits do modem pacotes enviados pacotes recebidos pacotes no entregues tentativas de mensagens no usado no usado pacotes not ACKed defeituosos no usado pacotes duplicados recebidos no usado contagem de recuperaes DCD contagem de modem perdida prioridade do tempo de varredura mximo ltima prioridade do tempo de varredura tempo de varredura normal mximo ltimo tempo normal de varredura no usado

DiagnosticCounters offset da palavra 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 DuplicateDetection

INT[19]

GSV

DF1 ponto-a-ponto assinatura (0x0043) bits do modem pacotes enviados pacotes recebidos pacotes no entregues no usado NAKs recebidos ENQs recebidos pacotes NAKed defeituosos nenhuma memria enviou um NAK pacotes duplicados recebidos caracteres defeituosos recebidos contagem de recuperaes DCD contagem de modem perdida no usado no usado no usado no usado ENQs enviados SINT GSV

Habilita a deteco de mensagem duplicada. Valor: Significado: 0 deteco de mensagem duplicada desabilitada diferente de zero deteco de mensagem duplicada desabilitada Habilita funcionalidade de resposta incorporada (somente ponto-a-ponto). Valor: Significado: 0 iniciado somente depois que um recebido (padro) 1 habilitado incondicionalmente 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. 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 Especifica o esquema de deteco de erro. Valor: Significado: 0 BCC (padro) 1 CRC

EmbeddedResponseEnable

SINT

GSV

ENQTransmitLimit

SINT

GSV

EOTSuppression

SINT

GSV

ErrorDetection

SINT

GSV

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-43

Atributo: MasterMessageTransmit

Tipo de Dados: SINT

Instruo: GSV

Descrio: 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. 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. 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. 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. 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). Endereo atual da estao da porta serial. Valor vlido 0-254. Ajuste inicial 0. 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 3.000 perodos (1 minuto). Nmero de vezes para reenviar uma mensagem sem obter um reconhecimento (somente mestre e escravo). Valor vlido 0-127. Ajuste inicial 3. Valor pendente para o atributo ACKTimeout. Valor pendente para o atributo DuplicateDetection. Valor pendente para o atributo EmbeddedResponse. Valor pendente para o atributo ENQTransmitLimit. Valor pendente para o atributo EOTSuppression. Valor pendente para o atributo ErrorDetection. Valor pendente para o atributo NormalPollGroupSize. Valor pendente para o atributo MasterMessageTransmit.

NAKReceiveLimit

SINT

GSV

NormalPollGroupSize

INT

GSV

PollingMode

SINT

GSV

ReplyMessageWait

DINT

GSV

StationAddress SlavePollTimeout

INT DINT

GSV GSV

TransmitRetries

SINT

GSV

PendingACKTimeout PendingDuplicateDetection PendingEmbeddedResponse Enable PendingENQTransmitLimit PendingEOTSuppression PendingErrorDetection PendingNormalPollGroupSize PendingMasterMessage Transmit

DINT SINT SINT SINT SINT SINT INT SINT

SSV SSV SSV SSV SSV SSV SSV SSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-44

Instrues de Entrada/Sada (MSG, GSV, SSV)

Atributo: PendingNAKReceiveLimit PendingPollingMode PendingReplyMessageWait PendingStationAddress PendingSlavePollTimeout PendingTransmitRetries

Tipo de Dados: SINT SINT DINT INT DINT SINT

Instruo: SSV SSV SSV SSV SSV SSV

Descrio: Valor pendente para o atributo NAKReceiveLimit. Valor pendente para o atributo PollingMode. Valor pendente para o atributo ReplyMessageWait. Valor pendente para o atributo StationAddress. Valor pendente para o atributo SlavePollTimeout. Valor pendente para o atributo TransmitRetries.

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:
Guia MSG Configuration: Configuration Campo: Message Type Service Code (Cdigo de Servio) Object Type (Tipo de Objeto) Object ID (Identificao do Objeto) Object Attribute (Atributo do Objeto) Source Nmero de Elementos Destination Communication Path Valor: CIP Generic 0d hex a2 1 deixe em branco deixe em branco 0 deixe em branco percurso de comunicao automtico (1,s onde s = nmero da ranhura do controlador)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-45

Acesso ao objeto FAULTLOG


O objeto FAULTLOG fornece informaes de falha sobre o controlador.
Atributo: MajorEvents MinorEvents MajorFaultBits Tipo de Dados: INT INT DINT Instruo: GSV SSV GSV SSV GSV SSV Descrio: Quantas falhas graves ocorreram desde a ltima vez que este contador foi resetado. Quantas falhas de advertncia ocorreram desde a ltima vez que este contador foi resetado. 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 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

MinorFaultBits

DINT

GSV SSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-46

Instrues de Entrada/Sada (MSG, GSV, SSV)

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: ConnectionPath Tipo de Dados: SINT[130] Instruo: GSV SSV GSV SSV GSV SSV GSV SSV Descrio: 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. Taxa (velocidade) requisitada para o pacote da conexo. Especifica o tipo de mensagem. Valor: Significado: 0 no inicializado Indica por qual porta a mensagem deve ser enviada. Valor: Significado: 1 placa de fundo 2 porta serial 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 Perodo de espera em microssegundos para todas as mensagens no conectadas. O valor inicial de 30.000.000 microssegundos (30 segundos).

ConnectionRate MessageType

DINT SINT

Port

SINT

TimeoutMultiplier

SINT

GSV SSV

UnconnectedTimeout

DINT

GSV SSV

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-47

O seguinte exemplo muda o atributo ConnectionPath, de forma que a mensagem v para um controlador diferente. EXEMPLO Mudana de um atributo do objeto MESSAGE Quando msg_path estiver energizado, configure o caminho da mensagem msg_1 para o valor de msg_1_path. Isto envia a mensagem para um controlador diferente.
msg_path GSV Get System Value Class name MESSAGE Instance name msg_1 Attribute Name MessageType Dest msg_1_type 2 SSV Set System Value Class name MESSAGE Instance name msg_1 Attribute Name MessageType Source tag_a 0

SSV Set System Value Class name MESSAGE Instance name msg_1 Attribute Name ConnectionPath Source msg_1_path[0] 6

SSV Set System Value Class name MESSAGE Instance name msg_1 Attribute Name MessageType Source msg_1_type 2

msg_1.EN /

MSG Type - CIP Data Table Write Message Control msg_1 ...

EN DN ER
42614

Onde:

: mensagem cujo atributo voc quer mudar tag que armazena o valor do atributo MessageType tag que armazena um 0 tag de matriz que armazena o novo caminho de conexo para a mensagem

msg_1 msg_1_type tag_a msg_1_path

Publicao 1756-RM003D-PT-P - Junho 2001

3-48

Instrues de Entrada/Sada (MSG, GSV, SSV)

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: EntryStatus Tipo de Dados: INT Instruo: GSV Descrio: 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. Nmero que identifica uma falha no mdulo, em caso de ocorrncia. Fornece informaes especficas sobre o cdigo de falha do objeto MODULE. 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

FaultCode FaultInfo ForceStatus

INT DINT INT

GSV GSV GSV

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-49

Atributo: Instance LEDStatus

Tipo de Dados: DINT INT

Instruo: GSV GSV

Descrio: Fornece o nmero de instncia deste objeto MODULE. 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. 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.

Mode

INT

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.
Atributo: Instance Tipo de Dados: DINT Instruo: GSV Descrio: Fornece o nmero de exemplo deste objeto MOTION_GROUP.

Publicao 1756-RM003D-PT-P - Junho 2001

3-50

Instrues de Entrada/Sada (MSG, GSV, SSV)

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: DisableFlag Tipo de Dados: SINT Instruo: GSV SSV Descrio: Controla essa execuo do programa. Valor: Significado: 0 execuo habilitada 1 execuo desabilitada Fornece o nmero de instncia deste objeto PROGRAM. Tempo que a execuo do programa demorou da ltima vez. O tempo est em microssegundos. Registra as falhas graves para este programa Recomendamos que voc crie uma estrutura definida pelo usurio para simplificar o acesso ao atributo MajorFaultRecord: Descrio: 32 bits menos significativos de valor de registro de data e hora da falha 32 bits mais significativos de valor de registro de data e hora da falha tipo de falha (programa, E/S etc.) cdigo exclusivo para a falha (depende do tipo de falha) informao especfica sobre a falha (depende do tipo e do cdigo de falha) Tempo mximo de execuo registrado para este programa. O tempo est em microssegundos. Registra as falhas de advertncia para este programa Recomendamos que voc crie uma estrutura definida pelo usurio para simplificar o acesso ao atributo MinorFaultRecord: Descrio: 32 bits menos significativos de valor de registro de data e hora da falha 32 bits mais significativos de valor de registro de data e hora da falha tipo de falha (programa, E/S etc.) cdigo exclusivo para a falha (depende do tipo de falha) informao especfica sobre a falha (depende do tipo e do cdigo de falha) no usado reservado para uso futuro

Instance LastScanTime MajorFaultRecord

DINT DINT DINT[11]

GSV GSV SSV GSV SSV Estilo: Decimal Decimal Decimal Decimal Hexadecimal GSV SSV GSV SSV Estilo: Decimal Decimal Decimal Decimal Hexadecimal GSV SSV

Nome: TimeLow TimeHIgh Type Code Info MaxScanTime MinorFaultRecord

Tipo de Dados: DINT DINT INT INT DINT[8] DINT DINT[11]

Nome: TimeLow TimeHIgh Type Code Info SFCRestart

Tipo de Dados: DINT DINT INT INT DINT[8] INT

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-51

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.
Atributo: Instance Tipo de Dados: DINT Instruo: GSV Descrio: Fornece o nmero de instncia deste objeto ROUTINE. Valores vlidos so 0-65.535.

Publicao 1756-RM003D-PT-P - Junho 2001

3-52

Instrues de Entrada/Sada (MSG, GSV, SSV)

Acesso ao objeto SERIALPORT


O objeto SERIALPORT fornece uma interface com a porta de comunicao serial.
Atributo: BaudRate Tipo de Dados: DINT Instruo: GSV Descrio: Especifica a taxa de transmisso. Os valores vlidos so 110, 300, 600, 1200, 2400, 4800, 9600 e 19200 (padro). Especifica o nmero de bits de dados por caracter. Valor: Significado: 7 7 bits de dados (somente ASCII) 8 8 bits de dados (padro) Especifica a paridade. Valor: Significado: 0 sem paridade (sem padro) 1 paridade mpar (somente ASCII) 2 paridade par 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. 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. Especifica o nmero de bits de parada. Valor: Significado: 1 1 bit de parada (padro) 2 2 bits de parada (somente ASCII) Valor pendente para o atributo BaudRate. Valor pendente para o atributo DataBits. Valor pendente para o atributo Parity. Valor pendente para o atributo RTSOffDelay. Valor pendente para o atributo RTSSendDelay. Valor pendente para o atributo StopBits.

DataBits

SINT

GSV

Paridade

SINT

GSV

RTSOffDelay

INT

GSV

RTSSendDelay

INT

GSV

StopBits

SINT

GSV

PendingBaudRate PendingDataBits PendingParity PendingRTSOffDelay PendingRTSSendDelay PendingStopBits

DINT SINT SINT INT INT SINT

SSV SSV SSV SSV SSV SSV

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:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-53

Guia MSG Configuration: Configuration

Campo: Message Type Service Code (Cdigo de Servio) Object Type (Tipo de Objeto) Object ID (Identificao do Objeto) Object Attribute (Atributo do Objeto) Source Nmero de Elementos Destination

Valor: CIP Generic

0d hex
6f hex 1 deixe em branco deixe em branco 0 deixe em branco percurso de comunicao automtico (1,s onde s = nmero da ranhura do controlador)

Communication

Path

Publicao 1756-RM003D-PT-P - Junho 2001

3-54

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: Instance LastScanTime MaxInterval Tipo de Dados: DINT DINT DINT[2] Instruo: GSV GSV SSV GSV SSV Descrio: Fornece o nmero de instncia deste objeto TASK. Valores vlidos so 0-31. Tempo que a execuo desta tarefa demorou da ltima vez. O tempo est em microssegundos. 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. Tempo mximo de execuo registrado para este programa. O tempo est em microssegundos. 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. Prioridade relativa dessa tarefa comparada com outras tarefas. Valores vlidos so 0-15. O intervalo de tempo entre as execues sucessivas da tarefa. O tempo est em microssegundos. 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. 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

MaxScanTime MinInterval

DINT DINT[2]

GSV SSV GSV SSV

Priority Rate StartTime

INT DINT DINT[2]

GSV GSV GSV SSV GSV SSV

Watchdog

DINT

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-55

Acesso ao objeto WALLCLOCKTIME


O objeto WALLCLOCKTIME fornece um registro de data e hora que o controlador pode usar para programao.
Atributo: CSTOffset Tipo de Dados: DINT[2] Instruo: GSV SSV Descrio: Offset positivo de CurrentValue do objeto CST (tempo de sistema coordenado, consulte a pgina 3-41). 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. 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. 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)

CurrentValue

DINT[2]

GSV SSV

DateTime

DINT[7]

GSV SSV

Publicao 1756-RM003D-PT-P - Junho 2001

3-56

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-RM003D-PT-P - Junho 2001

Instrues de Entrada/Sada (MSG, GSV, SSV)

3-57

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-RM003D-PT-P - Junho 2001

3-58

Instrues de Entrada/Sada (MSG, GSV, SSV)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

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.
Se voc quiser: comparar valores com base em uma expresso testar se dois valores so iguais testar se um valor maior ou igual a um segundo valor testar se um valor maior do que um segundo valor testar se um valor menor ou igual a um segundo valor testar se um valor menor do que um segundo valor testar se um valor est entre outros dois valores passar dois valores por uma mscara e testar se os mesmos so iguais testar se um valor no igual a um segundo valor Use esta instruo: CMP EQU GEQ GRT LEQ LES LIM MEQ NEQ Consulte pgina: 4-2 4-7 4-11 4-15 4-19 4-23 4-27 4-33 4-38

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.

Publicao 1756-RM003D-PT-P - Junho 2001

4-2

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Comparao (CMP)

Linguagens Disponveis:

Lgica Ladder

A instruo CMP realiza uma comparao das operaes aritmticas especificadas na expresso.

Operandos de Lgica Ladder:


Operando: Expresso Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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.

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 (ex.: +, , *, /) que afete os flags de status aritmtico.

Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-3

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

avalie a expresso

a expresso verdadeira

sada da condio da linha energizada quando verdadeira

a expresso falsa

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:


Se a instruo CMP considerar a expresso verdadeira, a sada da condio da linha ser verdadeira.

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:
Se a expresso: diferente de zero zero A sada da condio da linha definida em: verdadeira falsa

Publicao 1756-RM003D-PT-P - Junho 2001

4-4

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

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.

Operadores vlidos
Operador: + * / = < <= > >= <> ** ABS ACS AND ASN ATN COS Descrio: adio subtrao/negativo multiplicao diviso igual menor do que menor ou igual a maior do que maior ou igual a diferente de expoente (x elevado a y) valor absoluto arco co-seno bitwise AND arco seno arco tangente co-seno timo: DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL REAL DINT REAL REAL REAL MOD NOT OR RAD SIN SQR TAN TOD TRN XOR Operador: DEG FRD LN LOG Descrio: radianos para graus BCD para inteiro natural log logaritmo na base de 10 mdulo-diviso bitwise complemento bitwise OR graus para radianos seno raiz quadrada tangente inteiro para BCD truncado bitwise exclusivo OR timo: DINT, REAL DINT REAL REAL DINT, REAL DINT DINT DINT, REAL REAL DINT, REAL REAL DINT DINT, REAL DINT

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-5

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:
Para operadores que operam com: um operando dois operandos Use esse formato: operador (operando) operand_a operator operand_b Exemplos: ABS(tag_a)

tag_b + 5 tag_c AND tag_d (tag_e ** 2) MOD (tag_f / tag_g)

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. 3. 4. 5. 6. 7. 8. 9. 10. () ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG, RAD, SIN, SQR, TAN, TOD, TRN **

(negativo), NOT
*, /, MOD <, <=, >, >=, =

(subtrao), +
AND XOR OR

Publicao 1756-RM003D-PT-P - Junho 2001

4-6

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Igual a (EQU)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo EQU testa se Source A igual Source B.

Operandos de Lgica Ladder:

Operando: Source A

Tipo: SINT INT DINT REAL tipo de string SINT INT DINT REAL tipo de string

Formato: imediato tag

Descrio: valor a ser testado em relao Source B

Notas:

Source B

imediato tag

valor a ser testado em relao Source A

Se voc inserir um tag SINT ou INT, o valor o converte para um valor DINT por extenso de sinal. Valores REAL so raramente absolutamente iguais. Caso seja necessrio determinar a igualdade de dois valores REAL, use a instruo LIM. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Para testar os caracteres de um string, insira um tag tipo string para Source A e Source B.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura EQU tag de bloco FBD_COMPARE

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-7

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn SourceA SourceB Tipo de Dados: BOOL REAL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor para comparar com SourceB. vlido = qualquer flutuante Valor para comparar com SourceA. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivale sada da condio da linha da instruo EQU de lgica ladder.

Descrio: Use a instruo EQU para comparar dois nmeros ou dois strings de
caracteres ASCII. Quando comparar strings:

Os strings so iguais se seus caracteres corresponderem. Os caracteres ASCII so sensveis ao contexto. O A maisculo ($41) no igual ao a minsculo ($61).

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

4-8

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Source A = Source B

sim

sada da condio da linha energizada quando verdadeira

no

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:

Se value_1 for igual a value_2, a sada da condio da linha definida como verdadeira.

EQU Equal Source A Source B string_1 'ABC' string_8 'ABC'


42621

Se string_1 for igual a string_8, a sada da condio da linha definida como verdadeira. Neste exemplo, os dois strings so iguais. Cada caracter em string_1 corresponde ao caracter em string_8.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-9

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

4-10

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Maior ou Igual a (GEQ)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo GEQ testa se Source A maior ou igual Source B.

Operandos de Lgica Ladder:

Operando: Source A

Tipo: SINT INT DINT REAL tipo de string SINT INT DINT REAL tipo de string

Formato: imediato tag

Descrio: valor a ser testado em relao Source B

Notas:

Source B

imediato tag

valor a ser testado em relao a Source A

Se voc inserir um tag SINT ou INT, o valor o converte para um valor DINT por extenso de sinal. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Para testar os caracteres de um string, insira um tag tipo string para Source A e Source B.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura GEQ tag de bloco FBD_COMPARE

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-11

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn SourceA SourceB Tipo de Dados: BOOL REAL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor para comparar com SourceB. vlido = qualquer flutuante Valor para comparar com SourceA. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivalente sada da condio da linha para a instruo GEQ de Lgica Ladder.

Descrio: A instruo GEQ testa se Source A maior ou igual Source B.


Quando comparar strings:

Os valores hexadecimais dos caracteres determinam se um string menor ou maior que outro string. Para o cdigo hexadecimal de caracter, consulte a parte de trs deste manual. Quando os dois strings so organizados como em uma lista telefnica, a ordem dos strings determina qual maior.
Caracteres ASCII 1ab
m e n o r q u e m a i o r q u e

Cdigos Hexadecimais $31$61$62 $31$62 $41 $41$42 $42 $61 $61$62 a>B AB < B

1b A AB B a ab

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

4-12

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Source A Source B

sim

sada da condio da linha energizada quando verdadeira

no

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:

Se value_1 for menor ou igual a value_2, a sada da condio da linha definida como verdadeira.

GEQ Grtr Than or Eql (A>=B) Source A string_2 'ACA' Source B string_8 'ABC'
42621

Se string_2 for maior que string_8, a sada da condio da linha definida como verdadeira. Neste exemplo, string_2 maior que string_8. Quando os dois strings so organizados pelos valores hexadecimais, string_2 aparece depois de string_8. (Ou seja, em uma lista telefnica, ACA apareceria depois de ABC.)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-13

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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 GEQ energiza Dest, que habilita function_block_C.

Publicao 1756-RM003D-PT-P - Junho 2001

4-14

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Maior que (GRT)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo GRT testa se Source A maior ou igual Source B.

Operandos de Lgica Ladder:

Operando: Source A

Tipo: SINT INT DINT REAL tipo de string SINT INT DINT REAL tipo de string

Formato: imediato tag

Descrio: valor a ser testado em relao a Source B

Notas:

Source B

imediato tag

valor a ser testado em relao a Source A

Se voc inserir um tag SINT ou INT, o valor o converte para um valor DINT por extenso de sinal. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Para testar os caracteres de um string, insira um tag tipo string para Source A e Source B.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura GRT tag de bloco FBD_COMPARE

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-15

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn SourceA SourceB Tipo de Dados: BOOL REAL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor para comparar com SourceB. vlido = qualquer flutuante Valor para comparar com SourceA. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivale sada da condio da linha para instruo GRT de Lgica Ladder.

Descrio: A instruo GRT testa se Source A maior ou igual a Source B.


Quando comparar strings:

Os valores hexadecimais dos caracteres determinam se um string menor ou maior que outro string. Para o cdigo hexadecimal de caracter, consulte a parte de trs deste manual. Quando os dois strings so organizados como em uma lista telefnica, a ordem dos strings determina qual maior.
Caracteres ASCII 1ab
m e n o r q u e m a i o r q u e

Cdigos Hexadecimais $31$61$62 $31$62 $41 $41$42 $42 $61 $61$62 a>B AB < B

1b A AB B a ab

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

4-16

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Source A > Source B

sim

sada da condio da linha energizada quando verdadeira

no

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:

Se value_1 for maior que value_2, a sada da condio da linha definida como verdadeira.

GRT Greater Than (A>B) Source A string_3 'ACA' Source B string_8 'ABC'
42621

Se string_3 for maior que string_8, a sada da condio da linha definida como verdadeira. Neste exemplo, string_3 maior que string_8. Quando os dois strings so organizados pelos valores hexadecimais, string_3 aparece aps string_8. (Ou seja, em uma lista telefnica, ACA apareceria depois de ABC.)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-17

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:

function_block_A function_block_C

function_block_B

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 GRT energiza Dest, que habilita function_block_C.

Publicao 1756-RM003D-PT-P - Junho 2001

4-18

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Menor ou Igual a (LEQ)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo LEQ testa se Source A menor ou igual a Source B.

Operandos de Lgica Ladder:

Operando: Source A

Tipo: SINT INT DINT REAL tipo de string SINT INT DINT REAL tipo de string

Formato: imediato tag

Descrio: valor a ser testado em relao a Source B

Notas:

Source B

imediato tag

valor a ser testado em relao a Source A

Se voc inserir um tag SINT ou INT, o valor o converte para um valor DINT por extenso de sinal. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Para testar os caracteres de um string, insira um tag tipo string para Source A e Source B.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura LEQ tag de bloco FBD_COMPARE

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-19

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn SourceA SourceB Tipo de Dados: BOOL REAL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor para comparar com SourceB. vlido = qualquer flutuante Valor para comparar com SourceA. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivale sada da condio da sada para a instruo LEQ de Lgica Ladder.

Descrio: A instruo LEQ testa se Source A menor ou igual a Source B.


Quando comparar strings:

Os valores hexadecimais dos caracteres determinam se um string menor ou maior que outro string. Para o cdigo hexadecimal de caracter, consulte a parte de trs deste manual. Quando os dois strings so organizados como em uma lista telefnica, a ordem dos strings determina qual maior.
Caracteres ASCII 1ab
m e n o r q u e m a i o r q u e

Cdigos Hexadecimais $31$61$62 $31$62 $41 $41$42 $42 $61 $61$62 a>B AB < B

1b A AB B a ab

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

4-20

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Source A Source B

sim

sada da condio da linha energizada quando verdadeira

no

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:

Se value_1 for menor ou igual a value_2, a sada da condio da linha definida como verdadeira.

LEQ Less Than or Eql (A<=B) Source A string_4 'AAD' Source B string_8 'ABC'
42621

Se string_4 for menor ou igual a string_8, a sada da condio da linha definida como verdadeira. Neste exemplo, string_4 menor que string_8. Quando os dois strings so organizados pelos valores hexadecimais, string_4 aparece antes de string_8. (Ou seja, em uma lista telefnica, AAD apareceria antes de ABC.)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-21

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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 LEQ energiza Dest, que habilita function_block_C.

Publicao 1756-RM003D-PT-P - Junho 2001

4-22

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Menor Que (LES)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo LES testa se Source A menor do que Source B.

Operandos de Lgica Ladder:

Operando: Source A

Tipo: SINT INT DINT REAL tipo de string SINT INT DINT REAL tipo de string

Formato: imediato tag

Descrio: valor a ser testado em relao a Source B

Notas:

Source B

imediato tag

valor a ser testado em relao a Source A

Se voc inserir um tag SINT ou INT, o valor o converte para um valor DINT por extenso de sinal. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Para testar os caracteres de um string, insira um tag tipo string para Source A e Source B.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura LES

tag de bloco FBD_COMPARE

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-23

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn SourceA SourceB Tipo de Dados: BOOL REAL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor para comparar com SourceB. vlido = qualquer flutuante Valor para comparar com SourceA. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivale sada da condio da linha da instruo LES de Lgica Ladder.

Descrio: A instruo LES testa se Source A menor do que Source B.


Quando comparar strings:

Os valores hexadecimais dos caracteres determinam se um string menor ou maior que outro string. Para o cdigo hexadecimal de caracter, consulte a parte de trs deste manual. Quando os dois strings so organizados como em uma lista telefnica, a ordem dos strings determina qual maior.
Caracteres ASCII 1ab
m e n o r q u e m a i o r q u e

Cdigos Hexadecimais $31$61$62 $31$62 $41 $41$42 $42 $61 $61$62 a>B AB < B

1b A AB B a ab

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

4-24

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Source A < Source B

sim

sada da condio da linha energizada quando verdadeira

no

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:

Se value_1 for menor que value_2, a sada da condio da linha definida como verdadeira.

LES Less Than (A<B) Source A string_5 'AAD' Source B string_8 'ABC'
42621

Se string_5 for menor que string_8, a sada da condio da linha definida como verdadeira. Neste exemplo, string_5 menor que string_8. Quando os dois strings so organizados pelos valores hexadecimais, string_5 aparece antes de string_8. (Ou seja, em uma lista telefnica, AAD apareceria antes de ABC.)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-25

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn falso EnableIn verdadeiro Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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 LES energiza Dest, que habilita function_block_C.

Publicao 1756-RM003D-PT-P - Junho 2001

4-26

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Limite (LIM)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo LIM testa se o valor de teste est dentro da faixa de Limite Inferior a Limite Superior.

Operandos de Lgica Ladder:


Operando: Limite Inferior Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura LIM tag de bloco FBD_LIMIT

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-27

Parmetro de Entrada: LowLimit Test (Teste) HighLimit

Tipo de Dados: REAL REAL REAL

Descrio: Valor do limite inferior. vlido = qualquer flutuante Valor para comparar com os limites vlido = qualquer flutuante Valor do limite superior. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivale sada da condio da linha para a instruo LIM de Lgica Ladder.

Descrio: A instruo LIM testa se o valor de teste est dentro da faixa de Limite
Inferior a Limite Superior.
Se o Limite Inferior: E o valor de Teste for: igual a ou entre os limites diferente ou fora dos limites igual a ou fora dos limites diferente ou dentro dos limites A sada da condio da linha definida em: verdadeira falsa verdadeira falsa

Limite Superior 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 est 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.

Publicao 1756-RM003D-PT-P - Junho 2001

4-28

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Limite Inferior Limite Inferior


A instruo verdadeira se o valor de teste for igual ou situar-se entre os limites superior e inferior. 0

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. 0

+1 limite inferior

+1 limite superior

limite superior

limite inferior

(n+1)

+n

n = valor mximo

(n+1) +n n = valor mximo

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

avalie limite

a comparao verdadeira

sada da condio da linha energizada quando verdadeira

a comparao falsa

sada da condio da linha energizada quando falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-29

Exemplo de Lgica Ladder:


exemplo 1

Limite Inferior Limite Superior Quando 0 o valor 100, light_1 energizada.

exemplo 2

Limite Inferior Limite Superior Quando o valor 0 ou valor 100, light_1 energizada.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn falso EnableIn verdadeiro Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

4-30

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-31

Mscara Igual a (MEQ)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo MEQ passa os valores de Source e Compare atravs de uma Mscara e compara os resultados.

Operandos de Lgica Ladder:


Operando: Source Tipo: SINT INT DINT Formato: imediato tag Descrio: 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.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura MEQ tag de bloco FBD_MASK_EQUAL

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Source Mask Compare Tipo de Dados: BOOL DINT DINT DINT Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor para testar com Compare. vlido = qualquer inteiro Define que bits bloquear (mscara). vlido = qualquer inteiro Comparao de valor. vlido = qualquer inteiro
Publicao 1756-RM003D-PT-P - Junho 2001

4-32

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivale sada da condio da linha para a instruo MEQ de Lgica Ladder.

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 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.

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.
Prefixo: 16# 8# 2# Descrio: hexadecimal por exemplo; 16#0F0F octal por exemplo; 8#16 binrio por exemplo; 2#00110011

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-33

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

fonte mascarada = comparao mascarada

sim

sada da condio da linha energizada quando verdadeira

no

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:


exemplo 1

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 0 1 0 1 0 1 0 1 1 1 1 1 x x x x mascarado

value_2 0 1 0 1 0 1 0 1 1 1 1 1 x x x x mascarado

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).

Publicao 1756-RM003D-PT-P - Junho 2001

4-34

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

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 x x x x x x x x x x x x 1 1 1 1 mascarado

value_2 x x x x x x x x x x x x 0 0 0 0 mascarado

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).

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-35

Exemplo do Bloco de Funo:

function_block_A function_block_C

function_block_B

Source 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

Source 0 1 0 1 0 1 0 1 1 1 1 1 x x x x mascarado

Compare 0 1 0 1 0 1 0 1 1 1 1 1 x x x x mascarado

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).

Publicao 1756-RM003D-PT-P - Junho 2001

4-36

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Diferente de (NEQ)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo NEQ testa se Source A diferente de Source B.

Operandos de Lgica Ladder:

Operando: Source A

Tipo: SINT INT DINT REAL tipo de string SINT INT DINT REAL tipo de string

Formato: imediato tag

Descrio: valor a ser testado em relao a Source B

Notas:

Source B

imediato tag

valor a ser testado em relao a Source A

Se voc inserir um tag SINT ou INT, o valor o converte para um valor DINT por extenso de sinal. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Para testar os caracteres de um string, insira um tag tipo string para Source A e Source B.

Operandos do Bloco de Funo:


Operando: Tipo: Formato: estrutura Descrio: estrutura NEQ

tag de bloco FBD_COMPARE

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-37

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn SourceA SourceB Tipo de Dados: BOOL REAL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor para comparar com SourceB. vlido = qualquer flutuante Valor para comparar com SourceA. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL BOOL Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Isto equivale sada da condio da linha para a instruo NEQ de Lgica Ladder.

Descrio: A instruo NEQ testa se Source A diferente de Source B.


Quando comparar strings:

Os strings no so iguais se qualquer de seus caracteres no corresponderem. Os caracteres ASCII so sensveis ao contexto. O A maisculo ($41) no igual ao a minsculo ($61).
Caracteres ASCII 1ab
m e n o r q u e m a i o r q u e

Cdigos Hexadecimais $31$61$62 $31$62 $41 $41$42 $42 $61 $61$62 a>B AB < B

1b A AB B a ab

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

4-38

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Source A = Source B

sim

sada da condio da linha energizada quando verdadeira

no

sada da condio da linha energizada quando falsa

fim

Exemplo de Lgica Ladder:

Se value_1 no for igual a value_2, a sada da condio da linha definida como verdadeira.

NEQ Not Equal Source A string_6 'ABC$00' Source B string_8 'ABC'


42621

Se string_6 no for igual a string_8, a sada da condio da linha definida como verdadeira. Neste exemplo, string_6 no igual a string_8. Os dois strings no correspondem completamente.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-39

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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 NEQ energiza Dest, que habilita function_block_C.

Publicao 1756-RM003D-PT-P - Junho 2001

4-40

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

4-41

Publicao 1756-RM003D-PT-P - Junho 2001

4-42

Instrues de Comparao (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

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.
Se voc quiser: avaliar uma expresso somar dois valores subtrair dois valores multiplicar dois valores dividir dois valores determinar o resto aps a diviso de um valor por outro calcular a raiz quadrada de um valor considerar o sinal oposto de um valor considerar o valor absoluto de um valor Use esta instruo: CPT ADD SUB MUL DIV MOD SQR NEG ABS Consulte pgina: 5-2 5-6 5-9 5-12 5-15 5-19 5-23 5-26 5-29

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.

Publicao 1756-RM003D-PT-P - Junho 2001

5-2

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Clculo (CPT)

Idiomas disponveis:

Lgica Ladder

A instruo CPT realiza as operaes aritmticas definidas na expresso.

Operandos de Lgica Ladder:


Operando Destination Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: tag Descrio: tag para armazenar o resultado

Expresso

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.

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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. DICA No h limite para o comprimento de uma expresso.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-3

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo avalia a Expresso e coloca o resultado no Destino. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:


exemplo 1

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 2

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.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

5-4

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Operadores vlidos
Operador: + * / ** ABS ACS AND ASN ATN COS DEG FRD Descrio: adio subtrao/negativo multiplicao diviso expoente (x elevado a y) valor absoluto arco co-seno bitwise AND arco seno arco tangente co-seno radianos para graus BCD para inteiro timo: DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL REAL DINT REAL REAL REAL DINT, REAL DINT MOD NOT OR RAD SIN SQR TAN TOD TRN XOR Operador: LN LOG Descrio: natural log logaritmo na base de 10 mdulo-diviso bitwise complemento bitwise OR graus para radianos seno raiz quadrada tangente inteiro para BCD truncado bitwise exclusivo OR timo: REAL REAL DINT, REAL DINT DINT DINT, REAL REAL DINT, REAL REAL DINT DINT, REAL DINT

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:
Para operadores que operam com: um operando dois operandos Use esse formato: operador (operando) operand_a operator operand_b Exemplos: ABS(tag_a)

tag_b + 5 tag_c AND tag_d (tag_e ** 2) MOD (tag_f / tag_g)

Publicao 1756-RM003D-PT-P - Junho 2001

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. 3. 4. 5. 6. 7. 8. 9. () ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG, RAD, SIN, SQR, TAN, TOD, TRN **

(negativo), NOT
*, /, MOD

(subtrao), +
AND XOR OR

Publicao 1756-RM003D-PT-P - Junho 2001

5-6

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Adio (ADD)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo ADD soma Source A e Source B e coloca o resultado no Destino.

Operandos de Lgica Ladder:


Operando Source A Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura ADD tag do bloco FBD_MATH

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor para adicionar a SourceB. vlido = qualquer flutuante Valor para adicionar a SourceA. vlido = qualquer flutuante

SourceA SourceB

REAL REAL

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-7

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta 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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Destination = Source A + Source B (Destino = Fonte A + Fonte B) A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo ADD soma float_value_1 e float_value_2 e coloca o resultado em add_result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

5-8

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-9

Subtrao (SUB)

Linguagens Disponveis:

gica Ladder

Bloco de Funo

A instruo SUB subtrai Source B de Source A e coloca o resultado no Destino.

Operandos de Lgica Ladder:


Operando Source A Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura SUB tag do bloco FBD_MATH

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor do qual se subtrai SourceB. vlido = qualquer flutuante Valor do qual se subtrai SourceA. vlido = qualquer flutuante

SourceA SourceB

REAL REAL

Publicao 1756-RM003D-PT-P - Junho 2001

5-10

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta 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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Destino = Fonte B - Fonte A A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo SUB subtrai float_value_2 de float_value_1 e coloca o resultado em subtract_result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-11

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

5-12

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Multiplicao (MUL)

Linguagens

Lgica Ladder

Bloco de Funo

A instruo MUL multiplica Source A por Source B e coloca o resultado no Destino.

Operandos de Lgica Ladder:


Operando Source A Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura MUL tag do bloco FBD_MATH

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor do multiplicando. vlido = qualquer flutuante Valor do multiplicador. vlido = qualquer flutuante

Source A Source B

REAL REAL

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-13

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta 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:
Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Destino = Fonte B x Fonte A A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo MUL multiplica float_value_1 por float_value_2 e coloca o resultado em multiply_result.

Execuo de Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

5-14

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-15

Diviso (DIV)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo DIV divide Source A por Source B e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source A Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura DIV tag do bloco FBD_MATH

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor do dividendo. vlido = qualquer flutuante Valor do divisor. vlido = qualquer flutuante

Source A Source B

REAL REAL

Publicao 1756-RM003D-PT-P - Junho 2001

5-16

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta sada.

Descrio: Se Destination no for REAL, a instruo trabalha com a poro


fracionria do resultado da seguinte forma:
Se Source A: Ento a parte fracionria do resultado: trunca Exemplo:

e Source B no forem do tipo REAL

Source A Source B Destination

DINT DINT DINT REAL DINT DINT

5 3 1 5.0 3 2

ou Source B for do tipo REAL

arredondada

Source A Source B Destination

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:
Se Source B zero e: todos os operandos so inteiros (SINT, INT ou DINT) pelo menos um operando REAL SINT, INT ou DINT REAL positivo negativo positivo negativo E o destino : E o resultado : Logo, o destino configurado como: Source A -1 0 1.$ (positivo infinito) -1.$ (negativo infinito)

Para detectar um possvel divisor por zero, examine o bit de falha de advertncia (S:MINOR). Consulte o Procedimentos Comuns dos Controladores Logix5000, publicao 1756-PM001.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha:


Uma falha de advertncia ocorre se: o divisor zero Tipo de falha: 4 Cdigo de falha: 4

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-17

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Destination = Fonte B / Fonte A A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo DIV divide float_value_1 por float_value_2 e coloca o resultado em divide_result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn est definido Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Exemplo do Bloco de Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

5-18

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

function_block_A

function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-19

Mdulo (MOD)

Linguagens

Lgica Ladder

Bloco de Funo

A instruo MOD divide Source A por Source B e coloca o resto no Destino.

Operandos de Lgica Ladder:


Operando Source A Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura MOD tag do bloco FBD_MATH

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor do dividendo. vlido = qualquer flutuante Valor do divisor. vlido = qualquer flutuante

Source A Source B

REAL REAL

Publicao 1756-RM003D-PT-P - Junho 2001

5-20

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta 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:
Se Source B zero e: todos os operandos so inteiros (SINT, INT ou DINT) pelo menos um operando REAL SINT, INT ou DINT REAL positivo negativo positivo negativo E o destino : E o resultado : Logo, o destino configurado como: Source A -1 0 1.$ (positivo infinito) -1.$ (negativo infinito)

Para detectar um possvel divisor por zero, examine o bit de falha de advertncia (S:MINOR). Consulte Procedimentos Comuns dos Controladores Logix5000, publicao 1756-PM001.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha:


Uma falha de advertncia ocorrer se: o divisor zero Tipo de falha: 4 Cdigo de falha: 4

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Destination = Source A ( TRN ( Source A / Source B ) * Source B ) A sada da condio da linha definida como verdadeira.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-21

Exemplo de Lgica Ladder:

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.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

5-22

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-23

Raiz Quadrada (SQR)

Linguagens

Lgica Ladder

Bloco de Funo

A instruo SQR calcula a raiz quadrada de Source e coloca o resultado no destino.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura SQR tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Encontra a raiz quadrada deste valor. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmticos so definidos para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

5-24

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Descrio: Se Destination no for REAL, a instruo trabalha com a poro


fracionria do resultado da seguinte forma:
Se Source for: Ento a parte fracionria do resultado: trunca arredondada Exemplo:

diferente do tipo REAL do tipo REAL

Source Destination Source Destination

DINT DINT REAL DINT

3 1 3.0 2

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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Destination =

Source

A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo SQR calcula a raiz quadrada de value_1 e coloca o resultado em sqr_result .

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-25

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

5-26

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Negao (NEG)

Linguagens

Lgica Ladder

Bloco de Funo

A instruo NEG altera o sinal da Fonte e coloca o resultado no Destino.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura NEG tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor para negar. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-27

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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Destination = 0 Source A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo NEG altera o sinal de value_1 e coloca o resultado em negate_result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

5-28

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-29

Valor Absoluto (ABS)

Linguagens

Lgica Ladder

Bloco de Funo

A instruo ABS retira o valor absoluto de Fonte e coloca o resultado em Destino.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura ABS tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor do qual se tira o valor absoluto. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

5-30

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. Destination = | Source | A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

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.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

5-31

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

5-32

Instrues Matemticas/Clculo (CPT, ADD, SUB, MUL, DIV, MOD, SQR, NEG, ABS)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

Instrues de Movimentao/Lgica
(MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Introduo

As instrues de movimentao modificam e movem bits.


Se voc quiser: copiar um valor copiar uma parte especfica de um inteiro copiar uma parte especfica de um inteiro no bloco de funo mover bits dentro de um inteiro ou entre inteiros movimentar bits dentro de um inteiro ou entre inteiros no bloco de funo zerar um valor Use esta instruo: MOV MVM MVMT BTD BTDT CLR Consulte pgina: 6-2 6-4 6-7 6-10 6-13 6-16

As instrues de lgica realizam operaes de lgica nos bits.


Se voc quiser realizar uma: operao bitwise AND operao bitwise OR operao bitwise, exclusive OR operao bitwise NOT Use esta instruo: AND OR XOR NOT Consulte pgina: 6-17 6-21 6-25 6-29

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.

Publicao 1756-RM003D-PT-P - Junho 2001

6-2

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Movimentao (MOV)

Linguagens Disponveis:

Lgica Ladder

A instruo MOV copia Source em Destination. Source permanece inalterado.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL Formato: imediato tag Descrio: 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

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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:
Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo copia Source em Destination. A sada da condio da linha definida como verdadeira.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-3

Exemplo de Lgica Ladder:

Quando habilitada, a instruo MOV copia os dados de value_1 para value_2.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

6-4

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Movimentao Mascarada (MVM)

Linguagens Disponveis:

Lgica Ladder

A instruo MVM copia Source em Destination e permite que parte dos dados sejam mascarados.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT Formato: imediato tag Descrio: 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

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como MVMT, Funo: 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.

Publicao 1756-RM003D-PT-P - Junho 2001

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.
Prefixo: 16# 8# 2# Descrio: hexadecimal por exemplo; 16#0F0F octal por exemplo; 8#16 binrio por exemplo; 2#00110011

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma Execuo de Lgica Ladder:
Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. 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-RM003D-PT-P - Junho 2001

6-6

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Exemplo de Lgica Ladder:

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 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 MVM 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 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 MVM As caixas sombreadas mostram os bits alterados em value_b.

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como MVMT, Funo: consulte a pgina 6-7.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-7

Movimentao Mascarada com Target (MVMT)

Linguagens Disponveis:

Bloco de Funo

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 Esta instruo est disponvel em lgica de ladder a rel como MVM, Ladder: consulte a pgina 6-4. Operandos do Bloco de Funo:
Operando Tipo: Formato: estrutura Descrio: estrutura MVMT tag do bloco FBD_MASKED_MOVE

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Source Mask Tipo de Dados: BOOL DINT DINT Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Insira o valor para movimentar para Destination baseado no valor da Mscara. vlido = qualquer inteiro 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 Insira o valor para se movimentar para Dest antes de mover os bits Source atravs da Mscara. vlido = qualquer inteiro

Target

DINT

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo de movimentao mascarada. Os flags de status aritmtico so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

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.
Prefixo: 16# 8# 2# Descrio: hexadecimal por exemplo; 16#0F0F octal por exemplo; 8#16 binrio por exemplo; 2#00110011

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma Execuo de Lgica Esta instruo est disponvel em lgica ladder como MVM, consulte a Ladder: pgina 6-4. Execuo do Bloco de Funo:
Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executa. EnableOut energizado.

Exemplo do Bloco de Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-9

function_block_A

function_block_C

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). .

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.

Publicao 1756-RM003D-PT-P - Junho 2001

6-10

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Distribuio do Campo do Bit (BTD)

Linguagens Disponveis:

Lgica Ladder

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:


Operando Source Tipo: SINT INT DINT Formato: imediato tag Descrio: 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) tag nmero do bit (nmero do bit menos significativo) onde a movimentao foi iniciada deve estar dentro da faixa vlida de tipos de dados Source tag para onde os bits sero movidos

Destination

SINT INT DINT DINT

Bit de Destino

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

Operandos do Bloco de Esta instruo est disponvel no bloco de funo como BTDT, Funo: 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. Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-11

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo copia e muda os bits de Source para Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:


exemplo 1 Quando habilitada, a instruo BTD movimenta os bits dentro de value_1.

Bit Destination

Bit Source

value_1 antes da instruo 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 BTD

value_1 depois da instruo 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 BTD As caixas sombreadas mostram os bits alterados em value_1.

exemplo 2

Quando habilitada, a instruo BTD move 10 bits de value_1 para value_2.

Publicao 1756-RM003D-PT-P - Junho 2001

6-12

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Bit Source

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

Bit de Destino

value_2 antes da 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 instruo BTD

value_2 depois da 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 instruo BTD As caixas sombreadas mostram os bits que foram alterados em value_2.

Execuo do Bloco de Esta instruo est disponvel no bloco de funo como BTDT, Funo: consulte a pgina 6-13.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-13

Distribuio do Campo do Bit com Target (BTDT)

Linguagens Disponveis:

Bloco de Funo

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 Esta instruo est disponvel em lgica ladder como BTD, consulte a Ladder: pgina 6-10. Operandos do Bloco de Funo:
Operando Tipo: Formato: estrutura Descrio: estrutura BTDT tag do bloco FBD_BIT_FIELD_DISTRIBUTE

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Source SourceBit Length DestBit Target Tipo de Dados: BOOL DINT DINT DINT DINT DINT Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Insira o valor que contm os bits a serem movidos para Destination. vlido = qualquer inteiro A posio do bit em Source (menor nmero de bit de onde se comea a movimentar). vlido = 0-31 Nmero de bits a movimentar vlido = 1-32 A posio do bit em Dest (menor nmero para onde se inicia a cpia dos bits). vlido = 0-31 Insira o valor para movimentar para Dest antes de movimentar bits de Source. vlido = qualquer inteiro

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da operao da movimentao do bit. Os flags de status aritmtico so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

6-14

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

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 Esta instruo est disponvel em lgica ladder como BTD, consulte a Ladder: pgina 6-10. Execuo do Bloco de Funo:
Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executa. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-15

Exemplo do Bloco de Funo:


function_block_A

function_block_C

function_block_B

function_block_D

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 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

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. DestBit SourceBit

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.

Publicao 1756-RM003D-PT-P - Junho 2001

6-16

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Zeramento (CLR)

Linguagens Disponveis:

Lgica Ladder

A instruo CLR zera todos os bits de Destination.

Operandos de Lgica Ladder:


Operando Destination Tipo: SINT INT DINT REAL Formato: tag Descrio: tag a ser zerado

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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:
Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo zera Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo CLR zera todos os bits de value_1.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-17

Bitwise AND (AND)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

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:


Operando Source A Tipo: SINT INT DINT Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura AND tag do bloco FBD_LOGICAL

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn SourceA SourceB Tipo de Dados: BOOL DINT DINT Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor para AND com SourceB. vlido = qualquer inteiro Valor para AND com SourceA. vlido = qualquer inteiro

Publicao 1756-RM003D-PT-P - Junho 2001

6-18

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Os flags de status aritmtico so energizados para esta sada.

Descrio: Quando habilitada, a instruo avalia a operao AND


Se o bit em Source A for: 0 0 1 1 E o bit em Source B for: 0 1 0 1 O bit em Destination ser: 0 0 0 1

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:
Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo realiza uma operao bitwise AND. A sada da condio da linha definida como verdadeira.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-19

Exemplo de Lgica Ladder:

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.

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

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executa. EnableOut energizado.

Exemplo do Bloco de Funo


Publicao 1756-RM003D-PT-P - Junho 2001

6-20

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

function_block_C

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.

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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-21

Bitwise OR (OR)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

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:


Operando Source A Tipo: SINT INT DINT Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura OR tag do bloco FBD_LOGICAL

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor para OR com SourceB. vlido = qualquer inteiro Valor para OR com SourceA. vlido = qualquer inteiro

SourceA SourceB

DINT DINT

Publicao 1756-RM003D-PT-P - Junho 2001

6-22

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Os flags de status aritmtico so energizados para esta sada.

Descrio: Quando habilitada, a instruo avalia a operao OR


Se o bit em Source A for: 0 0 1 1 E o bit em Source B for: 0 1 0 1 O bit em Destination ser: 0 1 1 1

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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo realiza uma operao bitwise OR. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-23

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

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executa. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

6-24

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Exemplo do Bloco de Funo:


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.

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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-25

Bitwise Exclusive OR (XOR)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

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:


Operando Source A Tipo: SINT INT DINT Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura XOR tag do bloco FBD_LOGICAL

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor para XOR com SourceB. vlido = qualquer inteiro Valor para XOR com SourceA. vlido = qualquer inteiro

SourceA SourceB

DINT DINT

Publicao 1756-RM003D-PT-P - Junho 2001

6-26

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Os flags de status aritmticos so energizados para esta sada.

Descrio: Quando habilitada, a instruo avalia a operao XOR


Se o bit em Source A for: 0 0 1 1 E o bit em Source B for: 0 1 0 1 O bit em Destination ser: 0 1 1 0

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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo realiza uma operao bitwise OR. A sada da condio da linha definida como verdadeira.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-27

Exemplo de Lgica Ladder:

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.

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

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executa. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

6-28

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Exemplo do Bloco de Funo:


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.

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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-29

Bitwise NOT (NOT)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo NOT realiza uma operao bitwise NOT usando os bits em Source e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura NOT tag do bloco FBD_CONVERT

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Valor para NOT. vlido = qualquer inteiro

Source

DINT

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo. Os flags de status aritmtico so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

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 o bit em Source for: 0 1 O bit em Destination ser: 1 0

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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo realiza uma operao bitwise NOT. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo NOT realiza uma operao de bitwise NOT em value_1 e coloca o resultado em value_result_not.

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_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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

6-31

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executa. EnableOut energizado.

Exemplo do Bloco de Funo:


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.

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

Publicao 1756-RM003D-PT-P - Junho 2001

6-32

Instrues de Movimentao/Lgica (MOV, MVM, BTD, MVMT, BTDT, CLR, AND, OR, XOR, NOT)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

Instrues Array (File/Miscellaneous)


(FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Introduo

As instrues de arquivo/diversos operam nas matrizes de dados.


Se voc quiser: realizar operaes de funo, desvio, lgica e aritmtica nos valores de matrizes buscar e comparar valores em matrizes copiar o contedo de uma matriz para outra matriz copiar o contedo de uma matriz para outra matriz sem interrupo preencher uma matriz com dados especficos calcular a mdia de uma matriz de valores classificar uma dimenso de dados da matriz em ordem crescente calcular o desvio padro de uma matriz de valores encontrar o tamanho de uma dimenso de uma matriz Use esta instruo: FAL FSC COP CPS FLL AVE SRT STD SIZE Consulte pgina: 7-7 7-20 7-32 7-32 7-37 7-41 7-45 7-49 7-53

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.

Publicao 1756-RM003D-PT-P - Junho 2001

7-2

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

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: operar em todos os elementos especificados em uma matriz antes de prosseguir para a prxima instruo distribuir a operao de matriz em vrias varreduras inserir o nmero de elementos para operar por varredura (1-2147483647) manipular um elemento da matriz cada vez que a entrada da condio da linha passa de falsa para verdadeira Selecione este modo: All (Todos) Numerical (Numrico) Incremental (Incremento)

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.
Matriz de dados uma varredura

16639

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-3

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.
uma varredura

entrada da condio da linha

bit .EN

bit DN zerar os bits de status e zerar o valor .POS varredura da instruo

operao completa

nenhuma execuo ocorre

40010

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

Publicao 1756-RM003D-PT-P - Junho 2001

7-4

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

disparo, a entrada da condio da linha pode se alterar repetidamente sem interromper a execuo da instruo.
uma varredura

segunda varredura

prxima varredura

16641

IMPORTANTE

Evite usar os resultados de uma instruo de arquivo operando no modo numrico at que o bit .DN fique energizado.

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.
a linha se torna verdadeira na concluso varreduras mltiplas a linha se torna falsa na concluso varreduras mltiplas

entrada da condio da linha bit .EN bit DN varredura da instruo operao completa operao completa
40013

zera os bits de status e zera o valor .POS

zera os bits de status e zera o valor .POS

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-5

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.

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.

1a. instruo habilitada 2a. instruo habilitada 3a. instruo habilitada

ltima instruo habilitada

16643

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

Publicao 1756-RM003D-PT-P - Junho 2001

7-6

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

verdadeira durante mais de uma varredura, a instruo executa somente durante a primeira varredura.

uma varredura

entrada da condio da linha

bit .EN

bit DN

varredura da instruo

40014

operao completa

zerar os bits de status e zerar o valor .POS

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-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-7

Arquivamento Aritmtico e Lgico (FAL)

Linguagens Disponveis:

lgica Ladder

A instruo FAL realiza as operaes de cpia, aritmtica, lgica e funo nos dados armazenados em uma matriz.

Operandos de Lgica Ladder:


Operando: Control Length Position Mode Tipo: CONTROL DINT DINT DINT Formato: tag imediato imediato imediato Descrio: estrutura de controle para a operao nmero de elementos na matriz a serem manipulados elemento atual na matriz valor inicial normalmente 0 como distribuir a operao selecione INC, ALL ou insira um nmero tag para armazenar o resultado

Destination

SINT INT DINT REAL SINT INT DINT REAL

tag

Expresso

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.

Estrutura:
Mnemnico: .EN .DN .ER Tipo de Dados: BOOL BOOL BOOL Descrio: O bit habilitado indica que a instruo FAL est habilitada. O bit Executado energizado quando a instruo operou no ltimo elemento (.POS = .LEN). 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. O comprimento especifica o nmero dos elementos na matriz na qual a instruo FAL opera. A posio contm a posio do elemento atual que a instruo est acessando.

.LEN .POS

DINT DINT

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: A instruo FAL realiza as mesmas operaes nas matrizes conforme a
instruo CPT realiza as operaes dos elementos.

Publicao 1756-RM003D-PT-P - Junho 2001

7-8

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Os exemplos que comeam na pgina 7-15 mostram como usar o valor .POS para entrar em 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: subscrito est fora da faixa .POS < 0 ou .LEN < 0 Tipo de falha: 4 4 Cdigo de falha: 20 21

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-9

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa Ao: A sada da condio da linha definida como falsa.

examinar bit .DN

bit .DN = 0

modo INC sim

no

bit interno desenergizado

bit .DN = 1 bit .EN desenergizado bit .ER desenergizado bit .DN desenergizado valor .POS desenergizado

bit .EN desenergizado

modo ALL sim

no

.LEN < 0 ou .POS < 0 no

sim

falha grave

.POS = .POS + 1

sim

.LEN = 0 no

.POS = 0 no .POS = .POS 1

sim no

.POS < .LEN sim

modo .LEN> bit .DN energizado bit .EN energizado sim bit .DN energizado bit .EN desenergizado modo numrico

no

modo .LEN>

pgina 7-14

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

7-10

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Condio: entrada da condio da linha for verdadeira

Ao:

.LEN < 0 ou .POS < 0 examinar bit .ER bit .ER = 0 no bit .DN = 0 .LEN = 0 sim

sim

pgina7-14
falha grave modo numrico no

bit .ER = 1 examinar bit .DN bit .DN = 1

no

modo INC sim

no modo ALL sim

bit .DN energizado bit .EN energizado

modo INC

modo ALL

comum

pgina 7-12

pgina 7-13

loop_count = loop_count 1

loop_count < 0 sim

no

.POS = .POS + 1

avaliar a expresso

examine S:V sim .POS = .POS + 1 bit .ER energizado

no

.POS = .LEN sim bit .DN energizado bit .EN energizado

no

.POS = .POS + 1

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-11

Condio:
modo INC

Ao:

bit .EN = 1 examinar bit .EN bit .EN = 0

examinar bit interno bit = 0

bit = 1 .POS = .POS + 1

bit interno energizado

.POS .LEN no bit .EN energizado loop_count = 1 .POS = .POS 1

sim

.POS = 0 no .POS = .POS 1

sim

bit .DN energizado bit .EN energizado sada da condio da linha definida como verdadeira

comum

pgina 7-11
fim

Publicao 1756-RM003D-PT-P - Junho 2001

7-12

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Condio:
modo ALL

Ao:

bit .EN = 0 examinar bit .EN bit .EN = 1

examinar bit interno bit = 0

bit = 1

.POS = .POS + 1

bit .EN energizado

.POS .LEN no

sim

.POS = 0 no .POS = .POS 1

sim

loop_count = .LEN .POS .POS = .POS 1

bit .DN energizado bit .EN energizado comum

sada da condio da linha definida como verdadeira

pgina 7-11
fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-13

Condio:
modo numrico

Ao:

bit .EN = 1 examinar bit .EN bit .EN = 0

.POS = .POS + 1

examinar bit interno bit = 0

bit = 1

bit interno energizado

.POS .LEN no

sim

.POS = 0 no .POS = .POS 1

sim

modo .LEN>

no

modo .LEN sim

bit .EN energizado loop_count = .LEN .POS .POS = .POS 1

bit .DN energizado bit .EN energizado

sada da condio da linha definida como verdadeira

fim

modo loop_count no bit .EN energizado loop_count = mode

sim

comum

pgina 7-11

Publicao 1756-RM003D-PT-P - Junho 2001

7-14

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Exemplo de Lgica Ladder:


cpia de matriz para matriz Quando habilitada, a instruo FAL copia cada elemento de array_2 na mesma posio dentro de array_1.

Expresso array_2[control_2.pos] cpia de elemento para matriz

Destination array_1[control_2.pos]

Quando habilitada, a instruo FAL copia value_1 nas primeiras 10 posies da segunda dimenso de array_2.

Expresso value_1

Destination 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]

Destination value_1

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

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] operao aritmtica: (elemento + elemento) para matriz

Destination array_1[control_2.pos]

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

Destination 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

Destination array_3[control_1.pos]

Publicao 1756-RM003D-PT-P - Junho 2001

7-16

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

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] operao aritmtica: (matriz matriz) para elemento

Destination value_2

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]

Destination value_1

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

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: + * / ** ABS ACS AND ASN ATN COS DEG FRD Descrio: adio subtrao/negativo multiplicao diviso expoente (x elevado a y) valor absoluto arco co-seno bitwise AND arco seno arco tangente co-seno radianos para graus BCD para inteiro timo: DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL REAL DINT REAL REAL REAL DINT, REAL DINT MOD NOT OR RAD SIN SQR TAN TOD TRN XOR Operador: LN LOG Descrio: natural log logaritmo na base de 10 mdulo-diviso bitwise complemento bitwise OR graus para radianos seno raiz quadrada tangente inteiro para BCD truncado bitwise exclusivo OR timo: REAL REAL DINT, REAL DINT DINT DINT, REAL REAL DINT, REAL REAL DINT DINT, REAL DINT

Publicao 1756-RM003D-PT-P - Junho 2001

7-18

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

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:
Para operadores que operam com: um operando dois operandos Use esse formato: operador (operando) operand_a operator operand_b Exemplos: ABS(tag_a)

tag_b + 5 tag_c AND tag_d (tag_e ** 2) MOD (tag_f / tag_g)

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. 3. 4. 5. 6. 7. 8. 9. () ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG, RAD, SIN, SQR, TAN, TOD, TRN **

(negativo), NOT
*, /, MOD

(subtrao), +
AND XOR OR

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-19

Comparao e Busca de Arquivo (FSC)

Linguagens Disponveis:

Lgica Ladder

A instruo FSC compara valores em uma matriz, elemento por elemento.

Operandos de Lgica Ladder:


FSC File Search/Compare Control Length Position Mode Expression ? ? ? ? ? EN DN ER

Operando: Control Length Position

Tipo: CONTROL DINT DINT DINT

Formato: tag imediato imediato imediato

Descrio: estrutura de controle para a operao nmero de elementos na matriz a serem manipulados offset na matriz valor inicial normalmente 0 como distribuir a operao selecione INC, ALL ou insira um nmero uma expresso composta por tags e/ou valores imediatos separados por operadores

42577

Mode

Expresso

SINT INT DINT REAL

imediato tag

Um tag SINT ou INT convertido para um valor DINT pela extenso de sinal.

Estrutura:
Mnemnico: .EN .DN .ER .IN .FD .LEN .POS Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo FSC est habilitada. O bit Executado energizado quando a instruo operou no ltimo elemento (.POS = .LEN). O bit de erro no modificado. O bit inibido indica que a instruo FSC detectou uma comparao verdadeira. necessrio zerar esse bit para continuar a operao de busca. O bit encontrado indica que a instruo FSC detectou uma comparao verdadeira. O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera. A posio contm a posio do elemento atual que a instruo est acessando.

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.


Publicao 1756-RM003D-PT-P - Junho 2001

7-20

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

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: .POS < 0 ou .LEN < 0 Tipo de falha: 4 Cdigo de falha: 21

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-21

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa Ao: A sada da condio da linha definida como falsa.

examinar bit .DN

bit .DN = 0

modo INC sim

no

bit interno desenergizado

bit .DN = 1

bit .EN desenergizado bit .ER desenergizado bit .DN desenergizado valor .POS desenergizado

bit .EN desenergizado

modo ALL sim

no

.LEN < 0 ou .POS < 0 no

sim

falha grave

.POS = .POS + 1

sim

.LEN = 0 no

.POS = 0 no .POS = .POS 1

sim no

.POS < .LEN sim

modo .LEN> bit .DN energizado bit .EN energizado sim bit .DN energizado bit .EN desenergizado modo numrico

no

modo .LEN>

pgina 7-14

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

7-22

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Condio: entrada da condio da linha for verdadeira

Ao:

.LEN < 0 ou .POS < 0 examinar bit .ER bit .ER = 1 examinar bit .IN bit .DN = 1 bit .IN = 0 sim bit .DN energizado bit .EN energizado examinar bit .DN bit .DN = 1 comum bit .DN = 0 bit .ER = 0 no bit .DN = 0 .LEN = 0

sim

pgina 7-27
falha grave modo numrico no

no

modo INC sim

no modo ALL sim

modo INC

modo ALL

pgina 7-25

pgina 7-26

loop_count = loop_count 1

loop_count < 0 sim

no

.POS = .POS + 1

avaliar comparao

correspondncia sim .POS = .POS + 1 bit .EN energizado bit .FD energizado bit .IN energizado

no

.POS = .LEN sim bit .DN energizado bit .EN energizado

no

.POS = .POS + 1

sada da condio da linha definida como

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-23

Condio:
modo INC

Ao:

bit .EN = 1 examinar bit .EN bit .EN = 0

examinar bit interno bit = 0

bit = 1 .POS = .POS + 1

bit interno energizado

.POS .LEN no bit .EN energizado loop_count = 1 .POS = .POS 1

sim

.POS = 0 no .POS = .POS 1

sim

bit .DN energizado bit .EN energizado comum sada da condio da linha definida como verdadeira

pgina 7-24
fim

Publicao 1756-RM003D-PT-P - Junho 2001

7-24

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Condio:
modo ALL

Ao:

bit .EN = 0 examinar bit .EN bit .EN = 1

examinar bit interno bit = 0

bit = 1

.POS = .POS + 1

bit .EN energizado bit .FD desenergizado

.POS .LEN no

sim

.POS = 0 no .POS = .POS 1

sim

loop_count = .LEN .POS .POS = .POS 1

bit .DN energizado bit .EN energizado comum

sada da condio da linha definida como verdadeira

pgina 7-24
fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-25

Condio:
modo numrico

Ao:

bit .EN = 1 examinar bit .EN bit .EN = 0

.POS = .POS + 1

examinar bit interno bit = 0

bit = 1

bit interno energizado

.POS .LEN no

sim

.POS = 0 no .POS = .POS 1

sim

modo .LEN>

no

modo .LEN sim bit .DN energizado bit .EN energizado sada da condio da linha definida como verdadeira

bit .EN energizado loop_count = .LEN .POS bit .FD desenergizado .POS = .POS 1

fim

modo loop_count no

sim

comum

pgina 7-24

bit .EN energizado loop_count = mode

Publicao 1756-RM003D-PT-P - Junho 2001

7-26

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Exemplo de Lgica Ladder:


exemplo 1 buscar uma correspondncia entre duas matrizes

Quando habilitada, a instruo FSC compara cada um dos 10 primeiros elementos em array_1 com os elementos correspondentes em array_2.

array_1 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000001111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111

array_2 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 11111111111111110000000000000000 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111

control_3.pos 0 1 2 3 4 5 6 7 8 9 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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-27

exemplo 2 buscar uma correspondncia em uma matriz

Quando habilitada, a instruo FSC compara MySearchKey com 10 elementos em array_1. MySearchKey referncia 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 11111111111111110000000000000000 11111111111111110000000000000000 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 11111111111111111111111111111111 control_3.pos 0 1 2 3 4 5 6 7 8 9 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.

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.

Publicao 1756-RM003D-PT-P - Junho 2001

7-28

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Operadores vlidos
Operador: + * / = < <= > >= <> ** ABS ACS AND ASN ATN COS Descrio: adio subtrao/negativo multiplicao diviso igual menor do que menor ou igual a maior do que maior ou igual a diferente de expoente (x elevado a y) valor absoluto arco co-seno bitwise AND arco seno arco tangente co-seno timo: DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL DINT, REAL REAL DINT REAL REAL REAL MOD NOT OR RAD SIN SQR TAN TOD TRN XOR Operador: DEG FRD LN LOG Descrio: radianos para graus BCD para inteiro natural log logaritmo na base de 10 mdulo-diviso bitwise complemento bitwise OR graus para radianos seno raiz quadrada tangente inteiro para BCD truncado bitwise exclusivo OR timo: DINT, REAL DINT REAL REAL DINT, REAL DINT DINT DINT, REAL REAL DINT, REAL REAL DINT DINT, REAL DINT

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:
Para operadores que operam com: um operando dois operandos Use esse formato: operador (operando) operand_a operator operand_b Exemplos: ABS(tag_a)

tag_b + 5 tag_c AND tag_d (tag_e ** 2) MOD (tag_f / tag_g)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

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. 3. 4. 5. 6. 7. 8. 9. 10. () ABS, ACS, ASN, ATN, COS, DEG, FRD, LN, LOG, RAD, SIN, SQR, TAN, TOD, TRN **

(negativo), NOT
*, /, MOD <, <=, >, >=, =

(subtrao), +
AND XOR OR

Publicao 1756-RM003D-PT-P - Junho 2001

7-30

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Cpia de Arquivo (COP) Cpia Sncrona de Arquivo (CPS)

Linguagens Disponveis:

Lgica Ladder

As instrues COP e CPS copiam o(s) valor(es) em Source para Destination. Source permanece inalterado.

Operandos de Lgica Ladder:


COP Copy File Source Dest Length

Operando
? ? ?

Tipo: SINT INT DINT REAL estrutura SINT INT DINT REAL estrutura DINT

Formato: tag

Descrio: elemento inicial para cpia Importante: os operandos Source e Destination devem ter o mesmo tipo de dado ou podem ocorrer resultados inesperados. 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. nmero de elementos em Destination a serem copiados

Source

CPS Synchronous Copy File Source ? Dest ? Length ?


42577

Destination

tag

Length

imediato tag

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 mudar os dados de fonte ou destino:
Se a fonte ou destino for: E voc quiser: previnir que os dados mudem durante a operao de cpia Ento selecione: CPS Notas:

tag produzido tag consumido dados de E/S dados que outra tarefa pode sobrescrever

Tarefas que tentam interromper uma instruo CPS so atrasadas at que a instruo seja concluda. Para estimar o tempo de execuo da instruo CPS, consulte Manual do Usurio do Sistema ControlLogix, publicao 1756-UM001.

permitir que os dados mudem durante a operao de cpia nenhum dos acima

COP COP

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-31

O nmero de bytes copiados : Contagem de Byte = Length (nmero de bytes em tipos de dados em Destination) ATENO Se a contagem de byte for maior do que o comprimento de Source, dados no previstos sero copiados para os elementos restantes.

As instrues COP e CPS operam na memria de dados contgua e realizam uma cpia de memria byte por byte, o que requisita um entendimento do layout da memria do controlador. As instrues COP e CPS no escrevem aps o final da matriz. Se Length 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 Execuo de Lgica Ladder:

Publicao 1756-RM003D-PT-P - Junho 2001

7-32

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira

Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.
end_address = start_address + (Length nmero de bytes em um elemento em destination)

end_address > fim da matriz destination

sim

end_address = fim da matriz destination

no

source_address = Source

destination_address = end_address

sim

no

copiar os dados de source_address para destination _address sada da condio da linha definida como verdadeira source_address = source _address + 1 fim

destination_address = destination_address + 1

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-33

Exemplo de Lgica Ladder:


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 A matriz project_data (100 elementos) armazena uma variedade de valores que mudam em momentos diferentes na aplicao. Para enviar uma imagem completa de project_data a uma instncia por vez para outro controlador, a instruo CPS copia project_data para produced_array. Enquanto a instruo CPS copia os dados, nenhuma atualizao de E/S ou outras tarefas podem mudar os dados. O tag produced_array produz os dados em uma rede ControlNet para o consumo por outros controladores. Para usar a mesma imagem de dados (ou seja, uma cpia sncrona de dados), o controladore consumidor usa uma instruo CPS para copiar os dadps de um tag consumido para outro tag para uso na aplicao.

CPS Synchronous Copy File Source project_data[0] Dest produced_array[0] Length 100
42578

exemplo 4
CPS Synchronous Copy File Source Local:0:I.Data[0] Dest input_buffer[0] Length 20
42578

Local:0:I.Data aramzena os dados de entrada para a rede DeviceNet que est conectada ao mdulo 1756-DNB no slot 0. Para sincronizar as entradas com a aplicao, a instruo CPS copia os dados de entrada para input_buffer. Enquanto a instruo CPS copia os dados, nenhuma atualizao de E/S pode mudar os dados. Conforme a aplicao executada, ela usa os dados de entrada em input_buffer para suas entradas.

Publicao 1756-RM003D-PT-P - Junho 2001

7-34

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

exemplo 5

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.

array_timer[0]

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]

array_timer[1]

array_timer[2]

array_timer[3]

array_timer[4] array_timer[9] Finalmente, a instruo copia os valores timer[9] em timer[10]

array_timer[10]

Execuo do Bloco de Funo: Estas instrues no esto disponveis no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-35

Preenchimento de Arquivo (FLL)

Linguagens Disponveis:

Lgica Ladder

A instruo FLL preenche os elementos de uma matriz com o valor Source. Source permanece inalterado.

Operandos de Lgica Ladder:


Operando: Source Tipo: SINT INT DINT REAL SINT INT DINT REAL estrutura Formato: imediato tag Descrio: elemento para cpia Importante: os operandos Source e Destination devem ter o mesmo tipo de dado ou podem ocorrer resultados inesperados. 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. nmero de elementos a serem preenchidos

Destination

tag

Length

DINT

imediato

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: O nmero de bytes preenchidos :
Contagem de Byte = Length (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.

Publicao 1756-RM003D-PT-P - Junho 2001

7-36

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Para obter resultados melhores, Source e Destination devem ser do mesmo tipo. Se voc quiser preencher uma estrutura, use a instruo COP (consulte o exemplo 3, na pgina 7-36). Se voc quiser misturar os tipos de dados para Source e Destination, os elementos em Destination so preenchidos com os valores convertidos de Source.
Se Source for: SINT, INT, DINT ou REAL SINT, INT, DINT ou REAL SINT, INT, DINT ou REAL SINT, INT, DINT ou REAL SINT INT DINT REAL E Destination for: SINT INT DINT REAL estrutura estrutura estrutura estrutura Source convertido para: SINT INT DINT REAL SINT (no convertido) INT (no convertido) DINT (no convertido) REAL (no convertido)

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-37

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira
end_address = start_address + (Length nmero de bytes em um elemento em destination)

Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

end_address > fim da matriz destination

sim

end_address = fim da matriz destination

no

source_address = Source

destination_address = end_address

sim

no

copiar os dados de source_address para destination _address

destination_address = destination_address + 1

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

7-38

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Exemplo de Lgica Ladder:

Quando habilitada, a instruo FLL copia o valor em value_1 para dest_1.

Tipo de dados (value_1) Source: SINT DINT SINT REAL SINT

Valor (value_1) Source: 16#80 (128) 16#1234 5678 16#01 2.0 16#01

Destination (dest_1) tipo de dados: DINT SINT REAL INT TIMER

Destination (dest_1) valor depois de FLL: 16#FFFF FF80 (128) 16#78 1.0 16#0002 16#0101 0101 16#0101 0101 16#0101 0101 16#0001 0001 16#0001 0001 16#0001 0001 16#0000 0001 16#0000 0001 16#0000 0001

INT

16#0001

TIMER

DINT

16#0000 0001

TIMER

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-39

Mdia de Arquivo (AVE)

Linguagens Disponveis:

Lgica Ladder

A instruo AVE calcula a mdia de um conjunto de valores.

Operandos de Lgica Ladder:


Operando Array Tipo: SINT INT DINT REAL DINT Formato: tag da matriz Descrio: encontre a mdia dos valores nessa matriz especifique o primeiro elemento do grupo de elementos para a mdia no use CONTROL.POS em subscrito 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] resultado da operao

Dimension to vary

imediato (0, 1, 2)

Destination

SINT INT DINT REAL CONTROL DINT DINT

tag

Control Length Position

tag imediato imediato

estrutura de controle para a operao nmero de elementos da matriz para a mdia elemento atual na matriz valor inicial normalmente 0

Estrutura:
Mnemnico: .EN .DN .ER Tipo de Dados: BOOL BOOL BOOL Descrio: O bit habilitado indica que a instruo AVE est habilitada. O bit executado energizado quando a instruo operou no ltimo elemento na Matriz (.POS = .LEN). 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. O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera. A posio contm a posio do elemento atual que a instruo est acessando.

.LEN .POS

DINT DINT

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

7-40

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Descrio: A instruo AVE calcula a mdia de um conjunto de valores.


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.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha:


Uma falha grave ocorrer se: .POS < 0 ou .LEN < 0 o operando Dimension to vary no existe para a matriz especificada Tipo de falha: 4 4 Cdigo de falha: 21 20

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-41

Execuo de Lgica Ladder:


Condio: pr-varredura Ao: 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 falsa

examinar bit .DN

bit .DN = 0

bit .DN = 1

bit .EN desenergizado bit .ER desenergizado bit .DN desenergizado valor .POS desenergizado

sada da condio da linha definida como falsa

fim

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.

Publicao 1756-RM003D-PT-P - Junho 2001

7-42

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Exemplo de Lgica Ladder:


exemplo 1 array_dint DINT[4,5]

dimenso 1 0 20 15 10 5 1 19 14 9 4 2 18 13 8 3 3 17 12 7 2 4 16 11 6 1
os

b su ri t sc

0 dimenso 0 1 2 3

AVE = 19 + 14 + 9 + 4 = 46 = 11.5 ---------------------------------------4 4


dint_ave = 12

exemplo 2 array_dint DINT[4,5]

dimenso 1 0 20 15 10 5 1 19 14 9 4 2 18 13 8 3 3 17 12 7 2 4 16 11 6 1
os

b su ri t sc

0 dimenso 0 1 2 3

AVE = 5 + 4 + 3 + 2 + 1 = 15 = 3 ------------------------------------------5 5
dint_ave = 3

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-43

Classificao de Arquivo (SRT)

Linguagens Disponveis:

Lgica Ladder

A instruo SRT classifica um conjunto de valores em uma dimenso (Dim to vary) da Matriz em ordem crescente.

Operandos de Lgica Ladder:


Operando: Array Tipo: SINT INT DINT REAL DINT Formato: tag da matriz Descrio: matriz para classificao especifique o primeiro elemento do grupo de elementos para classificao no use CONTROL.POS em subscrito 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] estrutura de controle para a operao nmero de elementos da matriz para classificao elemento atual na matriz valor inicial normalmente 0

Dimension to vary

imediato (0, 1, 2)

Control Length Position

CONTROL DINT DINT

tag imediato imediato

Estrutura:
Mnemnico: .EN .DN .ER .LEN .POS Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo SRT est habilitada. O bit executado energizado quando os elementos especificados forem classificados. O bit de erro energizado quando uma das condies .LEN < 0 ou .POS < 0 tambm gerar uma falha grave. O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera. A posio contm a posio do elemento atual que a instruo est acessando.

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: A instruo SRT classifica um conjunto de valores em uma dimenso
(Dim to vary) da Matriz em ordem crescente. 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.

Publicao 1756-RM003D-PT-P - Junho 2001

7-44

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha:


Uma falha grave ocorrer se: .POS < 0 ou .LEN < 0 o operando Dimension to vary no existe para a matriz especificada A instruo tenta acessar os dados localizados fora dos limites da matriz. Tipo de falha: 4 4 4 Cdigo de falha: 21 20 20

Execuo de Lgica Ladder:


Condio: pr-varredura Ao: 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 falsa

examinar bit .DN

bit .DN = 0

bit .DN = 1

bit .EN desenergizado bit .ER desenergizado bit .DN desenergizado valor .POS desenergizado

sada da condio da linha definida como falsa

fim

entrada da condio da linha for verdadeira

A instruo SRT classifica os elementos especificados da matriz em ordem crescente.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-45

Exemplo de Lgica Ladder:


exemplo 1 int _array DINT[4,5]

Antes
dimenso 1 0 20 15 10 5 1 19 14 9 4 2 18 13 8 3 3 17 12 7 2 4 16 11 6 1
os b su ri t sc

Depois
dimenso 1 0 20 15 10 5 1 19 14 9 4 3 8 13 18 2 3 17 12 7 2 4 16 11 6 1
b su os rit sc

0 dimenso 0 1 2 3

0 dimenso 0 1 2 3

exemplo 2
int _array DINT[4,5]

Antes
dimenso 1 0 20 15 10 5 1 19 14 9 4 2 18 13 8 3 3 17 12 7 2 4 16 11 6 1
os su t cri bs

Depois
dimenso 1 0 20 15 6 5 1 19 14 7 4 2 18 13 8 3 3 17 12 9 2 4 16 11 10 1
os su t cri bs

0 dimenso 0 1 2 3

0 dimenso 0 1 2 3

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

7-46

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Desvio Padro do Arquivo (STD)

Linguagens Disponveis:

Lgica Ladder

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:


Operando: Array Tipo: SINT INT DINT REAL Formato: tag da matriz Descrio: 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 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] resultado da operao estrutura de controle para a operao nmero de elementos da matriz a serem usados no clculo do desvio padro elemento atual na matriz valor inicial normalmente 0

Um tag SINT ou INT convertido para um valor DINT pela extenso de sinal. Dimension to vary DINT imediato (0, 1, 2)

Destination Control Length Position

REAL CONTROL DINT DINT

tag tag imediato imediato

Estrutura:
Mnemnico: .EN .DN .ER Tipo de Dados: BOOL BOOL BOOL Descrio: O bit habilitado indica que a instruo STD est habilitada. O bit executado energizado quando o clculo concludo. 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. O comprimento especifica o nmero dos elementos na matriz na qual a instruo opera. A posio contm a posio do elemento atual que a instruo est acessando.

.LEN .POS

DINT DINT

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-47

Descrio: O desvio padro calculado de acordo com esta frmula: N 2 [ X( start + i ) AVE ] i = 1 ------------------------------------------------------------------(N 1)

Desvio Padro =

Onde: start = subscrito dimension-to-vary do operando array xi = elemento da tag na matriz

N = nmero de elementos especificados na matriz AVE =

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

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.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha:


Uma falha grave ocorrer se: .POS < 0 ou .LEN < 0 o operando Dimension to vary no existe para a matriz especificada Tipo de falha: 4 4 Cdigo de falha: 21 20

Publicao 1756-RM003D-PT-P - Junho 2001

7-48

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Execuo de Lgica Ladder:


Condio: pr-varredura Ao: 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 falsa

examinar bit .DN

bit .DN = 0

bit .DN = 1

bit .EN desenergizado bit .ER desenergizado bit .DN desenergizado valor .POS desenergizado

sada da condio da linha definida como falsa

fim

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-49

Exemplo de Lgica Ladder:


exemplo 1 array_dint DINT[4,5] dimenso 1
su t cri bs os

0 20 15 10 5

1 19 14 9 4

2 18 13 8 3

3 17 12 7 2

4 16 11 6 1

0 dimenso 0 1 2

AVE = 16 + 11 + 6 + 1 = 34 = 8.5 ---------------------------------------4 4


2 2 2

STD =

16 8.5 + 11 8.5 + 6 8.5 + 1 8.5 -------------------------------------------------------------------------------------------------------------------------- = 6.454972 4 1

real_std = 6,454972
exemplo 2 array_dint DINT[4,5] dimenso 1
b su rit sc os

0 20 15 10 5

1 19 14 9 4

2 18 13 8 3

3 17 12 7 2

4 16 11 6 1

0 dimenso 0 1 2

20 + 19 + 18 + 17 + 16 AVE = ------------------------------------------------------ = 90 = 18 ----5 5


2 2 2

STD =

20 18 + 19 18 + 18 18 + 17 18 + 16 18 ----------------------------------------------------------------------------------------------------------------------------------------------------------- = 1.581139 5 1

real_std = 1,581139

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

7-50

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Tamanho em Elementos (SIZE)

Linguagens Disponveis:

Lgica Ladder

A instruo SIZE encontra o tamanho de uma dimenso de uma matriz.

Operandos de Lgica Ladder:


SIZE Size in Elements Source Dim. To Vary Size

Operando:
? ?? ? ? ??
42622

Tipo:

Formato:

Insira: primeiro elemento de uma matriz na qual a instruo deve ser operada

Source

SINT tag da INT matriz DINT REAL estrutura tipo de string DINT imediato (0, 1, 2)

Dimenso a ser Variada

dimenso a ser usada: Para o tamanho da: primeira dimenso segunda dimenso terceira dimenso Insira: 0 1 2

Tamanho

SINT INT DINT REAL

tag

tag para armazenar o nmero de elementos na dimenso especfica da matriz

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a entrada da condio da linha for verdadeira, a instruo
SIZE encontra o nmero de elementos (tamanho) na dimenso designada da matriz Source e coloca o resultado no operando Size.

A instruo encontra o tamanho de uma dimenso de uma matriz. A instruo operada em uma: matriz matriz em uma estrutura matriz que parte de uma matriz maior
Em Source, especifique o primeiro elemento da matriz na qual a instruo deve ser operada.

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-51

Execuo de Lgica Ladder:


Condio: pr-varredura a entrada da condio da linha falsa a entrada da condio da linha verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executada. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Exemplo 1
SIZE Size in Elements Source array_a[0] 255 Dim. To Vary 0 Size array_a_size 10
42623

Encontra o nmero de elementos na dimenso 0 (primeira dimenso) de array_a. Armazena o tamanho em array_a_size. Neste exemplo, a dimenso 0 de array_a tem 10 elementos.

Exemplo 2
SIZE Size in Elements Source string_1.DATA[0] '$00' Dim. To Vary 0 Size string_1_size 82
42623

Encontra o nmero de elementos no membro DATA de string_1, que um string. Armazena o tamanho em string_1_size. Neste exemplo, o membro DATA de string_1 tem 82 elementos. (O string usa o tipo de dados STRING padro.) Como cada elemento mantm um caracter, string_1 pode conter at 82 caracteres.

Exemplo 3
SIZE Size in Elements Source strings_a[0].DATA[0] '$00' Dim. To Vary 0 Size data_size_a 24
42623

Strings_a uma matriz de estruturas de string. A instruo SIZE encontra o nmero de elementos no membro DATA da estrutura de string e armazena o tamanho em data_size_a. Neste exemplo, o membro DATA tem 24 elementos. (A estrutura de string tem um comprimento especificado pelo usurio de 24).

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

7-52

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-53

Publicao 1756-RM003D-PT-P - Junho 2001

7-54

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

7-55

Publicao 1756-RM003D-PT-P - Junho 2001

7-56

Instrues Array (File/Miscellaneous) (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

Instrues de Matriz (Arquivo)/Deslocamento


(BSL, BSR, FFL, FFU, LFL, LFU)

Introduo

Use as instrues de deslocamento/matriz (arquivo) para modificar a localizao dos dados dentro das matrizes.
Se voc quiser: carregar bits, deslocar bits e descarregar bits de uma matriz de bits, um bit de cada vez. carregar e descarregar os valores na mesma seqncia. carregar e descarregar os valores em ordem reversa. Use esta instruo: BSL BSR FFL FFU LFL LFU Consulte pgina: 8-2 8-6 8-10 8-16 8-22 8-28

possvel misturar os tipos de dados, mas podem ocorrer perda de preciso e erro de arredondamento. Para instrues de lgica ladder a rel, 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.

Publicao 1756-RM003D-PT-P - Junho 2001

8-2

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Deslocamento de Bit para a Esquerda (BSL)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo BSL desloca os bits especificados dentro da Matriz uma posio para a esquerda.

Operandos de Lgica Ladder a Rel:


Operando Array Tipo: DINT Formato: tag da matriz Descrio: matriz a ser modificada especifique o primeiro elemento do grupo de elementos no use CONTROL.POS no subscrito estrutura de controle para a operao bit a ser deslocado nmero de bits da matriz a ser deslocada

Control Bit Source Length

CONTROL BOOL DINT

tag tag imediato

Estrutura:
Mnemnico: .EN .DN .UL .ER .LEN Tipo de Dados: BOOL BOOL BOOL BOOL DINT Descrio: O bit habilitado indica que a instruo BSL est habilitada. O bit executado energizado para indicar que os bits foram deslocados uma posio para a esquerda. O bit de descarga a sada da instruo. O bit .UL armazena o status do bit que foi deslocado fora da faixa dos bits. O bit de erro energizado quando .LEN < 0. O comprimento especifica o nmero de bits na matriz a ser deslocado.

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 Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-3

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao: 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. 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

entrada da condio da linha for verdadeira

examinar bit .EN

bit .EN = 1

bit .EN = 0 bit .EN energizado

.LEN = 0

sim

bit .DN energizado

no examinar bit source .LEN < 0 sim bit .ER energizado .source bit = 0 no bit .UL energizado deslocar matriz da esquerda uma posio matriz Bit Source .source bit = 1 bit .UL permanece energizado

bit .UL

bit .DN energizado .POS = .LEN

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

8-4

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Exemplo de Lgica Ladder a Rel:


exemplo 1

9 8 7 6 5 4 3 2 1 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 antes do deslocamento esses bits foram 0 deslocados esquerda bit .UL 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

1 input_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.

exemplo 2

31

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 1 esses bits foram deslocados esquerda input_1 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 array_dint[1]

0 bit .UL

esses bits foram deslocados esquerda

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-5

Deslocamento de Bit para a Direita (BSR)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo BSR desloca os bits especificados dentro da Matriz uma posio para a direita.

Operandos de Lgica Ladder a Rel:


Operando: Array Tipo: DINT Formato: tag da matriz Descrio: matriz a ser modificada especifica o elemento onde o deslocamento deve comear no use CONTROL.POS no subscrito estrutura de controle para a operao bit a ser deslocado nmero de bits da matriz a ser deslocada

Control Bit Source Length

CONTROL BOOL DINT

tag tag imediato

Estrutura:
Mnemnico: .EN .DN .UL .ER .LEN Tipo de Dados: BOOL BOOL BOOL BOOL DINT Descrio: O bit habilitado indica que a instruo BSR est habilitada. O bit executado energizado para indicar que os bits foram deslocados uma posio para a direita. O bit de descarga a sada da instruo. O bit .UL armazena o status do bit que foi deslocado fora da faixa dos bits. O bit de erro energizado quando .LEN < 0. O comprimento especifica o nmero de bits na matriz a ser deslocado.

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 Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

8-6

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao: 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. 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

entrada da condio da linha for verdadeira

examinar bit .EN

bit .EN = 1

bit .EN = 0 bit .EN energizado

.LEN = 0

sim

bit .DN energizado

no examinar bit source .LEN < 0 sim bit .ER energizado .source bit = 0 no bit .UL energizado deslocar matriz da esquerda uma posio Bit Source matriz .source bit = 1 bit .UL permanece energizado

bit .UL

bit .DN energizado .POS = .LEN

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-7

Exemplo de Lgica Ladder a Rel:


exemplo 1

9 8 7 6 5 4 3 2 1 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 antes do deslocamento 1 input_1 esses bits foram deslocados direita 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

0 bit .UL

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.

exemplo 2

31

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 0 bit .UL 31 array_dint[1] 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

esses bits foram deslocados direita

1 input_1

esses bits foram deslocados direita

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.

Publicao 1756-RM003D-PT-P - Junho 2001

8-8

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Carga FIFO (FFL)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo FFL copia o valor Source para FIFO.

Operandos de Lgica Ladder a Rel:


Operando: Source Tipo: SINT INT DINT REAL tipo de string estrutura Formato: imediato tag Descrio: 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 tipo de string estrutura CONTROL tag da matriz FIFO a ser modificado especifique o primeiro elemento de FIFO no use CONTROL.POS no subscrito

Control

tag

estrutura de controle para a operao geralmente usa o mesmo CONTROL, conforme associado a FFU nmero mximo de elementos que FIFO pode controlar de uma vez prxima localizao em FIFO onde a instruo carrega os dados. valor inicial normalmente 0

Length Position

DINT DINT

imediato imediato

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:
Mnemnico: .EN .DN .EM .LEN .POS Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo FFL est habilitada. O bit executado energizado para indicar que FIFO est cheio (.POS=LEN). O bit .DN inibe a carga de FIFO at .POS < .LEN. O bit vazio indica que FIFO est vazio. Se .LEN 0 ou .POS < 0, tanto o bit .EM quanto o bit .DN esto energizados. O comprimento especifica o nmero mximo de elementos que FIFO pode controlar de uma vez. A posio identifica a localizao em FIFO onde a instruo carregar o prximo valor.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-9

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: (elemento de incio + .POS) > tamanho da matriz de FIFO Tipo de falha: 4 Cdigo de falha: 20

Publicao 1756-RM003D-PT-P - Junho 2001

8-10

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao:

o bit .EN energizado para evitar uma carga falsa quando a varredura comear

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-11

Condio: entrada da condio da linha for falsa

Ao:

bit .EN desenergizado

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

8-12

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Condio: entrada da condio da linha for verdadeira

Ao:

examinar bit .EN .EN = 1

.EN = 0

bit .EN energizado

.LEN < 0 no

sim

.LEN < 0 no

sim

.POS < 0

sim

no bit .EM energizado .DN energizado

.POS < 0 no

sim

bit .EM desenergizado bit .DN desenergizado .POS = .POS + 1

bit .EM desenergizado bit .DN desenergizado

bit .EM energizado .DN energizado .POS .LEN no sim bit .DN energizado

.POS = 0 no

sim

bit .EM energizado .POS ou .LEN > tamanho da matriz no sim falha grave

.POS .LEN no

sim

bit .DN energizado sim

.POS > .LEN no

.POS = .POS 1

FIFO[.POS 1] = source

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-13

Exemplo de Lgica Ladder a Rel:

antes da carga FIFO array_dint[0] 00000 11111 22222 33333 44444 array_dint[5] 00000 00000 00000 00000 00000 control_1.pos = 5 value_1 = 55555

depois da carga FIFO 00000 11111 22222 33333 44444 55555 00000 00000 00000 00000 control_1.pos = 6

Quando habilitada, a instruo FFL carrega value_1 para a prxima posio em FIFO, que array_dint[5] nesse exemplo.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

8-14

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Descarga FIFO (FFU)

Linguagens Disponveis:

Lgica Ladder a Rel

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 a Rel:


Operando: FIFO Tipo: SINT INT DINT REAL tipo de string estrutura SINT INT DINT REAL tipo de string estrutura Formato: tag da matriz Descrio: FIFO a ser modificado especifique o primeiro elemento de FIFO no use CONTROL.POS no subscrito

Destination

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 nmero mximo de elementos que FIFO pode controlar de uma vez. prxima localizao em FIFO onde a instruo descarrega os dados. valor inicial normalmente 0

Length Position

DINT DINT

imediato imediato

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:
Mnemnico: . EU .DN .EM .LEN .POS Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: 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. O bit executado energizado para indicar que FIFO est cheio (.POS=LEN). O bit vazio indica que FIFO est vazio. Se .LEN 0 ou .POS < 0, os bits .EM e .DN estaro energizados. O comprimento especifica o nmero mximo de elementos em FIFO. A posio identifica o fim dos dados que foram carregados em FIFO.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-15

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 (FIFO). 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: Length > FIFO tamanho da matriz Tipo de falha: 4 Cdigo de falha: 20

Publicao 1756-RM003D-PT-P - Junho 2001

8-16

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao:

o bit .EU energizado para evitar uma descarga falsa quando a varredura comear

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-17

Condio: entrada da condio da linha for falsa

Ao:

bit .EU desenergizado

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

8-18

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Condio: entrada da condio da linha for verdadeira


.EU = 0

Ao:

examinar bit .EU .EU = 1

bit .EU energizado

.LEN < 0 no

sim

.LEN < 0

sim

.POS < 0 no

sim

no

.POS < 0 no

sim

bit .EM desenergizado bit .DN desenergizado

bit .EM energizado .DN energizado

bit .EM desenergizado bit .DN desenergizado

bit .EM energizado .DN energizado

.LEN > tamanho da matriz no

sim

falha grave

.POS = 0 no

sim

bit .EM energizado

.POS 1 no

sim

bit .EM energizado

.POS .LEN no

sim

.POS < 1 bit .DN energizado no .POS = .POS 1 Destination = FIFO[0] i=1

sim

Destination = 0

FIFO[i 1] = FIFO[i] i = i +1

sim i < .LEN no

sada da condio da linha definida como verdadeira fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-19

Exemplo de Lgica Ladder a Rel:

antes da descarga FIFO array_dint[0] 00000 11111 22222 33333 44444 array_dint[5] 55555 00000 00000 00000 00000 control_1.pos = 6

depois da descarga FIFO 11111 22222 33333 44444 55555 00000 00000 00000 00000 00000 control_1.pos = 5 value_2 = 00000

Quando habilitada, a instruo FFU descarrega array_dint[0] em value_2 e desloca os elementos restantes para array_dint.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

8-20

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Carga LIFO (LFL)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo LFL copia o valor Source para LIFO.

Operandos de Lgica Ladder a Rel:


Operando Source Tipo: SINT INT DINT REAL tipo de string estrutura Formato: imediato tag Descrio: 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 tipo de string estrutura CONTROL tag da matriz LIFO a ser modificado especifique o primeiro elemento de LIFO no use CONTROL.POS no subscrito

Control

tag

estrutura de controle para a operao geralmente usa o mesmo CONTROL, conforme a LFU associada nmero mximo de elementos que LIFO pode controlar de uma vez. prxima localizao em LIFO onde a instruo carrega os dados. valor inicial normalmente 0

Length Position

DINT DINT

imediato imediato

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:
Mnemnico: .EN .DN .EM .LEN .POS Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo LFL est habilitada. O bit executado energizado para indicar que LIFO est cheio (.POS = .LEN). O bit .DN inibe a carga de LIFO at .POS < .LEN. O bit vazio indica que LIFO est vazio. Se .LEN 0 ou .POS < 0, tanto o bit .EM quanto o bit .DN esto energizados. O comprimento especifica o nmero mximo de elementos que LIFO pode controlar de uma vez. A posio identifica a localizao em LIFO onde a instruo carregar o prximo valor.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-21

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: (elemento de incio + .POS) > tamanho da matriz de LIFO Tipo de falha: 4 Cdigo de falha: 20

Publicao 1756-RM003D-PT-P - Junho 2001

8-22

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao:

o bit .EN energizado para evitar uma carga falsa quando a varredura comear

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-23

Condio: entrada da condio da linha for

Ao:

bit .EN desenergizado

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

8-24

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Condio: entrada da condio da linha for verdadeira

Ao:

examinar bit .EN .EN = 1

.EN = 0

bit .EN energizado

.LEN < 0 no

sim

.LEN < 0 no

sim

.POS < 0

sim

no bit .EM energizado .DN energizado

.POS < 0 no

sim

bit .EM desenergizado bit .DN desenergizado .POS = .POS + 1

bit .EM desenergizado bit .DN desenergizado

bit .EM energizado .DN energizado .POS .LEN no sim bit .DN energizado

.POS = 0 no

sim

bit .EM energizado .POS ou .LEN > tamanho da matriz no sim falha grave

.POS .LEN no

sim

bit .DN energizado sim

.POS > .LEN no

.POS = .POS 1

LIFO[.POS 1] = source

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-25

Exemplo de Lgica Ladder a Rel:

antes da carga LIFO array_dint[0] 00000 11111 22222 33333 44444 array_dint[5] 00000 00000 00000 00000 00000 control_1.pos = 5 value_1 = 55555

depois da carga LIFO 00000 11111 22222 33333 44444 55555 00000 00000 00000 00000 control_1.pos = 6

Quando habilitada, a instruo LFL carrega value_1 para a prxima posio em LIFO, que array_dint[5] nesse exemplo.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

8-26

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Descarga LIFO (LFU)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo LFU descarrega o valor em .POS de LIFO e armazena 0 naquele local.

Operandos de Lgica Ladder a Rel:


Operando LIFO Tipo: SINT INT DINT REAL tipo de string estrutura SINT INT DINT REAL tipo de string estrutura Formato: tag da matriz Descrio: LIFO a ser modificado especifique o primeiro elemento de LIFO no use CONTROL.POS no subscrito

Destination

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 nmero mximo de elementos que LIFO pode controlar de uma vez. prxima localizao em LIFO onde a instruo descarrega os dados. valor inicial normalmente 0

Length Position

DINT DINT

imediato imediato

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:
Mnemnico: . EU .DN .EM .LEN .POS Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: 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. O bit executado energizado para indicar que LIFO est cheio (.POS=LEN). O bit vazio indica que LIFO est vazio. Se .LEN 0 ou .POS < 0, tanto o bit .EM quanto o bit .DN esto energizados. O comprimento especifica o nmero mximo de elementos que LIFO pode controlar de uma vez. A posio identifica o fim dos dados que foram carregados em LIFO.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-27

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 (LIFO). 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: Length > LIFO tamanho da matriz Tipo de falha: 4 Cdigo de falha: 20

Publicao 1756-RM003D-PT-P - Junho 2001

8-28

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao:

o bit .EU energizado para evitar uma descarga falsa quando a varredura comear

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-29

Condio: entrada da condio da linha for falsa

Ao:

bit .EU desenergizado

.LEN < 0

sim

no

.POS < 0

sim

no

.EM desenergizado bit .DN desenergizado

.EM energizado .DN energizado

.POS = 0

sim

.EM energizado

no

.POS .LEN

sim

.DN energizado

no

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

8-30

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Condio: entrada da condio da linha for verdadeira


.EU = 0

Ao:

examinar bit .EU .EU = 1

bit .EU energizado

.LEN < 0 no

sim

.LEN < 0

sim

.POS < 0 no

sim

no

.POS < 0 no

sim

bit .EM desenergizado bit .DN desenergizado

bit .EM energizado .DN energizado

bit .EM desenergizado bit .DN desenergizado

bit .EM energizado .DN energizado

.POS 1 no

sim

bit .EM energizado

.POS = 0 no

sim

bit .EM energizado

.POS < 1 no

sim

Destination = 0

.POS .LEN no

sim

.POS > .LEN bit .DN energizado no .POS = .POS 1

sim

.POS = .LEN

.LEN > tamanho da matriz no

sim

falha grave

Destination = LIFO[control.POS] LIFO[control.POS) = 0

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-31

Exemplo de Lgica Ladder a Rel:

antes da descarga LIFO array_dint[0] 00000 11111 22222 33333 44444 array_dint[5] 55555 00000 00000 00000 00000 control_1.pos = 6

depois da descarga LIFO 00000 11111 22222 33333 44444 00000 00000 00000 00000 00000 control_1.pos = 5 value_2 = 55555

Quando habilitada, a instruo LFU descarrega array_dint[5] em value_2.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

8-32

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

8-33

Publicao 1756-RM003D-PT-P - Junho 2001

8-34

Instrues de Matriz (Arquivo)/Deslocamento (BSL, BSR, FFL, FFU, LFL, LFU)

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

Instrues de Seqenciador
(SQI, SQO, SQL)

Introduo

Instrues de sequenciador monitoram operaes consistentes e repetitivas.


Se voc quiser: Detectar quando uma etapa est concluda. Estabelecer condies de sada para a prxima etapa. Carregar as condies de referncia nas matrizes de seqenciador Use esta instruo: SQI SQO SQL Consulte pgina: 9-2 9-7 9-12

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.

Publicao 1756-RM003D-PT-P - Junho 2001

9-2

Instrues de Seqenciador (SQI, SQO, SQL)

Entrada do Sequenciador (SQI)

Linguagens Disponveis:

Lgica Ladder

A instruo SQI detecta quando uma etapa concluda no par de seqenciador das instrues SQO/SQI.

Operandos de Lgica Ladder:


Operando Array Tipo: DINT Formato: tag da matriz Descrio: matriz do seqenciador especifica o primeiro elemento da matriz do seqenciador no use CONTROL.POS em subscrito quais bits devem ser bloqueados ou podem passar

Mask

SINT INT DINT

tag imediato

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 nmero de elementos na Matriz (tabela do seqenciador) a serem comparados posio atual na matriz valor inicial normalmente 0

Length Position

DINT DINT

imediato imediato

Estrutura:
Mnemnico: .ER .LEN .POS Tipo de Dados: BOOL DINT DINT Descrio: O bit de erro energizado quando .LEN 0, .POS < 0 ou .POS > .LEN. O comprimento especifica o nmero de etapas da matriz do seqenciador. A posio identifica o elemento que a instruo est comparando atualmente.

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

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.
Prefixo: 16# 8# 2# Descrio: hexadecimal por exemplo; 16#0F0F octal por exemplo; 8#16 binrio por exemplo; 2#00110011

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

9-4

Instrues de Seqenciador (SQI, SQO, SQL)

Execuo do Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

.LEN 0 .POS < 0 ou .POS > .LEN sim bit .ER energizado

no

bit .ER desenergizado.

no

Source mascarada= Array mascarada[.POS]

sim

sada da condio da linha definida como falsa

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Seqenciador (SQI, SQO, SQL)

9-5

Exemplo de Lgica Ladder:

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: Source Mask Array

Valores de exemplo (DINTs exibidos em binrio): xxxxxxxx xxxxxxxx xxxx0101 xxxx1010 00000000 00000000 00001111 00001111 xxxxxxxx xxxxxxxx xxxx0101 xxxx1010

Um 0 na mscara significa que o bit no foi comparado (identificado por xxxx nesse exemplo).

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

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-RM003D-PT-P - Junho 2001

Instrues de Seqenciador (SQI, SQO, SQL)

9-7

Sada do Sequenciador (SQO)

Linguagens Disponveis:

Lgica Ladder

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:


Operando Array Tipo: DINT Formato: Descrio: tag da matriz matriz do seqenciador especifica o primeiro elemento da matriz do seqenciador no use CONTROL.POS em subscrito tag imediato quais bits devem ser bloqueados ou podem passar

Mask

SINT INT DINT

Um tag SINT ou INT convertido para um valor DINT pela extenso de sinal. Destination Control DINT CONTROL tag tag dados de sada da matriz de seqenciador estrutura de controle para a operao geralmente usa o mesmo CONTROL das instrues SQI e SQL nmero de elementos na Matriz (tabela do seqenciador) a serem colocados na sada posio atual na matriz valor inicial normalmente 0

Length Position

DINT DINT

imediato imediato

Estrutura:
Mnemnico: .EN .DN .ER .LEN .POS Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo SQO est habilitada. O bit executado energizado quando todos os elementos especificados foram movidos para Destination. O bit de erro energizado quando .LEN 0, .POS < 0 ou .POS > .LEN. O comprimento especifica o nmero de etapas da matriz do seqenciador. A posio identifica o elemento que o controlador est manipulando atualmente.

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. Funo: 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

Publicao 1756-RM003D-PT-P - Junho 2001

9-8

Instrues de Seqenciador (SQI, SQO, 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.
Prefixo: 16# 8# 2# Descrio: hexadecimal por exemplo; 16#0F0F octal por exemplo; 8#16 binrio por exemplo; 2#00110011

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Ladder:
Condio: pr-varredura Ao: O bit .EN energizado para evitar uma carga falsa quando a varredura do programa comear. A sada da condio da linha definida como falsa. O bit .EN desenergizado. A sada da condio da linha definida como falsa.

entrada da condio da linha for falsa

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Seqenciador (SQI, SQO, SQL)

9-9

Condio: entrada da condio da linha for verdadeira

Ao:

.LEN 0 ou .POS < 0 sim

no

examinar bit .EN

.EN = 0

bit .EN energizado bit .ER desenergizado. bit .DN energizado.

.EN = 1

.POS = .LEN

no

.POS .LEN no .POS = .POS + 1

sim

.POS = 1

sim bit .DN energizado.

valor .POS renova no

sim

ir para erro

.POS = .LEN

sim

bit .DN energizado.

no

.POS > .LEN

no

sim

erro

bit .ER energizado

Destination = (Destination AND (NOT(Mask))) OR (Array[control.POS] AND Mask)

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

9-10

Instrues de Seqenciador (SQI, SQO, SQL)

Exemplo de Lgica Ladder:

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: Array Mask Destination

Valores de exemplo (uso de INTs exibidos em binrio): xxxxxxxx xxxxxxxx xxxx0101 xxxx1010 00000000 00000000 00001111 00001111 xxxxxxxx xxxxxxxx xxxx0101 xxxx1010

Um 0 na mscara significa que o bit no foi comparado (designado por xxxx nesse exemplo).

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

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-RM003D-PT-P - Junho 2001

9-12

Instrues de Seqenciador (SQI, SQO, SQL)

Carga do Sequenciador (SQL)

Linguagens Disponveis:

Lgica Ladder

A instruo SQL carrega as condies de referncia em uma matriz do seqenciador.

Operandos de Lgica Ladder:


Operando Array Tipo: DINT Formato: Descrio: tag da matriz matriz do seqenciador especifica o primeiro elemento da matriz do seqenciador no use CONTROL.POS em subscrito tag imediato dados de entrada a serem carregados na matriz do seqenciador

Source

SINT INT DINT

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 nmero de elementos na Matriz (tabela do sequenciador) a serem carregados posio atual na matriz valor inicial normalmente 0

Length Position

DINT DINT

imediato imediato

Estrutura:
Mnemnico: .EN .DN .ER .LEN .POS Tipo de Dados: BOOL BOOL BOOL DINT DINT Descrio: O bit habilitado indica que a instruo SQL est habilitada. O bit executado energizado quando todos os elementos especificados foram carregados em Array. O bit de erro energizado quando .LEN 0, .POS < 0 ou .POS > .LEN. O comprimento especifica o nmero de etapas da matriz do seqenciador. A posio identifica o elemento que o controlador est manipulando atualmente.

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

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:


Uma falha grave ocorrer se: Tipo de falha: Length > tamanho de Array 4 Cdigo de falha: 20

Execuo de Lgica Ladder:


Condio: pr-varredura Ao: O bit .EN energizado para evitar uma carga falsa quando a varredura do programa comear. A sada da condio da linha definida como falsa. O bit .EN desenergizado. A sada da condio da linha definida como falsa.

entrada da condio da linha for falsa

Publicao 1756-RM003D-PT-P - Junho 2001

9-14

Instrues de Seqenciador (SQI, SQO, SQL)

Condio: entrada da condio da linha for verdadeira

Ao:

.LEN 0 ou .POS < 0 sim

no

examinar bit .EN

.EN = 0

bit .EN energizado bit .ER desenergizado. bit .DN energizado.

.EN = 1

.POS = .LEN

no

.POS .LEN no .POS = .POS + 1

sim

.POS = 1

sim bit .DN energizado.

valor .POS renova no

sim

ir para erro

.POS = .LEN

sim

bit .DN energizado.

no

.POS > .LEN

no

sim .LEN > tamanho da matriz no sim

erro

falha grave

bit .ER energizado

Array[control.POS] = Source

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Seqenciador (SQI, SQO, SQL)

9-15

Exemplo de Lgica Ladder:

antes da carga array_dint[0] 00000 11111 22222 33333 44444 array_dint[5] 00000 00000 00000 00000 00000 control_1.pos = 5 value_3 = 55555

depois da carga 00000 11111 22222 33333 44444 55555 00000 00000 00000 00000 control_1.pos = 6

Quando habilitada, a instruo SQL carrega value_3 na prxima posio na matriz do sequenciador, que array_dint[5] nesse exemplo.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

9-16

Instrues de Seqenciador (SQI, SQO, SQL)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

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: Saltar uma seo da lgica que nem sempre precisa ser executada. Saltar para uma rotina separada, passar dados para a rotina, executar a rotina e retornar os resultados. Marcar um fim temporrio que interrompa a execuo da rotina. Desabilitar todas as linhas em uma seo de lgica. Desabilitar as tarefas do usurio. Habilitar as tarefas do usurio. Desabilitar uma linha. Inserir um placeholder na lgica. Use esta instruo: JMP LBL JSR SBR RET TND MCR UID UIE AFI NOP Consulte pgina: 10-2 10-4

10-13 10-15 10-18 10-18 10-20 10-21

Publicao 1756-RM003D-PT-P - Junho 2001

10-2

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

Salto para Label (JMP) Label (LBL)

Linguagens Disponveis:

Lgica Ladder a Rel

As instrues JMP e LBL ignoram as partes da lgica de diagrama ladder.

Operandos de Lgica Ladder a Rel:


Operando: Instruo JMP Label name; Instruo LBL Label name; nome do label; a execuo salta para a instruo LBL quando o nome do label citado nome do label; insere o nome para a instruo LBL associada Tipo: Formato: Descrio:

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. No se realiza varredura na lgica com salto. Coloque uma lgica crtica fora da zona de salto.

ATENCION

!
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. 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 (_)
Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-3

Flags de Status Aritmtico: no afetados Condies de Falha:


Uma falha grave ocorrer se: Tipo de falha: label no existe 4 Cdigo de falha: 42

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. 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.

Exemplo de Lgica Ladder a Rel:

[outras linhas de cdigo]

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.

Execuo do Bloco de Funo: Estas instrues no esto disponveis no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

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)

Linguagens Disponveis:

Lgica Ladder a Rel

Bloco de Funo

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 a Rel:


Operando Instruo JSR Routine name Input par ROUTINE SINT INT DINT REAL estrutura SINT INT DINT REAL estrutura SINT INT DINT REAL estrutura SINT INT DINT REAL estrutura nome imediato tag tag da matriz rotina a ser executada parmetros (0-n) a serem passados para rotina Tipo: Formato: Descrio:

Return par

tag tag da matriz

parmetros (0-n) a serem recebidos da rotina

Instruo SBR Input par tag tag da matriz parmetros (0-n) recebidos de JSR

Instruo RET Return par imediato tag tag da matriz parmetros (0-n) a serem retornados para JSR

Operandos do Bloco de Funo: Estas instrues no esto disponveis no bloco de funo. 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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-5

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.
nvel 1 sub-rotina action_1 rotina principal action_1 JSR SBR action_2 JSR SBR action_3 JSR SBR nvel 2 sub-rotina action_2 nvel 3 sub-rotina action_3

RET

RET

RET

15294

Publicao 1756-RM003D-PT-P - Junho 2001

10-6

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

Para programar um salto para a sub-rotina, siga estas orientaes: IMPORTANTE No use a instruo JSR para chamar (executar) a rotina principal.

Voc pode colocar uma instruo JSR na rotina principal ou em qualquer outra rotina. Se voc usar a instruo JSR para chamar a rotina principal e, ento, colocar uma instruo RET na rotina principal, uma falha grave ocorre (tipo 4, cdigo 31).
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?
Se: sim Ento: 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. Omita os parmetros de entrada

no

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?
Se: sim Ento: 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. Omita os parmetros de entrada

no

4. Na instruo JSR, voc especificou um operando Input par?


Se: sim Ento: 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. V para a Etapa 5.

no

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-7

ATENCION

!
Se: sim Ento:

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.

5. Na instruo JSR, voc especificou um operando Return par?

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. V para a Etapa 6.

no

ATENCION

!
Se: sim Ento: A. B. C. D.

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.

6. H condies quando voc quer sair da sub-rotina antes do final?

No local da sub-rotina onde voc quer sair, digite uma linha. Digite as condies para sair do local da sub-rotina. Digite uma instruo RET. Digite parmetros de retorno, se necessrio. Consulte as etapas 4. e 5.

no

Omita esta etapa.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha:


Uma falha grave ocorrer se: a instruo JSR tem menos parmetros de entrada do que a instruo SBR Tipo de falha: 4 Cdigo de falha: 31

Publicao 1756-RM003D-PT-P - Junho 2001

10-8

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

Uma falha grave ocorrer se: a instruo JSR salta para a rotina de falha a instruo RET tem menos parmetros de retorno do que a instruo JSR a rotina principal contm uma instruo RET

Tipo de falha: 4 ou fornecido pelo usurio 4 4

Cdigo de falha: 0 ou fornecido pelo usurio 31 31

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao: A sada da condio da linha definida como falsa. O controlador executa todas as sub-rotinas independente da condio da linha. Para garantir que todas as linhas na subrotina sejam pr-varridas (prescanned), o controlador ignora as instrues RET. (Ou seja, as instrues RET no fazem a subrotina sair). Liberao 6.x e anterior, os parmetros de entrada e retorno so passados. Liberao 7.x e posterior, os 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. A sada da condio da linha definida como falsa.

entrada da condio da linha for falsa

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-9

Condio: entrada da condio da linha for verdadeira

Ao:

parmetros de entrada no

sim

JSR copia os parmetros de entrada para as variveis SBR apropriadas

a execuo da lgica comea na rotina identificada por JSR

sim Instruo RET parmetros de retorno

sim

RET copia os parmetros de retorno para as variveis JSR apropriadas

no

no

sim fim da sub-rotina

no sada da condio da linha definida como verdadeira a execuo da lgica retorna para JSR

sada da condio da linha definida como falsa continua a executar a rotina

fim

Exemplo de Lgica Ladder a Rel:

Publicao 1756-RM003D-PT-P - Junho 2001

10-10

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

exemplo 1 Quando habilitada, a instruo JSR passa value_1 e value_2 para routine_1.

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.

[outras linhas de cdigo]

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-11

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_2 e armazena o resultado em total_cookies.

Sub-routine_1 Quando def estiver energizado, a instruo RET retorna value_1 para o parmetro JSR cookies_1 e uma varredura no realizada no restante da sub-rotina.

Quando def estiver desenergizado (linha anterior) eghi estiver 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 def e ghi estiverem desenergizados (linhas anteriores) a instruo RET retorna value_3 para o parmetro cookies_1 de JSR.

Execuo do Bloco de Funo: Estas instrues no esto disponveis no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

10-12

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

Fim Temporrio (TND)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo TND atua como um limite.

Operandos de Lgica Ladder a Rel: 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 a Rel:
Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A sada da condio da linha est definida como verdadeira. A rotina atual termina.

Exemplo de Lgica Ladder a Rel: 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.
Quando a instruo TND estiver habilitada, o controlador interrompe a varredura da rotina atual.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.


Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-13

Rearme do Controle Mestre (MCR)

Linguagens Disponveis:

Lgica Ladder a Rel

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 a Rel: 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. 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.

ATENCION

Publicao 1756-RM003D-PT-P - Junho 2001

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 a Rel:
Condio: pr-varredura entrada da condio da linha for falsa Ao: A sada da condio da linha definida como 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. A sada da condio da linha est definida como verdadeira. As instrues na zona so varridas normalmente.

entrada da condio da linha for verdadeira

Exemplo de Lgica Ladder a Rel:

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.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

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)

Linguagens Disponveis:

Lgica Ladder a Rel

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 a Rel: 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. a 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 vocno 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

Publicao 1756-RM003D-PT-P - Junho 2001

10-16

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A instruo UID previne a interrupo por tarefas de prioridade maior. A instruo UIE habilita a interrupo por tarefas de prioridade maior. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder a Rel:


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.
UID error_bit FSC File Search/Compare Control error_check Length 10 Position 8 Mode ALL Expression error_code=error_list[error_check.POS]

EN DN ER

error_check.FD

alarm

UIE

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-17

Instruo Sempre Falsa (AFI)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo AFI configura a sua sada da condio da linha como falsa.

Operandos de Lgica Ladder a Rel: 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 a Rel:
Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

Exemplo de Lgica Ladder a Rel: Use a instruo AFI para desabilitar temporariamente uma linha,
enquanto estiver depurando um programa.

Quando habilitada, AFI desabilita todas as instrues nessa linha.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

10-18

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

Sem Operao (NOP)

Linguagens Disponveis:

Lgica Ladder a

A instruo NOP funciona como um placeholder

Operandos de Lgica Ladder a Rel: 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 a Rel:
Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder a Rel: Essa instruo til para localizar ramificaes incondicionais quando
se coloca a instruo NOP na ramificao.

A instruo NOP realiza bypass na instruo XIC para habilitar a sada.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

10-19

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

10-20

Instrues de Controle de Programa (JMP, LBL, JSR, RET, SBR, TND, MCR, UID, UIE, AFI, NOP)

Publicao 1756-RM003D-PT-P - Junho 2001

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: Executar repetidamente a rotina. Terminar a execuo repetida de uma rotina. Retornar para a instruo FOR. Use esta instruo: FOR BRK RET Consulte pgina: 11-2 11-5 11-7

Publicao 1756-RM003D-PT-P - Junho 2001

11-2

Instrues For/Break (FOR, BRK, RET)

For (FOR)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo FOR executa repetidamente uma sub-rotina.

Operandos de Lgica Ladder a Rel:


Operando: Routine name Index Initial value Tipo: ROUTINE DINT SINT INT DINT SINT INT DINT SINT INT DINT Formato: nome da rotina tag imediato tag imediato tag imediato tag Descrio: rotina a ser executada conta quantas vezes a rotina foi executada valor onde se inicia o ndice

Terminal value Step size

valor onde parar a execuo da rotina

quantidade a ser acrescentada ao ndice cada vez que a instruo FOR executar a rotina

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio:
IMPORTANTE No use a instruo FOR para chamar (executar) a rotina principal.

Voc pode colocar uma instruo FOR na rotina principal ou em qualquer outra rotina. Se voc usar a instruo FOR para chamar a rotina principal e, ento, colocar uma instruo RET na rotina principal, uma falha grave ocorre (tipo 4, cdigo 31).
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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues For/Break (FOR, BRK, RET)

11-3

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:


Uma falha grave ocorrer se: a rotina principal contm uma instruo RET Tipo de falha: 4 Cdigo de falha: 31

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura Ao: 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. A sada da condio da linha definida como falsa.

entrada da condio da linha for falsa entrada da condio da linha for verdadeira

index = initial_value

no

tamanho step < 0

sim ir para o fim no index valor terminal

sim

sim index valor terminal

no

ir para o fim

fim

executar rotina index =(index + step_size)

sada da condio da linha definida como verdadeira

fim

Publicao 1756-RM003D-PT-P - Junho 2001

11-4

Instrues For/Break (FOR, BRK, RET)

Exemplo de Lgica Ladder a Rel:


Quando habilitada, a instruo FOR executa repetidamente routine_2 e incrementa value_2 em 1 todas as vezes. Quando value_2 > 10 ou uma instruo BRK estiver habilitada, a instruo FOR no mais executa routine_2.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues For/Break (FOR, BRK, RET)

11-5

Break (BRK)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo BRK interrompe a execuo de uma rotina que foi chamada por uma instruo FOR.

Operandos de Lgica Ladder a Rel: 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 a Rel:
Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A sada da condio da linha est definida como verdadeira. A execuo retorna para a instruo que segue a instruo FOR que est chamando.

Exemplo de Lgica Ladder a Rel:

Quando habilitada, a instruo BRK pra de executar a rotina atual e retorna para a instruo que segue a instruo FOR que est chamando.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

11-6

Instrues For/Break (FOR, BRK, RET)

Retorno (RET)

Linguagens Disponveis:

Lgica Ladder a Rel

A instruo RET retorna para a instruo FOR que est chamando.

Operandos de Lgica Ladder a Rel: nenhuma

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio:
IMPORTANTE No coloque uma instruo RET na rotina principal. Se voc colocar uma instruo RET na rotina principal, uma falha grave ocorre (tipo 4, cdigo 31).

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:


Uma falha grave ocorrer se: a rotina principal contm uma instruo RET Tipo de falha: 4 Cdigo de falha: 31

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues For/Break (FOR, BRK, RET)

11-7

Execuo de Lgica Ladder a Rel:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder a Rel:


rotina que est chamando sub-rotina

Quando habilitada, a instruo FOR executa repetidamente routine_2 e incrementa value_2 em 1 todas as vezes. Quando value_2 > 10 ou uma instruo BRK estiver habilitada, a instruo FOR no mais executa routine_2.

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.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

11-8

Instrues For/Break (FOR, BRK, RET)

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

12

Instrues Especiais
(FBC, DDT, DTR, PID)

Introduo

As instrues especiais realizam operaes especficas aplicao.


Se voc quiser: Comparar os dados com uma boa referncia j conhecida e registrar quaisquer diferenas. Comparar os dados com uma boa referncia j conhecida, registrar quaisquer diferenas e atualizar a referncia para combinar com a fonte. 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. Controlar uma malha de PID. Use esta instruo: FBC Consulte pgina: 12-2

DDT

12-10

DTR

12-18

PID

12-21

Publicao 1756-RM003D-PT-P - Junho 2001

12-2

Instrues Especiais (FBC, DDT, DTR, PID)

Comparao de Bit de Arquivo (FBC)

Linguagens Disponveis:

Lgica Ladder

A instruo FBC compara os bits em uma matriz Source com os bits em uma matriz Reference.

Operandos de Lgica Ladder:


Operando Source Reference Result: Cmp control Length Position Result control Length Position Tipo: DINT DINT DINT CONTROL DINT DINT CONTROL DINT DINT Formato: Descrio: tag da matriz matriz a ser comparada com a referncia no use CONTROL.POS em subscrito tag da matriz matriz a ser comparada com a fonte no use CONTROL.POS em subscrito tag da matriz matriz para armazenar o resultado no use CONTROL.POS em subscripts estrutura imediato imediato estrutura imediato imediato estrutura de controle para a comparao nmero de bits a ser comparado posio atual na fonte valor inicial normalmente 0 estrutura de controle para os resultados nmero de locais de armazenamento no resultado 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-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-3

Estrutura de Comparao:
Mnemnico: .EN .DN .FD .IN Tipo de Dados: BOOL BOOL BOOL BOOL Descrio: O bit habilitado indica que a instruo FBC est habilitada. O bit executado energizado quando a instruo FBC compara o ltimo bit nas matrizes Source e Reference. 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). O bit inibido indica o modo de busca de FBC. 0 = todos os modos 1 = uma diferena em um modo de tempo 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. O valor do comprimento identifica o nmero de bits a ser comparado. O valor da posio identifica o bit atual.

.ER .LEN .POS

BOOL DINT DINT

Estrutura de Resultado:
Mnemnico: .DN .LEN .POS Tipo de Dados: BOOL DINT DINT Descrio: O bit executado energizado quando a matriz Result est cheia. O valor do comprimento identifica o nmero de locais de armazenamento na matriz Result. O valor da posio identifica a posio atual na matriz Result.

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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.

Publicao 1756-RM003D-PT-P - Junho 2001

12-4

Instrues Especiais (FBC, DDT, DTR, PID)

Seleo do modo de busca


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. 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.

Todas as diferenas

Flags de Status Aritmtico: no afetados Condies de Falha:


Uma falha grave ocorrer se: Result.POS > tamanho da matriz de resultado Tipo de falha: 4 Cdigo de falha: 20

Execuo de Lgica Ladder:


Condio: pr-varredura
o bit compare.EN desenergizado. o bit compare.FD desenergizado.

Ao:

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.

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-5

Condio: entrada da condio da linha for falsa


o bit compare .EN desenergizado. o bit compare.FD desenergizado.

Ao:

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.

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

12-6

Instrues Especiais (FBC, DDT, DTR, PID)

Condio: entrada da condio da linha for verdadeira

Ao:

examinar bit compare.EN

compare.EN = 1

ir para a sada

compare.EN = 0 o bit compare .EN energizado. examinar bit compare.DN compare.DN = 1 ir para a sada

compare.DN = 0 o bit compare.ER desenergizado. o bit compare.FD desenergizado. sim

compare.LEN 0

no

sair

compare.POS < 0

sim

no sada da condio da linha definida como verdadeira comparar fim

o bit compare.ER energizado.

ir para a sada

pgina 12-8

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-7

Condio:
compara

Ao:

compare.POS compare.LEN

sim

compare.POS = compare.LEN o bit compare.DN energizado.

ir para a sada

pgina 12-7
no result.DN = 1 source[compare.POS] = reference[compare.POS] no o bit compare.FD energizado. examinar o bit result.DN

o bit result.DN desenergizado. o valor result.POS desenergizado.

sim compare.POS = compare.POS + 1

result.DN = 0

sim result.POS < 0

no

sim result.LEN 0

no

o bit compare.ER energizado.

sim falha grave

result.POS > tamanho da matriz de resultado no result[result.POS] = compare.POS result.POS = result.POS + 1

ir para a sada

pgina12-7

no

result.POS > result.LEN

sim o bit result.DN energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

12-8

Instrues Especiais (FBC, DDT, DTR, PID)

Exemplo de Lgica Ladder:

fonte 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 array_dint1

referncia 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 array_dint2

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.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-9

Deteco de Diagnstico (DDT)

Linguagens Disponveis:

Lgica Ladder

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:


Operando Source Reference Result: Cmp control Length Position Result control Length Position Tipo: DINT DINT DINT CONTROL DINT DINT CONTROL DINT DINT Formato: tag da matriz tag da matriz tag da matriz estrutura imediato imediato estrutura imediato imediato Descrio: matriz a ser comparada com a referncia no use CONTROL.POS em subscrito matriz a ser comparada com a fonte no use CONTROL.POS em subscrito matriz para armazenar os resultados no use CONTROL.POS em subscrito estrutura de controle para a comparao nmero de bits a ser comparado posio atual na fonte valor inicial normalmente 0 estrutura de controle para os resultados nmero de locais de armazenamento no resultado 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-RM003D-PT-P - Junho 2001

12-10

Instrues Especiais (FBC, DDT, DTR, PID)

Estrutura de Comparao:
Mnemnico: .EN .DN .FD Tipo de Dados: BOOL BOOL BOOL Descrio: O bit habilitado indica que a instruo DDT est habilitada. O bit executado energizado quando a instruo DDT compara o ltimo bit nas matrizes Source e Reference. 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). O bit inibido indica o modo de busca de DDT. 0 = todos os modos 1 = uma diferena em um modo de tempo 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. O valor do comprimento identifica o nmero de bits a ser comparado. O valor da posio identifica o bit atual.

.IN

BOOL

.ER .LEN .POS

BOOL DINT DINT

Estrutura de Resultado:
Mnemnico: .DN .LEN .POS Tipo de Dados: BOOL DINT DINT Descrio: O bit executado energizado quando a matriz Result est cheia. O valor do comprimento identifica o nmero de locais de armazenamento na matriz Result. O valor da posio identifica a posio atual na matriz Result.

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-11

Seleo do modo de busca


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. 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.

Todas as diferenas

Flags de Status Aritmtico: no afetados Condies de Falha:


Uma falha grave ocorrer se: Result.POS > tamanho da matriz de resultado Tipo de falha: 4 Cdigo de falha: 20

Execuo de Lgica Ladder:


Condio: pr-varredura
o bit compare .EN desenergizado. o bit compare.FD desenergizado.

Ao:

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.

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

12-12

Instrues Especiais (FBC, DDT, DTR, PID)

Condio: entrada da condio da linha for falsa


o bit compare .EN desenergizado. o bit compare.FD desenergizado.

Ao:

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.

sada da condio da linha definida como falsa

fim

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-13

Condio: entrada da condio da linha for verdadeira

Ao:

examinar o bit compare.EN

compare.EN = 1

ir para a sada

compare.EN = 0 o bit compare .EN energizado. examinar bit compare.DN compare.DN bit = 1 ir para a sada

compare.DN bit = 0 o bit compare.ER desenergizado. o bit compare.FD desenergizado. sim

compare.LEN 0

no

sair

compare.POS < 0

sim

no sada da condio da linha definida como verdadeira Comparar fim

o bit compare.ER energizado.

ir para a sada

pgina 12-16

Publicao 1756-RM003D-PT-P - Junho 2001

12-14

Instrues Especiais (FBC, DDT, DTR, PID)

Condio:
compara

Ao:

compare.POS compare.LEN

sim

compare.POS = compare.LEN o bit compare.DN energizado.

ir para a sada

pgina 12-15
no result.DN = 1
source[compare.POS] = reference[compare.POS]

no

o bit compare.FD energizado. reference[compare.POS] = source[compare.POS]

examinar o bit result.DN

o bit result.DN desenergizado. o valor result.POS desenergizado.

sim compare.POS = compare.POS + 1

result.DN = 0

sim result.POS < 0

no

sim result.LEN 0

no

o bit compare.ER energizado.

sim falha grave

result.POS > tamanho da matriz de resultado no result[result.POS] = compare.POS result.POS = result.POS + 1

ir para

pgina 12-7

no

result.POS result.LEN

sim o bit result.DN energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-15

Exemplo de Lgica Ladder:

fonte 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 array_dint1

referncia (antes da 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 comparao) array_dint2 resultado: array_dint3 5 3

referncia (depois da 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 comparao) array_dint2 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.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

12-16

Instrues Especiais (FBC, DDT, DTR, PID)

Dados Transicionais (DTR)

Linguagens Disponveis:

Lgica Ladder

A instruo DTR passa o valor Source por Mask e compara o resultado com o valor Reference.

Operandos de Lgica Ladder:


Operando Source Mask Reference Tipo: DINT DINT DINT Formato: imediato tag imediato tag tag Descrio: matriz a ser comparada com a referncia quais bits devem ser bloqueados ou podem passar matriz a ser comparada com a fonte

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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. 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.

ATENO

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-17

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.
Prefixo: 16# 8# 2# Descrio: hexadecimal por exemplo; 16#0F0F octal por exemplo; 8#16 binrio por exemplo; 2#00110011

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Ladder:
Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: The Reference = Source AND Mask. A sada da condio da linha definida como falsa. The Reference = Source AND Mask. A sada da condio da linha definida como falsa.

masked source = reference

no

referncia definida igual fonte mascarada sada da condio da linha energizada quando verdadeira

sim

sada da condio da linha energizada quando falsa fim

Publicao 1756-RM003D-PT-P - Junho 2001

12-18

Instrues Especiais (FBC, DDT, DTR, PID)

Exemplo de Lgica Ladder:

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.

exemplo 1 fonte value_1

exemplo 2

mscara = 0FFF 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

varredura atual varredura anterior

0 0

1 1

8 8

3 3

referncia value_2

0 0

1 1

8 8

7 3

varredura atual varredura anterior


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.

Um 0 na mscara no altera o bit.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. Funo:

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-19

Proporcional, Integral e Derivativo (PID)

Linguagens Disponveis:

Lgica Ladder

A instruo PID controla um tag de processo como, por exemplo, fluxo, presso, temperatura ou nvel.

Operandos de Lgica Ladder:

Operando PID Process variable

Tipo: PID SINT INT DINT REAL SINT INT DINT REAL

Formato: estrutura tag

Descrio: estrutura PID valor a ser controlado

Tieback

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 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 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 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 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 somente display valor atual do setpoint. somente display valor atual de Process Variable convertido em escala somente display valor de porcentagem da sada da corrente

Control variable

SINT INT DINT REAL

tag

PID master loop

PID

estrutura

Inhold bit

BOOL

tag

Inhold value

SINT INT DINT REAL

tag

Setpoint Process variable Output %

Publicao 1756-RM003D-PT-P - Junho 2001

12-20

Instrues Especiais (FBC, DDT, DTR, PID)

Estrutura: Especifique uma estrutura PID nica para cada instruo PID.
Mnemnico: .CTL Tipo de Dados: DINT Descrio: 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: 31 30 29 28 27 26 25 24 23 22 21 20 Este bit: 15 14 13 12 11 10 09 08 07 SP .KP .KI .KD .BIAS .MAXS .MINS .DB .SO .MAXO .MINO REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL setpoint independente dependente independente dependente independente dependente ganho proporcional (sem unidade) ganho do controlador (sem unidade) ganho integral (1/s) tempo de reset (minutos por repetio) ganho derivativo (segundos) tempo da taxa (minutos) Corresponde a este membro: .EN .CT .CL .PVT .DOE .SWM .CA .MO .PE .NDF .NOBC .NOZC Este membro que configurado pela instruo PID: .INI .SPOR .OLL .OLH .EWD .DVNA .DVPA .PVLA .PVHA

feedforward ou bias % valor de converso de escala da unidade de medida mxima valor de converso de escala da unidade de medida mnima unidades de medida da zona morta defininir % da sada limite de sada mximo (% da sada) limite de sada mnimo (% da sada)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-21

Mnemnico: .UPD .PV .ERR .OUT .PVH .PVL .DVP .DVN .PVDB .DVDB .MAXI .MINI .TIE .MAXCV .MINCV .MINTIE .MAXTIE .DATA

Tipo de Dados: REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL[17]

Descrio: tempo de atualizao da malha (segundos) valor PV em escala valor de erro em escala % da sada limite de alarme superior para o tag do processo limite de alarme inferior para o tag do processo limite de alarme de desvio positivo limite de alarme de desvio negativo zona morta do alarme do tag de processo zona morta do alarme de desvio valor mximo de PV (entrada sem escala) valor mnimo de PV (entrada sem escala) valor de tieback para controle manual valor mximo de CV (corresponde a 100%) valor mnimo de CV (corresponde a 0%) valor mnimo de tieback (corresponde a 100%) valor mximo de tieback (corresponde a 0%) O membro .DATA armazena: Elemento .DATA[0] .DATA[1] .DATA[2] .DATA[3] .DATA[4] .DATA[5] .DATA[6] .DATA[7] .DATA[8] .DATA[9] .DATA[10] .DATA[11] .DATA[12] .DATA[13] .DATA[14] .DATA[15] .DATA[16] Descrio: acmulo integral valor temporrio de filtro derivativo valor .PV anterior valor .ERR anterior valor .SP vlido anterior constante de converso de escala em porcentagem constante de converso em escala .PV constante de converso em escala derivativa valor .KP anterior valor .KI anterior valor .KD anterior ganho .KP dependente ganho .KI dependente ganho .KD dependente valor .CV anterior constante .CV para desfazer a converso constante tieback para desfazer a converso

.EN .CT .CL .PVT

BOOL BOOL BOOL BOOL

habilitado tipo cascata (0=escravo; 1=mestre) malha da cascata (0=no; 1=sim) rastreamento do tag do processo (0=no; 1=sim)

Publicao 1756-RM003D-PT-P - Junho 2001

12-22

Instrues Especiais (FBC, DDT, DTR, PID)

Mnemnico: .DOE .SWM .CA .MO .PE .NDF .NOBC .NOZC .INI .SPOR .OLL .OLH .EWD .DVNA .DVPA .PVLA .PVHA

Tipo de Dados: BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL

Descrio: derivativa de (0=PV; 1=erro) modo manual do software (0=no - automtico; 1=sim- manual com chave) ao de controle (0 significa E=SP-PV; 1 significa E=PV-SP) modo de estao (0=automtico; 1=manual) equao PID (0=independente; 1=dependente) filtro derivativo (0=no; 1=sim) clculo de volta para bias (0=no; 1=sim) cruzamento zero para zona morta (0=no; 1=sim para zona morta) PID inicializada (0=no; 1=sim) setpoint fora da faixa (0=no; 1=sim) CV est abaixo do limite de sada mnimo (0=no; 1=sim) CV est acima do limite de sada mximo (0=no; 1=sim) o erro est dentro da zona morta (0=no; 1=sim) o desvio est definido como alarme baixo (0=no; 1=sim) o desvio est definido como alarme alto (0=no; 1=sim) o PV est definido como alarme baixo (0=no; 1=sim) o PV est definido como alarme alto (0=no; 1=sim)

Operandos do Bloco de Esta instruo no est disponvel no bloco de funo. 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.
bit .EN

estado da linha execuo da instruo PID

41027

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-23

Condies de Falha:
IMPORTANTE Estas falhas eram graves no controlador CLP-5.

Uma falha de advertncia ocorrer se: .UPD 0 setpoint fora de faixa

Tipo de falha: 4 4

Cdigo de falha: 35 36

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. A sada da condio da linha est definida como verdadeira.

Execuo do Bloco de Esta instruo no est disponvel no bloco de funo. 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.

Clique aqui para configurar a instruo PID

Publicao 1756-RM003D-PT-P - Junho 2001

12-24

Instrues Especiais (FBC, DDT, DTR, PID)

Especificao do ajuste
Selecione a guia Tuning. As alteraes passam a ser aceitas, assim que clicar em outro campo, OK, Apply ou Enter.
No campo: Setpoint (SP) Set output % Especifique Insira um valor de setpoint (.SP). 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. Insira a procentagem de bias de sada (.BIAS). Insira o ganho proporcional (.KP). Para ganhos independentes, este o ganho proporcional (sem unidade). Para ganhos dependentes, este o ganho do controlador (sem unidade). 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). Insira o ganho derivativo (.KD). Para ganhos independentes, este o ganho derivativo (segundos). Para os ganhos dependentes, este o tempo da taxa em minutos. Selecione o manual (.MO) ou o manual do software (.SWM). O modo Manual se sobrepe ao manual do software se os dois forem selecionados.

Output bias Ganho proporcional (Kp)

Ganho Integral (Ki)

Tempo derivativo (Kd)

Manual mode

Especificao da configurao
Selecione a guia Configuration. Voc deve clicar em OK ou Apply para que as alteraes tenham validade.
No campo: PID equation Especifique 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). Selecione E=PV-SP ou E=SP-PV para control action (.CA). 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. Insira o tempo de atualizao (.UPD) para a instruo (maior do que ou igual a 0,01 segundo). Insira um limite superior para a varivel de controle (.MAXO). Insira um limite inferior para a varivel de controle (.MINO). Insira o valor da zona morta (.DB). Habilita ou desabilita essa seleo (.NDF). Habilita ou desabilita essa seleo (.NOBC). Habilita ou desabilita essa seleo (.NOZC).

Control action Derivative of

Loop update time CV high limit CV low limit Deadband value No derivative smoothing No bias calculation No zero crossing in deadband

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-25

No campo: PV tracking Cascade loop Cascade type

Especifique Habilita ou desabilita essa seleo (.PVT). Habilita ou desabilita essa seleo (.CL). Se a malha da cascata estiver habilitada, selecione escravo ou mestre (.CT).

Especificao de alarmes
Selecione a guia Alarms. Voc deve clicar em OK ou Apply para que as alteraes tenham validade.
No campo: PV high PV low PV deadband positive deviation negative deviation deviation deadband Especifique Insira um valor de limite superior para o alarme alto para a PV (.PVH). Insira um valor de limite inferior para o alarme baixo para a PV (.PVL). Insira um valor de zona morta para o alarme de PV (.PVDB). Insira um valor de desvio positivo (.DVP). Insira um valor de desvio negativo (.DVN). Insira um valor de zona morta para o alarme de desvio (.DVDB).

Especificao de converso de escala


Selecione a guia Scaling. Voc deve clicar em OK ou Apply para que as alteraes tenham validade.
No campo: PV unscaled maximum PV unscaled minimum PV engineering units maximum PV engineering units minimum CV maximum CV minimum Tieback maximum Tieback minimum PID Initialized Especifique Insira um valor mximo de PV (.MAXI) igual ao valor mximo sem escala recebido do canal de entrada analgica para o valor PV. Insira um valor mnimo de PV (.MINI) igual ao valor mnimo sem escala recebido do canal de entrada analgica para o valor PV. Insira as unidades de medida mximas correspondentes a .MAXI (.MAXS) Insira as unidades de medida mnimas correspondentes a .MINII (.MINS) Insira um valor mximo de CV correspondente a 100% (.MAXCV). Insira um valor mnimo de CV correspondente a 0% (.MINCV). Insira um valor mximo de tieback (.MAXTIE) igual ao valor mximo sem escala recebido do canal de entrada analgica para o valor de tieback. 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. Se voc alterar as constantes de converso de escala durante o modo Run, desligue para reincializar os valores internos, anteriores converso de escala (.INI).

Publicao 1756-RM003D-PT-P - Junho 2001

12-26

Instrues Especiais (FBC, DDT, DTR, PID)

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:

setpoint

erro equao PID

taxa de fluxo varivel de processo varivel de controle

detector de nvel

14271

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. 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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-27

equao so fornecidos apenas para que voc use o tipo com o qual est mais familiarizado.
Opo de Ganhos: Ganhos dependentes (padro ISA) Derivativo de error (E)
t

Equao:

CV = K C

1 dE E + ---- Edt + T d ------ + BIAS Ti dt


0

process variable (PV)

E = SP - PV
t

CV = K C

1 dPV E + ---- Edt T d ---------- + BIAS Ti dt


0

E = PV - SP
t

1 dPV CV = K C E + ---- Edt + T d ---------- + BIAS Ti dt


0

Ganhos independentes

error (E)
t

dE CV = K P E + K i Edt + Kd ------ + BIAS dt


0

process variable (PV)

E = SP - PV
t

dPV CV = K P E + Ki Edt K d ---------- + BIAS dt


0

E = PV - SP
t

dPV CV = K P E + K i Edt + Kd ---------- + BIAS dt


0

Onde:
Varivel: KP Ki Descrio: ganho proporcional (sem unidade) Kp = Kc sem unidade ganho integral (segundos -1) Para converter entre Ki (ganho integral) e Ti (tempo de reset), use:
KC K i = ---------60T i

Kd

ganho derivativo (segundos) Para converter entre Kd (ganho derivativo) e Td (tempo da taxa), use: Kd = Kc (Td) 60 ganho do controlador (sem unidade)

KC

Publicao 1756-RM003D-PT-P - Junho 2001

12-28

Instrues Especiais (FBC, DDT, DTR, PID)

Varivel: Ti Td SP PV E BIAS CV dt

Descrio: tempo de reset (minutos/repetio) tempo da taxa (minutos) setpoint varivel de processo erro [(SP-PV) ou (PV-SP)] feedforward ou bias varivel de controle tempo de atualizao de malha

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 Kd ou Td 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. A instruo PID suporta dois modos manuais de controle:
Modo Manual de Controle: software manual (.SWM) Descrio: 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. 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.

manual (.MO)

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
Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-29

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.: Ki = 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 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.

Publicao 1756-RM003D-PT-P - Junho 2001

12-30

Instrues Especiais (FBC, DDT, DTR, PID)

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. 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
Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-31

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. 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.

Publicao 1756-RM003D-PT-P - Junho 2001

12-32

Instrues Especiais (FBC, DDT, DTR, PID)

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. Para configurar uma reinicializao initerrupta:
Faa o seguinte: Configure o canal do mdulo de sada analgica 1756 que recebe a varivel de controle da instruo PID. Detalhes: 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.

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
Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-33

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 (Kd > 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.

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.

+ zona morta setpoint - zona morta erro dentro da faixa da zona morta

tempo

41026

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
Publicao 1756-RM003D-PT-P - Junho 2001

12-34

Instrues Especiais (FBC, DDT, DTR, PID)

energizar o bit de alarme e impedir que a sada ultrapasse o limite superior ou inferior.

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-RM003D-PT-P - Junho 2001

Instrues Especiais (FBC, DDT, DTR, PID)

12-35

Na instruo MUL, insira:

Para este parmetro MUL: destination source A source B

Insira este valor: valor controlado valor no controlado razo

Publicao 1756-RM003D-PT-P - Junho 2001

12-36

Instrues Especiais (FBC, DDT, DTR, PID)

Teoria PID

Os nmeros a seguir mostram o fluxo do processo para as instrues PID.

processo PID
SP Exibido como EUs Software A/M ou Modo A/M Station Erro Exibido como EUs

Ao de Controle SP-PV Converte Unidades em % Erro X 100 mx-mn.

Polarizao da Sada % Software A/M Mode Clculo PID (Out%)


+

Auto
+ -

(Erro)
-1

Auto Auto Manual

A/M Station Mode

Define Sada % Converte % em Unidades CV

SP

Manual PVT no

PV-SP

Limitao da Sada Manual


Sada (CV) Exibida em % do Fator de Escala EU

sim Converte Binrio para Unidades de Medida (PV-mn)(mx-mn) mx-min + min

PV Exibido como EUs

Define Sada %

CV%(mxcv-mncv) + mncv 100

CV

Converte Unidades de Tieback em % tieback-mintie maxtie-mintie x100

PV

processo PID com malhas mestre/escravo


Malha Mestre Software A/M ou A/M Station Mode Auto SP
+ -

Ao de Controle SP-PV (Erro)


-1
Converte Unidade em %

Polarizao da Sada % Software A/M Mode Auto Auto Define Sada % Software A/M Mode Auto SP PV
Converte Unidades em %

Clculo PID

(Out%)

A/M Station Mode Limitao da Sada Manual

Define Sada %

Manual PVT no

PV-SP

Erro X 100 mx-mn Manual

(Master.Out)

sim Converte Binrio em Unidades de Medida (PV-mn)(mx-mn) + mn maxi-mini

Erro X 100 mx-mn

Manual Manual Os itens relacionados nesta caixa so parmetros, unidades e modos pois pertencem malha Escrava

Malha Escravo

PV Ao de Controle Converte % em (SP) Unidades de Medida + X (mx-mn) + mn 100 SP-PV


-1
Converte Unidades em %

Polarizao da Sada % Software A/M Mode Auto Auto Manual Limitao da Sada Manual A/M Station Mode Define Sada %

(Master.Out)

Clculo PID

PV-SP

Erro X 100 mx-mn Define Sada % Converte Unidades Tieback em % tieback-mintie maxtie-mintie x100

Converte % em CV%(maxcv-mincv) 100 + mincv

Converte Binrio em Unidades de Medida (PV-mn)(mx-mn) + mn maxi-mini

PV

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

13

Instrues Trigonomtricas
(SIN, COS, TAN, ASN, ACS, ATN)

Introduo

As instrues trigonomtricas avaliam as operaes aritmticas usando as operaes trigonomtricas.


Se voc quiser: Calcular o seno de um valor Calcular o co-seno de um valor Calcular a tangente de um valor Calcular o arco seno de um valor Calcular o arco co-seno de um valor Calcular o arco tangente de um valor Use esta instruo: SIN COS TAN ASN ACS ATN Consulte pgina: 13-2 13-5 13-8 13-11 13-14 13-16

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.

Publicao 1756-RM003D-PT-P - Junho 2001

13-2

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Seno (SIN)

Idiomas disponveis:

Lgica Ladder

Bloco de Funo

A instruo SIN calcula o seno do valor de Source (em radianos) e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: calcula o seno desse valor

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura SIN tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo matemtica. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta sada.

Descrio: A Fonte deve ser maior ou igual a -205887,4 (-2x215) e menor ou


igual a 205887,4 (2x215). O valor resultante em Destination sempre maior ou igual a -1 e menor ou igual a 1.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-3

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula o seno de Source e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo SIN calcula o seno de <1><8><1>. e coloca o resultado em result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

13-4

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-5

Co-seno (COS)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo COS calcula o co-seno do valor de Source (em radianos) e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: calcula o co-seno desse valor

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura COS tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo matemtica. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so definidos para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

13-6

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Descrio: A Fonte deve ser maior ou igual a -205887,4 (-2x215) e menor ou


igual a 205887,4 (2x215). 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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula o co-seno de Source e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo COS calcula o co-seno de <1><19><1> e coloca o resultado em result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-7

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

13-8

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Tangente (TAN)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo TAN calcula a tangente do valor de Source (em radianos) e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: calcula a tangente desse valor

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura TAN tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se energizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo matemtica. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so definidos para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-9

Descrio: A Fonte deve ser maior ou igual a -102943,7(-2x214) e menor ou


igual a 102943,7 (2x214).

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula a tangente de Source e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo TAN calcula a tangente de <1><19><1>e coloca o resultado emresult.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

13-10

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-11

Arco Seno (ASN)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo ASN calcula o arco seno do valor de Source (em radianos) e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: calcula o arco seno desse valor

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura ASN tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo matemtica. vlido = qualquer flutuante

Source

REAL

Publicao 1756-RM003D-PT-P - Junho 2001

13-12

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so definidos para esta 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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula o arco seno de Source e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo ASN calcula o arco seno de <1><19><1> e coloca o resultado em result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo Ao: Nenhuma ao tomada. Nenhuma ao tomada.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-13

Condio: primeira operao da instruo EnableIn desenergizado EnableIn energizado

Ao: Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

13-14

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Arco Co-seno (ACS)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo ACS calcula o arco co-seno do valor de Source (em radianos) e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: calcula o arco co-seno desse valor

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura ACS tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo matemtica. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula o arco co-seno de Source e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo ACS calcula o arco co-seno de <1><19><1> e coloca o resultado em result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo instruction first run EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

13-16

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Arco Tangente (ATN)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo ATN calcula o arco tangente do valor de Source e coloca o resultado em Destination (em radianos).

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: calcula o arco tangente desse valor

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura ATN tag do bloco FBD_MATH_ADVANCED

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-17

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo matemtica. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta 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:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula o arco tangente de Source e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo ATN calcula o arco tangente de <1><19><1> e coloca o resultado em result.

Publicao 1756-RM003D-PT-P - Junho 2001

13-18

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

13-19

Notas:

Publicao 1756-RM003D-PT-P - Junho 2001

13-20

Instrues Trigonomtricas (SIN, COS, TAN, ASN, ACS, ATN)

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

14

Instrues Matemticas Avanadas


(LN, LOG, XPY)

Introduo

As instrues matemticas avanadas incluem estas instrues:


Se voc quiser: Calcular o log natural de um valor Calcular o log da base 10 de um valor Elevar um valor potncia de outro valor Use esta instruo: LN LOG XPY Consulte pgina: 14-2 14-4 14-7

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.

Publicao 1756-RM003D-PT-P - Junho 2001

14-2

Instrues Matemticas Avanadas (LN, LOG, XPY)

Log Natural (LN)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo LN calcula o log natural de Source e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: encontrar o log natural desse valor.

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura LN tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Source Tipo de Dados: BOOL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Entrada para instruo matemtica. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmticos so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

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:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula o log natural de Source e coloca o resultado em Destination. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo LN calcula o log natural de value<F1> e coloca o resultado em <F19><F1>result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

14-4

Instrues Matemticas Avanadas (LN, LOG, XPY)

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Base Log de 10 (LOG)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo LOG calcula a base log de 10 de Source e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: encontrar o log natural desse valor.

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura LOG tag do bloco FBD_MATH_ADVANCED

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas Avanadas (LN, LOG, XPY)

14-5

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Source Tipo de Dados: BOOL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Entrada para instruo matemtica. vlido = qualquer flutuante

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta 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:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador calcula o log de Source e coloca o resultado em Destination. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo LOG calcula o log natural de value<F1> e coloca o resultado em <F19><F1>result.

Publicao 1756-RM003D-PT-P - Junho 2001

14-6

Instrues Matemticas Avanadas (LN, LOG, XPY)

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas Avanadas (LN, LOG, XPY)

14-7

X Elevado Potncia de Y (XPY)

Linguagens

Lgica Ladder

Bloco de Funo

A instruo XPY calcula Source A (X) elevado potncia de Source B (Y) e armazena o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source A Tipo: SINT INT DINT REAL SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: valor de base

Source B

imediato tag

exponente

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura XPY tag do bloco FBD_MATH

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Source A Source B Tipo de Dados: BOOL REAL REAL Descrio: Habilita entrada. Se desenergizada, a instruo no executa e as sadas no so atualizadas. o valor inicial definido Valor base. vlido = qualquer flutuante Exponente. vlido = qualquer flutuante

Publicao 1756-RM003D-PT-P - Junho 2001

14-8

Instrues Matemticas Avanadas (LN, LOG, XPY)

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo matemtica. Os flags de status aritmtico so energizados para esta 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 x0=1 e 0x=0.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha:


Uma falha de advertncia ocorrer se: Source A negativa e Source B no um valor inteiro Tipo de falha: 4 Cdigo de falha: 4

Execuo de Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. 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.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo XPY calcula value_1 elevado potncia de value_2 e coloca o resultado em result.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues Matemticas Avanadas (LN, LOG, XPY)

14-9

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn est desenergizado EnableIn est energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut est desenergizado. A instruo executa. EnableOut est energizado.

Exemplo do Bloco de Funo:


function_block_A function_block_C

function_block_B

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.

Publicao 1756-RM003D-PT-P - Junho 2001

14-10

Instrues Matemticas Avanadas (LN, LOG, XPY)

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

15

Instrues de Converso Matemtica


(DEG, RAD, TOD, FRD, TRN)

Introduo

As instrues de converso matemtica convertem valores.


Se voc quiser: Converter radianos em graus. Converter graus em radianos. Converter um valor inteiro em um valor BCD. Converter um valor BCD em um valor inteiro. Remover a parte fracionria de um valor Use esta instruo: DEG RAD TOD FRD TRN Consulte pgina: 15-2 15-5 15-8 15-12 15-15

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.

Publicao 1756-RM003D-PT-P - Junho 2001

15-2

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Graus (DEG)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo DEG converte Source (em radianos) para graus e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: valor a ser convertido em graus.

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura DEG tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sada no so atualizadas. o valor inicial definido Entrada para a instruo de converso. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo de converso. Os flags de status aritmtico so energizados para esta sada.

Descrio: A instruo DEG usa este algoritmo:


Source*180/ (onde = 3,141593)

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

15-3

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador converte Source em graus e coloca o resultado em Destination. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo DEG converte <1><19><1> em graus e coloca o resultado em result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

15-4

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

15-5

Radianos (RAD)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo RAD converte Source (em graus) para radianos e coloca o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT REAL SINT INT DINT REAL Formato: imediato tag Descrio: valor a ser convertido em radianos

Destination

tag

tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura RAD tag do bloco FBD_MATH_ADVANCED

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo de converso. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL REAL Descrio: A instruo produziu um resultado vlido. Resultado da instruo de converso. Os flags de status aritmtico so energizados para esta sada.

Descrio: A instruo RAD usa esse algoritmo:


Source*/180 (onde = 3,141593)

Publicao 1756-RM003D-PT-P - Junho 2001

15-6

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador converte Source em radianos e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo RAD converte <1><19><1> em radianos e coloca o resultado em result.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

15-7

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

15-8

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Converso para BCD (TOD)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

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:


Operando Source Tipo: SINT INT DINT Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura TOD tag do bloco FBD_CONVERT

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo de converso. vlido = qualquer inteiro

Source

DINT

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo de converso. Os flags de status aritmtico so energizados para esta sada.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

15-9

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:


Uma falha de advertncia ocorrer se: source < 0 Tipo de falha: 4 Cdigo de falha: 4

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

no source < 0 source > 99.999.999

no

converter fonte para BCD

sim

sim

S:V definido em 1

a sada da condio da linha energizada quando verdadeira

fim

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.

Publicao 1756-RM003D-PT-P - Junho 2001

15-10

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Exemplo de Lgica Ladder:

Quando habilitada, a instruo TOD converte value_1 em um valor BCD e coloca o resultado em result_a.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Exemplo do Bloco de Funo:


function_block_A

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

15-11

Converso para Inteiro (FRD)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo FRD converte um valor BCD (Source) para um valor decimal e armazena o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Tipo: SINT INT DINT Formato: imediato tag Descrio: 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

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura FRD tag do bloco FBD_CONVERT

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para instruo de converso. vlido = qualquer inteiro

Source

DINT

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo de converso. Os flags de status aritmtico so energizados para esta sada.

Descrio: A instruo FRD converte um valor BCD (Source) para um valor


decimal e armazena o resultado em Destination.
Publicao 1756-RM003D-PT-P - Junho 2001

15-12

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Flags de Status Aritmtico: Os flags de status aritmtico so afetados. Condies de Falha: nenhuma

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador converte Source em valor decimal e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

Quando habilitada, a instruo FRD converte value_a para um valor decimal e coloca o resultado em result_1.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

15-13

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Exemplo do Bloco de Funo:


function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

15-14

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Truncagem (TRN)

Linguagens Disponveis:

Lgica Ladder

Bloco de Funo

A instruo TRN remove (trunca) a parte fracional de Source e armazena o resultado em Destination.

Operandos de Lgica Ladder:


Operando Source Destination Tipo: REAL SINT INT DINT REAL Formato: imediato tag tag Descrio: valor a ser truncado tag para armazenar o resultado

Operandos do Bloco de Funo:


Operando Tipo: Formato: estrutura Descrio: estrutura TRN tag do bloco FBD_TRUNCATE

Estrutura: Parmetros de entrada


Parmetro de Entrada: EnableIn Tipo de Dados: BOOL Descrio: Habilita a entrada. Se desenergizada, a instruo no executada e as sadas no so atualizadas. o valor inicial definido Entrada para a instruo de converso. vlido = qualquer flutuante

Source

REAL

Parmetros de sada
Parmetro de Sada: Tipo de Dados: EnableOut Dest BOOL DINT Descrio: A instruo produziu um resultado vlido. Resultado da instruo de converso. Os flags de status aritmtico so energizados para esta sada.

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.


Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

15-15

Condies de Falha: nenhuma

Execuo de Lgica Ladder:


Condio: pr-varredura entrada se a condio da linha for falsa entrada se a condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa. O controlador remove a parte fracionria de Source e coloca o resultado em Destination. A sada da condio da linha definida como verdadeira.

Exemplo de Lgica Ladder:

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.

Execuo do Bloco de Funo:


Condio: pr-varredura primeira varredura da instruo primeira operao da instruo EnableIn desenergizado EnableIn energizado Ao: Nenhuma ao tomada. Nenhuma ao tomada. Nenhuma ao tomada. EnableOut desenergizado. A instruo executada. EnableOut energizado.

Publicao 1756-RM003D-PT-P - Junho 2001

15-16

Instrues de Converso Matemtica (DEG, RAD, TOD, FRD, TRN)

Exemplo do Bloco de Funo:


function_block_A function_block_C

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.

Publicao 1756-RM003D-PT-P - Junho 2001

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. IMPORTANTE Para usar as instrues de porta serial ASCII, voc deve configurar a porta serial do controlador. Consulte Procedimentos Comuns dos Controladores Logix5000, publicao 1756-PM001.
Use esta instruo: ABL ACB ACL Consulte pgina: 16-7 16-10 16-12

Se voc quiser: determinar quando o buffer contm caracteres de terminao contar os caracters no buffer remover o buffer remover instrues de Porta Serial ASCII que esto sendo executadas atualmente ou esto na fila

Por exemplo: verificar os dados que contenham caracteres de terminao verificar o nmero solicitado dos caracteres antes de ler o buffer

remover dados antigos do buffer no start-up sincronizar o buffer com um dispositivo

obter o status das linhas de controle da porta fazer com que o modem desligue serial 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 ler os dados a partir de um dispositivo que envia um nmero de caracteres varivel em cada transmisso

AHL

16-14

ARD

16-17

ler um nmero de caracteres varivel, at e incluindo o primeiro conjunto de caracteres de terminao

ARL

16-20

enviar caracteres e, automaticamente, enviar mensagens que sempre usam o(s) acrescentar um ou dois caracteres adicionais mesmo(s) caracter(es) de extremidade para marcar o fim dos dados enviar caracteres enviar mensagens que usam vrios caracteres de terminao

AWA

16-24

AWT

16-28

Publicao 1756-RM003D-PT-P - Junho 2001

16-2

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Execuo da Instruo
As instrues de porta serial ASCII so executadas de forma assncrona ao scan da lgica:
Lgica Quando a entrada da condio da linha passa de falsa para verdadeira Fila ASCII Instruo 1 Instruo 2 Instruo 3 Instruo 4 A instruo entra na fila ASCII. Os dados fluem entre o buffer e a porta serial Serial Port Buffer Os dados fluem entre a tarefa e o buffer. Tarefa ASCII Instruo na parte superior da fila executada.

Cada instruo de porta serial ASCII (exceto a ACL) usa uma estrutura SERIAL_PORT_CONTROL para realizar as seguintes funes:

controla a execuo da instruo fornece as informaes de status sobre a instruo

Publicao 1756-RM003D-PT-P - Junho 2001

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
scan scan scan scan

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

entra na fila executa neste exemplo, encontra os caracteres de terminao

reseta os bits de status quando efetuado o scan e .DN ou .ER forem definidos, o bit .EM energiza

Publicao 1756-RM003D-PT-P - Junho 2001

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 scan subsequente da instruo, como representado abaixo:
scan scan scan scan

entrada da condio da linha

falsa

verdadeira

falsa

.EN

off

on

.EU

off

on

tenta entrar na fila, mas a fila est cheia entra na fila

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-5

Cdigos de Erro ASCII


Se uma instruo de porta serial ASCII falhar na execuo, o membro ERROR de sua estrutura SERIAL_PORT_CONTROL conter um dos seguintes cdigos de erro hexadecimais:
Este cdigo hex: 16#2 16#3 16#4 16#A 16#C 16#D 16#E 16#F 16#51 16#54 16#55 Indica que: modem passou para o modo offline. O sinal CTS foi perdido durante a comunicao. A porta serial estava em modo de sistema. Antes da execuo da instruo o bit .UL foi energizado. Isto evita a execuo da instruo. O controlador mudou do modo Run para o modo Program. Isto pra a execuo de uma instruo de porta serial ASCII e remove a fila e remove a fila. 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 de porta serial ASCII e remove a fila e remove a fila. A instruo ACL foi executada. A configurao da porta serial mudou do modo do Usurio para o modo do Sistema. Isso pra a execuo de uma instruo de porta serial ASCII e remove a fila da instruo de porta serial ASCII. O valor LEN do tag string negativo ou maior que o tamanho de DATA do tag string. O Comprimento de Controle da Porta Serial maior que o tamanho do buffer. O Comprimento de Controle da Porta Serial negativo ou maior que o tamanho de Source ou Destination.

Publicao 1756-RM003D-PT-P - Junho 2001

16-6

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Tipos de String
Voc armazena os caracteres ASCII em tags que usam um tipo de dados tipo string.

Voc pode usar o tipo de dados STRING padro. Ele armazena at 82 caracteres. Voc pode criar um novo tipo de string que armazene menos ou mais caracteres.
Para criar um novo tipo de string, consulte Procedimentos Comuns dos Controladores Logix5000, publicao 1756-PM001.
42811

Cada tipo de string contm os seguintes membros:


Nome: LEN Tipo de Dados: DINT Descrio: nmero de caracteres no string Notas: A LEN atualiza a nova contagem de caracteres automaticamente sempre que voc: usar a janela String Browser para inserir caracteres usar as instrues que lem, convertem ou manipulam um string A LEN mostra o comprimento do string atual. O membro DATA pode conter caracteres adicionais, antigos, que no esto includos na contagem de LEN. DATA matriz SINT caracteres ASCII do string

Para acessar os caracteres do string, enderee o nome do tag. Por exemplo, para acessar os caracteres do tag string_1, insira string_1. Cada elemento da matriz DATA contm um caracter. Voc pode criar novos tipos de string que armazenem menos ou mais caracteres.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-7

Teste ASCII Para Linha do Buffer (ABL)

Linguagens Disponveis:

Lgica Ladder

A instruo ABL conta os caracteres no buffer at o primeiro conjunto de caracteres da extremidade.

Operandos de Lgica Ladder:

ABL ASCII Test For Buffer Line Channel SerialPort Control Character Count

? ? ?
42225

EN DN ER

Operando: Channel Porta Serial Control Character Count

Tipo: DINT SERIAL_PORT_ CONTROL DINT

Formato: imediato tag tag imediato

Insira: 0 tag que controla a operao 0 Durante a execuo, exibe o nmero de caracteres no buffer, at e incluindo o primeiro conjunto dos caracteres de terminao.

Estrutura SERIAL_PORT_CONTROL:
Mnemnico: .EN RN .EM .ER .FD .POS .ERRO Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT Descrio: O bit de habilitao indica que a instruo est habilitada. O bit de operao indica que a instruo est executando. O bit vazio indica que a instruo est concluda. O bit de erro indica quando a instruo falha (erros). O bit encontrado indica que a instruo encontra os caracteres de terminao A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de caracteres de terminao. O erro contm um valor hexadecimal que identifica a causa de um erro.

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

16-8

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 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. 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:
Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

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.

Exemplo de Lgica Ladder:


Testa o buffer continuamente para caracteres de terminao
MV_line.EN / ABL ASCII Test For Buffer Line Channel 0 SerialPort Control MV_line Character Count 0

EN DN ER

42226

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-9

Caracteres ASCII no Buffer (ACB)

Linguagens Disponveis:

Lgica Ladder

A instruo ACB conta os caracteres no buffer.

Operandos de Lgica Ladder:

ACB ASCII Chars in Buffer Channel SerialPort Control Character Count

? ? ?
42225

EN DN ER

Operando: Channel: Porta Serial Control Character Count

Tipo: DINT SERIAL_PORT_ CONTROL DINT

Formato: imediato tag tag imediato

Insira: 0 tag que controla a operao 0 Durante a execuo, exibe o nmero de caracteres no buffer.

Estrutura SERIAL_PORT_CONTROL:
Mnemnico: .EN RN .EM .ER .FD .POS .ERRO Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT Descrio: O bit de habilitao indica que a instruo est habilitada. O bit de operao indica que a instruo est executando. O bit vazio indica que a instruo est concluda. O bit de erro indica quando a instruo falha (erros). O bit encontrado indica que a instruo encontra os caracteres de terminao A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de caracteres de terminao. O erro contm um valor hexadecimal que identifica a causa de um erro.

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

16-10

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

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. 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:
Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

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.

Exemplo de Lgica Ladder:


Contar continuamente os caracteres no buffer
bar_code_count.EN / ACB ASCII Chars in Buffer Channel 0 SerialPort Control bar_code_count Character Count 0 EN DN ER

42227

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-11

Remoo de Buffer e da Fila ASCII (ACL)

Linguagens Disponveis:

Lgica Ladder

A instruo ACL imediatamente remove o buffer e a fila ASCII.

Operandos de Lgica Ladder:

ACL ASCII Clear Buffer Channel Clear Serial Port Read Clear Serial Port Write

? ? ?
42225

Operando: Channel: Clear Serial Port Read Clear Serial Port Write

Tipo: DINT BOOL BOOL

Formato: imediato tag imediato tag imediato tag

Insira: 0 Para esvaziar o buffer e remover as instrues ARD e ARL da fila, digite Yes. Para remover as instrues AWA e AWT da fila, digite Yes.

Operandos do 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

Publicao 1756-RM003D-PT-P - Junho 2001

16-12

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Para programar a instruo ACL, siga estas orientaes: 1. Configure a porta serial do controlador:
Se sua aplicao: usa as instrues ARD or ARL Ento: Selecione modo do Usurio

no usa as instrues ARD ou ARL Selecione ou o modo do Sistema ou do Usurio

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 Execuo de Lgica Ladder:
Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo remove as instrues especficas e o(s) buffer(s). A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Quando o controlador entra no modo Run, remove o buffer e a fila ASCII
S:FS ACL ASCII Clear Buffer Channel Clear Serial Port Read Clear Serial Port Write

0 1 1
42228

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-13

Linhas ASCII Handshake (AHL)

Linguagens Disponveis:

Lgica Ladder

A instruo AHL obtm o status das linhas de controle e liga e desliga os sinais DTR e RTS.

Operandos de Lgica Ladder:

AHL ASCII Handshake Lines Channel AND Mask OR Mask SerialPort Control Channel Status(Decimal)

EN ? ? ?? ? ?? ? ? DN ER

42225

Operando: Channel: ANDMask ORMask Porta Serial Control Channel Status (Decimal)

Tipo: DINT DINT DINT SERIAL_PORT_ CONTROL DINT

Formato: tag imediato imediato tag imediato tag tag imediato

Insira: 0 Consulte a descrio.

tag que controla a operao 0 Durante a execuo, exibe o status das linhas de controle.

Estrutura SERIAL_PORT_CONTROL:
Mnemnico: .EN .RN .EM .ER .FD .POS .ERRO Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT Descrio: O bit de habilitao indica que a instruo est habilitada. O bit de operao indica que a instruo est executando. O bit vazio indica que a instruo est concluda. O bit de erro indica quando a instruo falha (erros). O bit encontrado indica que a instruo encontra os caracteres de terminao A posio determina o nmero de caracteres no buffer, at e incluindo o primeiro conjunto de caracteres de terminao. O erro contm um valor hexadecimal que identifica a causa de um erro.

Publicao 1756-RM003D-PT-P - Junho 2001

16-14

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. 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:
Se sua aplicao: usa as instrues ARD or ARL Ento: Selecione modo do Usurio

no usa as instrues ARD ou ARL Selecione ou o modo do Sistema ou do Usurio

2. Use as tabelas seguintes para selecionar os valores corretos para os operandos ANDMask e ORMask:
DTR: off RTS: off on no mudado on off on no mudado no mudado off on no mudado Digite este valor ANDMask: 3 1 1 2 0 0 2 0 0 E digite este valor ORMask: 0 2 0 1 3 1 0 2 0

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

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-15

Condies de Falha:
Tipo: 4 Cdigo: 57 Causa: A instruo AHL falhou na execuo, pois a porta serial est configurada para sem handshaking. Mtodo de Recuperao: Ou:

Mude a configurao de Control Line da porta serial. Delete a instruo AHL.

Execuo de Lgica Ladder:


Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

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.

Exemplo de Lgica Ladder:


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.
get_control_line_status AHL ASCII Handshake Lines Channel AND Mask OR Mask SerialPort Control Channel Status(Decimal) EN 0 0 0 serial_port 29
42230

DN ER

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

16-16

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Leitura ASCII (ARD)

Linguagens Disponveis:

Lgica Ladder

A instruo ARD remove os caracteres do buffer e armazena-os em Destination.

Operandos de Lgica Ladder:


ASCII Read Channel Destination

ARD EN ? ? ?? ? ? ? DN ER

SerialPort Control SerialPort Control Length Characters Read

42225

Operando: Canal: Destination

Tipo: DINT tipo de string SINT INT DINT

Formato: imediato tag tag

Insira: 0 tag para o qual os caracteres so movidos (leitura): Para um tipo de string, insira o nome do tag. Para uma matriz SINT, INT ou DINT, insira o primeiro elemento da matriz. tag que controla a operao nmero de caracteres para mover para destination (leitura)

Notas:

Se voc quiser comparar, converter ou manipular os caracteres, insira um tag do tipo string. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Serial Port Control Serial Port Control Length

SERIAL_PORT_ CONTROL DINT

tag imediato

O Serial Port Control Length deve ser menor ou igual ao tamanho de Destination. Se voc quiser configurar Serial Port Control Length para igual ao tamanho de Destination, insira 0.
Durante a execuo, exibe o nmero de caracteres que foram lidos.

Characters Read

DINT

imediato

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-17

Estrutura SERIAL_PORT_CONTROL:
Mnemnico: .EN RN .EM .ER .FD .LEN .POS .ERRO Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT DINT Descrio: O bit de habilitao indica que a instruo est habilitada. O bit de operao indica que a instruo est executando. O bit vazio indica que a instruo est concluda. O bit de erro indica quando a instruo falha (erros). O bit encontrado indica que a instruo encontra os caracteres de terminao O comprimento (length) indica o nmero de caracteres para mover para destination (leitura). A posio (position) exibe o nmero de caracteres que foram lidos. O erro contm um valor hexadecimal que identifica a causa de um erro.

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 ARD remove o nmero especfico de caracteres do buffer e armazena-os em Destination.

A instruo ARD continua a ser executada at que remova o nmero especificado de caracteres (Serial Port Control Length). Enquanto a instruo ARD est sendo executada, nenhuma instruo de Porta Serial ASCII executada.
Para programar a instruo ARD, siga estas orientaes: 1. Configure a porta serial do controlador para o modo user. 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-18. 3. Alterne a entrada da condio de linha da instruo ARD de falsa para verdadeira toda vez que o buffer for para ser lido. 4. Para disparar a ao subseqente quando a instruo for concluda, examine o bit EM.

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma

Publicao 1756-RM003D-PT-P - Junho 2001

16-18

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Execuo de Lgica Ladder:


Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

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.

Exemplo de Lgica O exemplo seguinte representa o uso de uma instruo ACB para Ladder: verificar se o nmero correto de caracteres est no buffer antes que a
instruo ARD execute e leia os caracteres.
Uma leitora de cdigos de barra envia os cdigos de barra para a porta serial (canal 0) do controlador. Cada cdigo de barra contm 24 caracteres. Para determinar quando o controlador recebe um cdigo de barra, a instruo ACB conta continuamente os caracteres no buffer.
bar_code_count.EN / ACB ASCII Chars in Buffer Channel 0 SerialPort Control bar_code_count Character Count 0 EN DN ER

Quando o buffer contiver pelo menos 24 caracteres, o controlador recebeu o cdigo de barra. A instruo ARD move o cdigo de barra para o membro DATA do tag bag_bar_code, que um tipo de string.
GEQ Grtr Than or Eql (A>=B) Source A bar_code_count.pos 0 Source B 24 ARD ASCII Read Channel Destination EN DN ER 0 bag_bar_code '' SerialPort Control bar_code_read SerialPort Control Length 24 Characters Read 0

42227

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-19

Linha de Leitura ASCII (ARL)

Linguagens Disponveis:

Lgica Ladder

A instruo ARL remove caracteres do buffer e armazena-os em Destination.

Operandos de Lgica Ladder:


ASCII Read Line Channel Destination

ARL EN ? ? ?? ? ? ? DN ER

SerialPort Control SerialPort Control Length Characters Read

42225

Operando: Canal: Destination

Tipo: DINT tipo de string SINT INT DINT

Formato: imediato tag tag

Insira: 0 tag para o qual os caracteres so movidos (leitura): Para um tipo de string, insira o nome do tag. Para uma matriz SINT, INT ou DINT, insira o primeiro elemento da matriz. tag que controla a operao nmero mximo de caracteres para ler se nenhum caracter de terminao for encontrado

Notas:

Se voc quiser comparar, converter ou manipular os caracteres, insira um tag do tipo string. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Serial Port Control Serial Port Control Length

SERIAL_PORT_ CONTROL DINT

tag imediato

Digite o nmero mximo de caracteres que qualquer mensagem conter (ou seja, quando parar de ler se nenhum caracter de terminao for encontrado).
Por exemplo, se as mensagens variarem de 3 a 6 caracteres no comprimento, digite 6.

O Serial Port Control Length deve ser menor ou igual ao tamanho de Destination. Se voc quiser configurar Serial Port Control Length para igual ao tamanho de Destination, insira 0.
Characters Read DINT imediato 0 Durante a execuo, exibe o nmero de caracteres que foram lidos.

Publicao 1756-RM003D-PT-P - Junho 2001

16-20

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Estrutura SERIAL_PORT_CONTROL:
Mnemnico: .EN RN .EM .ER .FD .LEN .POS .ERRO Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT DINT Descrio: O bit de habilitao indica que a instruo est habilitada. O bit de operao indica que a instruo est executando. O bit vazio indica que a instruo est concluda. O bit de erro indica quando a instruo falha (erros). O bit encontrado indica que a instruo encontra os caracteres de terminao O comprimento (length) indica o nmero mximo de caracteres para mover para destination (ou seja, quando parar de ler se nenhum caracter de terminao for encontrado). A posio (position) exibe o nmero de caracteres que foram lidos. O erro contm um valor hexadecimal que identifica a causa de um erro.

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 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 (Serial Port Control Length) Enquanto a instruo ARL est sendo executada, nenhuma instruo de porta serial 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-21. 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. Para disparar a ao subseqente quando a instruo for concluda, examine o bit EM.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-21

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Ladder:
Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

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.

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.
Testa o buffer continuamente para uma mensagem do terminal MessageView. Como cada mensagem termina com um caracter $r, este caracter configurado como o caracter de terminao na janela Controller Properties, guia User Protocol. Quando a ABL encontra um caracter $r, ela energiza o bit FD.
MV_line.EN / ABL ASCII Test For Buffer Line Channel 0 SerialPort Control MV_line Character Count 0 EN DN ER

Quando a instruo ABL encontra um $r (MV_line.FD energizado) o controlador recebeu uma mensagem completa. A instruo ARL remove os caracteres do buffer, at e incluindo o $r e coloca-os no membro DATA do tag MV_msg, que um tipo de string.
MV_line.FD ASCII Read Line Channel Destination SerialPort Control SerialPort Control Length Characters Read ARL EN 0 MV_msg '' MV_read 12 0 DN ER

42226

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

16-22

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Anexar Leitura ASCII (AWA)

Linguagens Disponveis:

Lgica Ladder

A instruo AWA envia um nmero especfico de caracteres do tag Source para um dispositivo serial e anexa um ou dois caracteres pr-definidos.

Operandos de Lgica Ladder:

AWA ASCII Write Append Channel Source SerialPort Control SerialPort Control Length Characters Sent

EN ? ? ?? ? ? ? DN ER

42225

Operando: Canal: Source

Tipo: DINT tipo de string SINT INT DINT

Formato: imediato tag tag

Insira: 0 tag que contm os caracteres a serem enviados: Para um tipo de string, insira o nome do tag. Para uma matriz SINT, INT ou DINT, insira o primeiro elemento da matriz. tag que controla a operao nmero de caracteres a serem enviados

Notas:

Se voc quiser comparar, converter ou manipular os caracteres, insira um tag do tipo string. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Serial Port Control Serial Port Control Length

SERIAL_PORT_ CONTROL DINT

tag imediato

O Serial Port Control Length deve ser menor ou igual ao tamanho de Source. Se voc quiser configurar Serial Port Control Length para igual ao nmero de caracteres em Source, insira 0.
Durante a execuo, exibe o nmero de caracteres que foram enviados.

Characters Read

DINT

imediato

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-23

SERIAL_PORT_CONTROL Estrutura:
Mnemnico: .EN .RN .EM .ER .FD .LEN .POS .ERRO Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT DINT Descrio: O bit de habilitao indica que a instruo est habilitada. O bit de operao indica que a instruo est executando. O bit vazio indica que a instruo est concluda. O bit de erro indica quando a instruo falha (erros). O bit encontrado indica que a instruo encontra os caracteres de terminao O comprimento (length) indica o nmero de caracteres a serem enviados. A posio (position) exibe o nmero de caracteres que foram enviados. O erro contm um valor hexadecimal que identifica a causa de um erro.

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 AWA:

envia o nmero especfico de caracteres (Serial Port Control Length) do tag Source para o dispositivo que est conectado porta serial do controlador adiciona ao fim de characters (anexa) um ou dois caracteres que so definidos na janela Controller Properties, guia User Protocol

Publicao 1756-RM003D-PT-P - Junho 2001

16-24

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

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?
Se: sim no Ento: Selecione modo do Usurio Selecione ou o modo do Sistema ou do Usurio

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. Voc sempre quer enviar o mesmo nmero de caracteres a cada vez que a instruo executada?
Se: Sim No Ento: Em Serial Port Control Length, insira o nmero de caracteres a serem enviados. Antes da instruo ser executada, mova o membro LEN do tag Source para o membro LEN do tag Serial Port Control. Consulte Exemplo 2 na pgina 16-27.

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Ladder:
Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

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.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-25

Exemplo de Lgica Ladder:


Exemplo 1 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 cinco caracteres do membro DATA do tag string[1], que um tipo de string. O $14 contado como um caracter. (Ele o cdigo hexadecimal para o caracter Ctrl-T.) A instruo tambm envia (anexos) os caracteres definidos nas propriedades do controlador. Neste exemplo, a instruo AWA envia um caracterer $0D, que marca o fim da mensagem.
temp_high AWA ASCII Write Append Channel Source EN DN ER

0 string[1] '$1425\1' SerialPort Control temp_high_write SerialPort Control Length 5 Characters Sent 6

Exemplo 2 Quando alarm estiver on, a instruo AWA envia o nmero especfico de caracteres em alarm_msg e anexo um caracter de terminao (s). Como o nmero de caracteres em alarm_msg varia, a linha move primeiro o comprimento do string (alarm_msg.LEN) para Serial Port Control Length da instruo AWA (alarm_write.LEN). Em alarm_msg, o $14 contado como um caracter. Ele o cdigo hexadecimal para o caracter Ctrl-T.
alarm MOV Move Source alarm_msg.LEN 5 Dest alarm_write.LEN 5 AWA ASCII Write Append Channel Source SerialPort Control SerialPort Control Length Characters Sent EN 0 alarm_msg '$1425\1' alarm_write 5 6 DN ER

42229

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

16-26

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Escrita ASCII (AWT)

Linguagens Disponveis:

Lgica Ladder

A instruo AWT envia um nmero especfico de caracteres do tag Source para um dispositivo serial.

Operandos de Lgica Ladder:


ASCII Write Channel Source

AWT EN ? ? ?? ? ? ? DN ER

SerialPort Control SerialPort Control Length Characters Sent

42225

Operando: Canal: Source

Tipo: DINT tipo de string SINT INT DINT

Formato: imediato tag tag

Insira: 0 tag que contm os caracteres a serem enviados: Para um tipo de string, insira o nome do tag. Para uma matriz SINT, INT ou DINT, insira o primeiro elemento da matriz. tag que controla a operao nmero de caracteres a serem enviados

Notas:

Se voc quiser comparar, converter ou manipular os caracteres, insira um tag do tipo string. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Serial Port Control Serial Port Control Length

SERIAL_PORT_ CONTROL DINT

tag imediato

O Serial Port Control Length deve ser menor ou igual ao tamanho de Source. Se voc quiser configurar Serial Port Control Length para igual ao nmero de caracteres em Source, insira 0.
Durante a execuo, exibe o nmero de caracteres que foram enviados.

Characters Read

DINT

imediato

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

16-27

Estrutura SERIAL_PORT_CONTROL:
Mnemnico: .EN .RN .EM .ER .FD .LEN .POS .ERRO Tipo de Dados: BOOL BOOL BOOL BOOL BOOL DINT DINT DINT Descrio: O bit de habilitao indica que a instruo est habilitada. O bit de operao indica que a instruo est executando. O bit vazio indica que a instruo est concluda. O bit de erro indica quando a instruo falha (erros). O bit encontrado indica que a instruo encontra os caracteres de terminao. O comprimento (length) indica o nmero de caracteres a serem enviados. A posio (position) exibe o nmero de caracteres que foram enviados. O erro contm um valor hexadecimal que identifica a causa de um erro.

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 de falsa
para verdadeira, a instruo AWT envia o nmero especfico de caracteres (Serial Port Control Length) do tag Source para o dispositivo que est conectado porta serial do controlador. Para programar a instruo AWT, siga estas orientaes: 1. Configure a porta serial do controlador:
Se sua aplicao: usa as instrues ARD or ARL Ento: Selecione modo do Usurio

no usa as instrues ARD ou ARL Selecione ou o modo do Sistema ou do Usurio

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. Voc sempre quer enviar o mesmo nmero de caracteres a cada vez que a instruo executada?
Se: Sim No Ento: Em Serial Port Control Length, insira o nmero de caracteres a serem enviados. Antes da instruo ser executada, mova o membro LEN do tag Source para o membro LEN do tag Serial Port Control. Consulte Exemplo 2 na pgina 16-30.

Publicao 1756-RM003D-PT-P - Junho 2001

16-28

Instrues de Porta Serial ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)

Flags de Status Aritmtico: no afetados Condies de Falha: nenhuma Execuo de Lgica Ladder:
Condio: pr-scan entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

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.

Exemplo de Lgica Ladder:


Exemplo 1 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 nove caracteres do membro DATA do tag string[2], que um tipo de string. O $14 contado como um caracter. (Ele o cdigo hexadecimal para o caracter Ctrl-T.) O ltimo caracter um $r, que marca o fim da mensagem.
temp_low ASCII Write Channel Source AWT EN DN ER 0 string[2] '$142224\01$r' SerialPort Control temp_low_write SerialPort Control Length 9 Characters Sent 9

Exemplo 2 Quando MV_update estiver on, a instruo AWT envia o caracter em MV_msg. Como o nmero de caracteres em MV_msg varia, a linha move primeiro o comprimento do string (MV_msg.LEN) para Serial Port Control Length da instruo AWT (MV_write.LEN). Em MV_msg, o $16 contado como um caracter. Ele o cdigo hexadecimal para o caracter Ctrl-V.
MV_update MOV Move Source MV_msg.LEN 10 Dest MV_write.LEN 10 AWT ASCII Write Channel Source EN DN ER 0 MV_msg '$161365\8\1$r' SerialPort Control MV_write SerialPort Control Length 10 Characters Sent 10

42229

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

17

Instrues de String ASCII


(CONCAT, DELETE, FIND, INSERT, MID)

Introduo
Se voc quiser: adicionar caracteres ao final de um string remover caracteres de um string

Use as instrues de string ASCII para modificar e criar strings de caracteres ASCII.
Por exemplo: adicionar caracteres de terminao ou delimitadores a um string remover caracteres de cabealho ou controle de um string Use esta instruo: CONCAT DELETE FIND INSERT MID Consulte pgina: 17-3 17-5 17-7 17-9 17-11

determinar o caracter inicial de um sub-string localizar um grupo de caracteres dentro de um string inserir caracteres em um string extrair caracteres de um string criar um string que usa variveis extrair informaes de um cdigo de barras

Voc tambm pode usar as seguintes instrues para comparar ou converter caracteres ASCII:
Se voc quiser: ver se os caracteres so iguais a caracteres especficos ver se os caracteres no so iguais a caracteres especficos ver se os caracteres so iguais ou maiores que caracteres especficos ver se os caracteres so maiores que caracteres especficos ver se os caracteres so iguais ou menores que caracteres especficos ver se os caracteres so menores que caracteres especficos converter caracteres para um valor SINT, INT, DINT ou REAL converter caracteres para um valor REAL converter um valor SINT, INT, DINT ou REAL para um string de caracteres ASCII converter um valor REAL para um string de caracteres ASCII Use esta instruo: EQU NEQ GEQ GRT LEQ LES STOD STOR DTOS RTOS Consulte pgina: 4-7 4-38 4-11 4-15 4-19 4-23 18-3 18-5 18-7 18-9

Publicao 1756-RM003D-PT-P - Junho 2001

17-2

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

Tipos de String
Voc armazena caracteres ASCII em tags que usam um tipo de dados tipo string.

Voc pode usar o tipo de dados STRING padro. Ele armazena at 82 caracteres. Voc pode criar um novo tipo de string que armazene menos ou mais caracteres.
Para criar um novo tipo de string, consulte Procedimentos Comuns dos Controladores Logix5000, publicao 1756-PM001.
42811

Cada tipo de string contm os seguintes membros:


Nome: LEN Tipo de Dados: DINT Descrio: nmero de caracteres no string Notas: A LEN atualiza a nova contagem de caracteres automaticamente sempre que voc: usar a janela String Browser para inserir caracteres usar as instrues que lem, convertem ou manipulam um string A LEN mostra o comprimento do string atual. O membro DATA pode conter caracteres adicionais, antigos, que no esto includos na contagem de LEN. DATA matriz SINT caracteres ASCII do string

Para acessar os caracteres do string, enderee o nome do tag. Por exemplo, para acessar os caracteres do tag string_1, insira string_1. Cada elemento da matriz DATA contm um caracter. Voc pode criar novos tipos de string que armazenem menos ou mais caracteres.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

17-3

Concatenao de String (CONCAT)

Linguagens Disponveis:

Lgica Ladder

A instruo CONCAT adiciona caracteres ASCII ao final de um string.

Operandos de Lgica Ladder:

CONCAT String Concatenate Source A ? ?? Source B ? ?? Dest ? ??


42617

Operando: Source A Source B Destination

Tipo: tipo de string tipo de string tipo de string

Formato: tag tag tag

Insira: tag que contm os caracteres iniciais tag que contm os caracteres finais tag para armazenar o resultado

Notas: Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo CONCAT
combina os caracteres em Source A com os caracteres em Source B e coloca o resultado em Destination.

Os caracteres de Source A so os primeiros, seguidos dos caracteres de Source B. A menos que Source A e Destination sejam o mesmo tag, Source A permanece inalterado.

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

17-4

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm.

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Para disparar uma mensagem em um terminal MessageView, o controlador deve enviar um string ASCII que contenha um nmero de mensagem e um nmero de n. String_1 contm o nmero da mensagem. Quando add_node estiver energizado, a instruo CONCAT adiciona os caracteres em node_num_ascii (nmero do n) ao final dos caracteres em string_1 e, ento, armazena o resultado em msg.
add_node CONCAT String Concatenate Source A string_1 '$1423\' Source B node_num_ascii '1' Dest msg '$1423\1'
42613

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

17-5

Remoo de String (DELETE)

Linguagens Disponveis:

Lgica Ladder

A instruo DELETE remove os caracteres ASCII de um string.

Operandos de Lgica Ladder:

DELETE String Delete Source Qty Start Dest

? ?? ? ?? ? ?? ? ??
42617

Operando: Source

Tipo: tipo de string

Formato: tag

Insira: o tag que contm o string do qual voc quer remover caracteres nmero de caracteres a serem removidos posio do primeiro caracter a ser removido tag para armazenar o resultado

Notas: Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar O Start mais o Quantity deve ser menor ou igual ao tamanho de DATA de Source. Insira um nmero entre 1 e o tamanho de DATA de Source.

Quantidade

SINT INT DINT SINT INT DINT tipo de string

imediato tag imediato tag tag

Start

Destination

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha energizada for verdadeira, a instruo
DELETE remove um grupo de caracteres de Source e coloca os caracteres restantes em Destination.

A posio de Start e Quantity definem os caracteres a serem removidos. A menos que Source e Destination sejam o mesmo tag, Source permanece inalterado.

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

17-6

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. O valor de Start ou Quantity invlido. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. 1. Verifique se o valor de Start est entre 1 e o tamanho de DATA de Source. 2. Verfique se o valor de Start mais o valor de Quantity menor ou igual ao tamanho de DATA de Source.

56

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


As informaes ASCII de um terminal contm um caracter de cabealho. Depois que o controlador l os dados (term_read.EM est energizado) a instruo DELETE remove o caracter de cabealho. O controlador pode, ento, usar o texto da mensagem ou pass-lo para outro dispositivo.
term_read.EM DELETE String Delete Source term_input '$0655' Qty 1 Start Dest 1 term_text '55'
42613

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

17-7

Encontro de String (FIND)

Linguagens Disponveis:

Lgica Ladder

A instruo FIND localiza a posio inicial de um string especfico dentro de outro string.

Operandos de Lgica Ladder:

FIND Find String Source Search Start Result

? ?? ? ?? ? ?? ? ??
42617

Operando: Source Search Start

Tipo: tipo de string tipo de string SINT INT DINT SINT INT DINT

Formato: tag tag imediato tag tag

Insira: string a ser procurado string a ser encontrado posio em Source para iniciar a busca tag que armazena a posio inicial do string a ser encontrado

Notas: Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Insira um nmero entre 1 e o tamanho de DATA de Source.

Result:

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo FIND procura
o string Source para o string Search. Se a instruo encontrar o string Search, Result mostra a posio inicial do string Search dentro do string Source.

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

17-8

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. O valor de Start invlido. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. Verifique se o valor de Start est entre 1 e o tamanho de DATA de Source.

56

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


A mensagem de um terminal MessageView contm vrias informaes. O caracter de barra [ \ ] separa cada parte das informaes. Para localizar uma informao, a instruo FIND procura pelo caracter de barra ( /) e grava sua posio em find_pos.
MV_read.EM FIND Find String Source MV_msg '$06324\12\1\$r' Search find '\' Start 1 Result find_pos 5
42613

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

17-9

Insero de String (INSERT)

Linguagens Disponveis:

Lgica Ladder

A instruo INSERT adiciona caracteres ASCII a um local especfico dentro de um string.

Operandos de Lgica Ladder:

INSERT Insert String Source A Source B Start Dest

? ?? ? ?? ? ?? ? ??
42617

Operando: Source A Source B

Tipo: tipo de string tipo de string

Formato: tag tag

Insira: string para o qual adicionar os caracteres string contendo os caracteres a serem adicionados posio em Source A na qual adicionar os caracteres string para armazenar o resultado

Notas: Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Insira um nmero entre 1 e o tamanho de DATA de Source.

Start

SINT INT DINT tipo de string

imediato tag tag

Result:

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo INSERT
adiciona os caracteres em Source B a uma posio designada dentro de Source A e coloca o resultado em Destination.

O Start define onde em Source A que Source B ser adicionado. A menos que Source A e Destination sejam o mesmo tag, Source A permanece inalterado.

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

17-10

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. O valor de Start invlido. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. Verifique se o valor de Start est entre 1 e o tamanho de DATA de Source.

56

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Quando temp_high estiver energizado, a instruo INSERT adiciona os caracteres em string_2 na posio 2 dentro de string_1 e coloca o resultado em string_3:
temp_high INSERT Insert String Source A string_1 'AD' Source B string_2 'BC' Start 2 Dest string_3 'ABCD'
42619

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

17-11

Meio do String (MID)

Linguagens Disponveis:

Lgica Ladder

A instruo MID copia um nmero especfico de caracteres ASCII de um string e os armazena em outro string.

Operandos de Lgica Ladder:

MID Middle String Source Qty Start Dest

? ?? ? ?? ? ?? ? ??
42617

Operando: Source

Tipo: tipo de string

Formato: tag

Insira:

Notas:

string do qual os caracteres Os tipos de string so: so copiados tipo de dados STRING padro qualquer tipo de string novo que voc criar nmero de caracteres a serem copiados posio do primeiro caracter a ser copiado string para o qual os caracteres so copiados O Start mais o Quantity deve ser menor ou igual ao tamanho de DATA de Source. Insira um nmero entre 1 e o tamanho de DATA de Source.

Quantidade

SINT INT DINT SINT INT DINT tipo de string

imediato tag imediato tag tag

Start

Destination

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo MID copia um
grupo de caracteres de Source e coloca o resultado em Destination.

A posio de Start e Quantity definem os caracteres a serem copiados. A menos que Source e Destination sejam o mesmo tag, Source permanece inalterado.

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

17-12

Instrues de String ASCII (CONCAT, DELETE, FIND, INSERT, MID)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. O valor de Start ou Quantity invlido. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. 1. Verifique se o valor de Start est entre 1 e o tamanho de DATA de Source. 2. Verfique se o valor de Start mais o valor de Quantity menor ou igual ao tamanho de DATA de Source.

56

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Na esteira transportadora para transporte de bagagens de um aeroporto, cada mala tem um cdigo de barras. Os caracteres de 9 a 17 do cdigo de barras so o nmero do vo e o aeroporto destino da mala. Se o cdigo de barra for lido (bag_read.EM for energizado) a instruo MID copia o nmero do vo e o aeroporto destino para o string bag_flt_and_dest. As linhas subsequentes usam bag_flt_and_dest para determinar para onde levar a mala.
bag_read.EM MID Middle String Source bag_barcode 'NWA HOP 5058 AMS 01' Qty 9 Start Dest 9 bag_flt_and_dest '5058 AMS '
42619

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Captulo

18

Instrues de Coverso ASCII


(STOD, STOR, DTOS, RTOS)

Introduo
Se voc quiser converter: Representao de um valor de inteiro em um valor SINT, INT, DINT ou REAL Representa ASCII de um valor de ponto flutuante para um valor REAL

Use as instrues de converso ASCII para converter dados de ou para strings de caracteres ASCII.
Por exemplo: converter um valor de uma balana ou outro dispositivo ASCII para um inteiro, de forma voc o use em sua lgica converter um valor de uma balana ou outro dispositivo ASCII para um valor REAL, de forma voc possa us-lo em sua lgica Use esta instruo: STOD Consulte pgina: 18-3

STOR

18-5

Valor SINT, INT, DINT ou REAL para um string converter uma varivel para um string ASCII, de caracteres ASCII de forma que voc possa envi-la para um terminal MessageView Valor REAL para um string de caracteres ASCII converter uma varivel para um string ASCII, de forma que voc possa envi-la para um terminal MessageView

DTOS

18-7

RTOS

18-9

Voc tambm pode usar as seguintes instrues para comparar ou manipular caracteres ASCII:
Se voc quiser: adicionar caracteres ao final de um string remover caracteres de um string determinar o caracter inicial de um sub-string inserir caracteres em um string extrair caracteres de um string ver se os caracteres so iguais a caracteres especficos ver se os caracteres no so iguais a caracteres especficos ver se os caracteres so iguais ou maiores que caracteres especficos ver se os caracteres so maiores que caracteres especficos ver se os caracteres so iguais ou menores que caracteres especficos ver se os caracteres so menores que caracteres especficos Use esta instruo: CONCAT DELETE FIND INSERT MID EQU NEQ GEQ GRT LEQ LES Consulte pgina: 17-3 17-5 17-7 17-9 17-11 4-7 4-38 4-11 4-15 4-19 4-23

Publicao 1756-RM003D-PT-P - Junho 2001

18-2

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

Tipos de String
Voc armazena caracteres ASCII em tags que usam um tipo de dados tipo string.

Voc pode usar o tipo de dados STRING padro. Ele armazena at 82 caracteres. Voc pode criar um novo tipo de string que armazene menos ou mais caracteres.
Para criar um novo tipo de string, consulte Procedimentos Comuns dos Controladores Logix5000, publicao 1756-PM001.
42811

Cada tipo de string contm os seguintes membros:


Nome: LEN Tipo de Dados: DINT Descrio: nmero de caracteres no string Notas: A LEN atualiza a nova contagem de caracteres automaticamente sempre que voc: usar a janela String Browser para inserir caracteres usar as instrues que lem, convertem ou manipulam um string A LEN mostra o comprimento do string atual. O membro DATA pode conter caracteres adicionais, antigos, que no esto includos na contagem de LEN. DATA matriz SINT caracteres ASCII do string

Para acessar os caracteres do string, enderee o nome do tag. Por exemplo, para acessar os caracteres do tag string_1, insira string_1. Cada elemento da matriz DATA contm um caracter. Voc pode criar novos tipos de string que armazenem menos ou mais caracteres.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

18-3

String Para DINT (STOD)

Linguagens Disponveis:

Lgica Ladder

A instruo STOD converte a representao ASCII de um inteiro para um valor inteiro ou REAL.

Operandos de Lgica Ladder:

STOD String To DINT Source Dest

? ?? ? ??
42617

Operando: Source

Tipo: tipo de string

Formato: tag

Insira: tag que contm o valor em ASCII

Notas: Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar Se o valor de Source for um nmero de ponto flutuante, a instruo converte apenas a parte no fracionada do nmero (independente do tipo de dados de destino).

Destination

SINT INT DINT REAL

tag

tag para armazenar o valor inteiro

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo STOD
converte Source em um inteiro e coloca o resultado em Destination.

A instruo converte nmeros positivos e negativos. Se o string Source contiver caracteres no-numricos, a instruo STOD converte o primeiro conjunto de nmeros contnuos: A instruo salta os caracteres de controle iniciais ou no-numricos (exceto sinal de menos em frente a um nmero). Se o string contiver mltiplos grupos de nmeros que esto separados por delimitadores (ex.:/), a instruo converte somente o primeiro grupo de nmeros.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados.

Publicao 1756-RM003D-PT-P - Junho 2001

18-4

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. Ou:

53

O nmero de sada est alm dos limites do tipo de dados de destino.

Reduza o tamanho do valor ASCII. Use um tipo de dados maior para o destino.

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

S:C est energizadp. Destination removido. A instruo converte Source. Se o resultado for zero, ento S:Z est energizado. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Quando MV_read.EM estiver energizado, a instruo STOD converte o primeiro conjunto de caracteres numricos em MV_msg para um valor inteiro. A instruo salta o caracter de controle inicial ($06) e pra no delimitador ( \ ).
MV_read.EM STOD String To DINT Source MV_msg '$06324\12\1\$r' Dest MV_msg_nmbr 324
42620

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

18-5

String Para REAL (STOR)

Linguagens Disponveis:

Lgica Ladder

A instruo STOR converte a representao ASCII de um valor de ponto flutuante para um valor REAL.

Operandos de Lgica Ladder:

STOR String to Real Source Dest

? ?? ? ??
42617

Operando: Source

Tipo: tipo de string

Formato: tag

Insira: tag que contm o valor em ASCII

Notas: Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Destination

REAL

tag

tag para armazenar o valor REAL

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo STOR
converte Source em um valor REAL e coloca o resultado em Destination.

A instruo converte nmeros positivos e negativos. Se o string Source cpntiver caracteres no-numricos, a instruo STOR cpnverte o primeiro conjunto de nmeros contnuos, incluindo o ponto decimal [ . ]: A instruo salta os caracteres de controle iniciais ou no-numricos (exceto sinal de menos em frente a um nmero). Se o string contiver mltiplos grupos de nmeros que esto separados por delimitadores (ex.:/), a instruo converte somente o primeiro grupo de nmeros.

Flags de Status Aritmtico: Os flags de status aritmtico so afetados.

Publicao 1756-RM003D-PT-P - Junho 2001

18-6

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. Ou:

53

O nmero de sada est alm dos limites do tipo de dados de destino.

Reduza o tamanho do valor ASCII. Use um tipo de dados maior para o destino.

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

S:C est energizadp. Destination removido. A instruo converte Source. Se o resultado for zero, ento S:Z est energizado. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Depois de ler o peso de uma balana (weight_read.EM est energizado) a instruo STOR converte os caracteres numricos em weight_ascii para um valor REAL.
weight_read.EM STOR String to Real Source weight_ascii '428.259' Dest weight 428.259
42620

Voc pode ver uma pequena diferena entre as partes fracionadas de Source e Destination.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

18-7

DINT Para String (DTOS)

Linguagens Disponveis:

Lgica Ladder

A instruo DTOS produz a representao ASCII de um valor.

Operandos de Lgica Ladder:

DTOS DINT to String Source Dest

? ?? ? ??
42617

Operando: Source

Tipo: SINT INT DINT REAL tipo de string

Formato: tag

Insira: tag que contm o valor

Notas: Se Source for REAL, a instruo converte-o para um valor DINT. Consulte REAL para um inteiro na pgina A-6. Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Destination

tag

tag para armazenar o valor ASCII

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo DTOS
converte Source para um string de caracteres ASCII e coloca o resultado em Destination.

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

18-8

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. Crie um novo tipo de string que seja grande o suficiente para o string de sada. Use o novo tipo de string como o tipo de dados para o destino.

52

O string de sada maior que o destino.

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Quando temp_high estiver energizado, a instruo DTOS converte o valor em msg_num para um string de caracteres ASCII e coloca o resultado em msg_num_ascii. As linhas subsequentes inserem ou concatenam msg_num_ascii com outros strings para produzir uma mesnagem completa para um terminal de display.
temp_high DTOS DINT to String Source msg_num 23 Dest msg_num_ascii '23'
42620

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

18-9

REAL Para String (RTOS)

Linguagens Disponveis:

Lgica Ladder

A instruo RTOS produz a representao ASCII de um valor REAL.

Operandos de Lgica Ladder:

RTOS Real to String Source Dest

? ?? ? ??
42617

Operando: Source Destination

Tipo: REAL tipo de string

Formato: tag tag

Insira: tag que contm o valor REAL tag para armazenar o valor ASCII

Notas:

Os tipos de string so: tipo de dados STRING padro qualquer tipo de string novo que voc criar

Operandos do Bloco de Funo: Esta instruo no est disponvel no bloco de funo. Descrio: Quando a condio da linha for verdadeira, a instruo RTOS
converte Source para um string de caracteres ASCII e coloca o resultado em Destination.

Flags de Status Aritmtico: no afetados

Publicao 1756-RM003D-PT-P - Junho 2001

18-10

Instrues de Coverso ASCII (STOD, STOR, DTOS, RTOS)

Condies de Falha:
Tipo: 4 Cdigo: 51 Causa: O valor LEN do tag string maior que o tamanho de DATA do tag string. Mtodo de Recuperao: 1. Verifique se nenhuma instruo est escrevendo para o membro LEN do tag tipo string. 2. No valor de LEN, insira o nmero de caracteres que o string contm. Crie um novo tipo de string que seja grande o suficiente para o string de sada. Use o novo tipo de string como o tipo de dados para o destino.

52

O string de sada maior que o destino.

Execuo da Lgica Ladder:


Condio: pr-varredura entrada da condio da linha for falsa entrada da condio da linha for verdadeira Ao: A sada da condio da linha definida como falsa. A sada da condio da linha definida como falsa.

A instruo executa. A sada da condio da linha est definida como verdadeira.

Exemplo de Lgica Ladder:


Quando send_data estiver energizado, a instruo RTOS converte o valor em data_1 para um string de caracteres ASCII e coloca o resultado em data_1_ascii. As linhas subsequentes inserem ou concatenam data_1_ascii com outros strings para produzir uma mesnagem completa para um terminal de display.
send_data RTOS Real to String Source data_1 15.3001 Dest data_1_ascii '15.3001003'
42620

Voc pode ver uma pequena diferena entre as partes fracionadas de Source e Destination.

Execuo do Bloco de Funo: Esta instruo no est disponvel no bloco de funo.

Publicao 1756-RM003D-PT-P - Junho 2001

Apndice

Atributos Comuns

Introduo

Este apndice descreve os atributos comuns s instrues Logix .


Para mais informaes sobre: Valores Imediatos Converses de Dados Consulte pgina: A-1 A-1

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). EXEMPLO
Se voc inserir: -1 16#ffff (-1) 8#1234 (668) 2#1010 (10)

Preenchimento com zero de valores imediatos


O controlador armazenar: 16#ffff ffff (-1) 16#0000 ffff (65535) 16#0000 029 c (668) 16#0000 000a (10)

Converses de Dados

As converses de dados ocorrem quando se combina tipos de dados na sua programao:


Ao programar em: lgica ladder bloco de funo As converses podem ocorrer quando: se combina tipos de dados para os parmetros dentro de uma instruo se liga dois parmetros que possuem tipos diferentes de dados

Publicao 1756-RM003D-PT-P - Junho 2001

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?


Se: sim no Ento os operandos de entrada (por ex.: fonte, tag em uma expresso, limite) so convertidos em: REALs DINTs

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.

Publicao 1756-RM003D-PT-P - Junho 2001

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.
Este mtodo de converso: extenso de sinal Converte os dados, colocando: o valor do bit mais esquerda (o sinal do valor) em cada posio de bit esquerda dos bits existentes at que haja 32 bits. zeros esquerda dos bits existentes at que haja 32 bits

Preenchimento com zero

O exemplo a seguir mostra os resultados da converso de um valor usando uma extenso de sinal e preenchimento com zero.
Este valor. Converte para este valor por extenso de sinal Converte este valor por preenchimento com zero 2#1111_1111_1111_1111 2#1111_1111_1111_1111_1111_1111_1111_1111 (-1) (-1)

2#0000_0000_0000_0000_1111_1111_1111_1111

(65535)

der Logic Listing - Total number of rungs: 3


EQU Equal Source A remote_rack_1:I.Data[0] 2#1111_1111_1111_1111 Source B 2#1111_1111_1111_1111

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.

42093

Publicao 1756-RM003D-PT-P - Junho 2001

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.
EQU Equal Source A remote_rack_1:I.Data[0] 2#1111_1111_1111_1111 Source B int_0 2#1111_1111_1111_1111
42093

Publicao 1756-RM003D-PT-P - Junho 2001

Atributos Comuns

A-5

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.
EQU Equal Source A remote_rack_1:I.Data[0] 2#1111_1111_1111_1111 Source B int_0 2#1111_1111_1111_1111

2#1111_1111_1111_1111

MOV Move Source 2#1111_1111_1111_1111 Dest int_0 2#1111_1111_1111_1111

42093

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

Publicao 1756-RM003D-PT-P - Junho 2001

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. EXEMPLO
Este valor DINT: 16#0001_0081 (65.665)

Converso de um DINT para um INT e um SINT


Converte para este valor menor: INT: SINT: 16#0081 (129) 16#81 (-127)

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
Este valor REAL: -2,5 -1,6 -1,5 -1,4 1,4 1,5 1,6 2,5

Converso de valores REAL em valores DINT

Converte para este valor DINT: -2 -2 -2 -1 1 2 2 2

Publicao 1756-RM003D-PT-P - Junho 2001

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-RM003D-PT-P - Junho 2001

A-8

Atributos Comuns

Publicao 1756-RM003D-PT-P - Junho 2001

Apndice

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.

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).

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.

IREF

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.
Block_01

tagA

Block_02

Publicao 1756-RM003D-PT-P - Junho 2001

B-2

Atributos de Bloco de Funo

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.
Block_01

tagA

Block_02

tagA

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. 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.
1 2 3

Publicao 1756-RM003D-PT-P - Junho 2001

Atributos de Bloco de Funo

B-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 3 5

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.
1 2 3

fio de feedback localizado

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.

Publicao 1756-RM003D-PT-P - Junho 2001

B-4

Atributos de Bloco de Funo

Respostas de Bloco de Funo para Condies de Overflow


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.

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:
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. HLL INTG PI PIDE SCL SOC Resposta 3: A condio de overflow no se aplica. Estas instrues possuem geralmente uma sada booleana.

ALM DEDT DERV ESEL FGEN HPF LDL2 LDLG LPF MAVE MAXC MINC MSTD MUX

NTCH PMUL POSP RLIM RMPS SCRV SEL SNEG SRTP SSUM TOT UPDN

BAND BNOT BOR BXOR CUTD D2SD D3SD DFF JKFF OSFI

OSRI RESD RTOR SETD TOFR TONR

Modos de Temporizao

Estas instrues de controle de processo e inversor suportam modos diferentes de temporizao. DEDT DERV HPF INTG LDLG LDL2 LPF NTCH PI PIDE RLIM SCRV SOC TOT

Publicao 1756-RM003D-PT-P - Junho 2001

Atributos de Bloco de Funo

B-5

Existem trs modos de temporizao diferentes:


Modo de Temporizao: peridico Descrio: 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.

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.

Publicao 1756-RM003D-PT-P - Junho 2001

B-6

Atributos de Bloco de Funo

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: TimingMode Tipo de Dados: DINT Descrio: 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 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 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

RTSTime

DINT

RTSTimeStamp

DINT

Publicao 1756-RM003D-PT-P - Junho 2001

Atributos de Bloco de Funo

B-7

Parmetros de sada
Parmetro de Sada: Tipo de Dados: DeltaT REAL Descrio: 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 = (RTSTimeStampn - RTSTimeStampn-1) Status: TimingModeInv (Status.27) DINT BOOL Status do bloco de funo. Valor Invalid TimingMode. Usado somente no modo de amostragem em tempo real. Ajustado quando o ABS | DeltaT RTSTime | > 1 (,001 segundo). Valor Invalid RTSTime. Valor Invalid RTSTimeStamp. Valor Invalid DeltaT.

RTSMissed (Status.28) BOOL RTSTimeInv (Status.29) RTSTimeStampInv (Status.30) DeltaTInv (Status.31) BOOL BOOL BOOL

Publicao 1756-RM003D-PT-P - Junho 2001

B-8

Atributos de Bloco de Funo

Caractersticas dos modos de temporizao


O diagrama a seguir mostra como uma instruo determina o modo apropriado de temporizao.

Determina o modo baseado no tempo TimingMode = 0 TimingMode = 1 TimingMode = 2

Temporizao peridica

Temporizao na amostragem configurada

Temporizao em tempo real

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. Determine o tipo de tarefa

DeltaT = RTSTimeStampn - RTSTimeStampn-1 Se DeltaT > 0, a instruo executa. Se |RTSTIME - DeltaT| > 1, a instruo energiza o bit RTSMissed em Status.

Tarefa peridica

Tarefa no peridica

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-RM003D-PT-P - Junho 2001

Atributos de Bloco de Funo

B-9

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:
Entrada: Descrio:

.ProgProgReq .ProgOperReq .OperProgReq .OperOperReq

Um programa solicita para ir ao controle de Programa. Um programa solicita para ir ao controle pelo Operador. Um operador solicita para ir ao controle de Programa. Um operador solicita para ir ao controle pelo Operador.

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.

Publicao 1756-RM003D-PT-P - Junho 2001

B-10

Atributos de Bloco de Funo

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-RM003D-PT-P - Junho 2001

Atributos de Bloco de Funo

B-11

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.

Quando StartupSequenceActive energizada, a instruo PIDE colocada no controle de Programa e no modo Manual. O valor StartupCV usado como uma sada de malha.

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. 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..

Publicao 1756-RM003D-PT-P - Junho 2001

B-12

Atributos de Bloco de Funo

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-RM003D-PT-P - Junho 2001

ndice
converso para BCD 15-8 converso para inteiro 15-12 cpia 7-32 cpia sncrona 7-32 co-seno 13-5

A
adio 5-6 AHL 16-14 ajuste 12-27 alarmes 12-28 anexar leitura ASCII 16-24 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

D
dados retentivos B-1 dados transicionais 12-18 definio do valor do sistema 3-28 desabilitao da interrupo pelo usurio 10-18 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-49 deteco de diagnstico 12-10 diferente de 4-38 DINT Para String 18-7 distribuio do campo do bit 6-10 distribuio do campo do bit com target 6-13 diviso 5-15 diviso do mdulo 5-19

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 busca de string 17-7

E C
clculo 5-2 caracteres ASCII no buffer 16-10 carga do sequenciador 9-12 carga FIFO 8-10 carga LIFO 8-22 classificao 7-45 cdigos de erro ASCII 16-5 instruo MSG 3-7 combinao de tipos de dados A-1 comparao 4-2 comparao de bit de arquivo 12-2 comparao e busca de arquivo 7-20 Concatenao de String 17-3 condies de overflow B-5 configurao 3-13 instruo MSG 3-13 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 elementos instruo SIZE 7-53 Encontro de String 17-7 energizar sada 1-5 energizar sada com reteno 1-6 entrada do sequenciador 9-2 escala 12-29 escrita ASCII 16-28 estrutura CONTROL 7-7, 7-20, 7-41, 7-45, 7-49, 8-2,

8-6, 8-10, 8-17, 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 do tipo string 16-6 estrutura FBD_BIT_FIELD_DISTRIBUTE 6-13 estrutura FBD_COMPARE 4-8, 4-12, 4-16, 4-20, 4-24, 4-39 estrutura FBD_CONVERT 6-29, 15-8, 15-12 estrutura FBD_COUNTER 2-31 estrutura FBD_LIMIT 4-28 estrutura FBD_LOGICAL 6-17, 6-21, 6-25 estrutura FBD_MASK_EQUAL 4-34 estrutura FBD_MASKED_MOVE 6-7 estrutura FBD_MATH 5-7, 5-10, 5-13, 5-16, 5-20, 14-7

Publicacin 1756-RM003D-PT-P - Junho 2001

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-10, 16-14, 16-18, 16-21, 16-25, 16-29 estrutura STRING 16-6, 17-2, 18-2 estrutura TEMPORIZADOR 2-2, 2-6, 2-10 estrutura tipo string 17-2, 18-2
estruturas CONTADOR 2-23, 2-27 CONTROL 7-7, 7-20, 7-41, 7-45, 7-49, 8-2, 8-6,

H
habilitao da interrupo pelo usurio 10-18

I
igual a 4-7 Insero de String 17-9 instruo 16-14 instruo ABL 16-7 instruo ABS 5-29 instruo ACB 16-10 instruo ACL 16-12 instruo ACS 13-14 instruo ADD 5-6 instruo AFI 10-20 instruo AND 6-17 instruo ARD 16-17 instruo ARL 16-20 instruo ASN 13-11 instruo ATN 13-16 instruo AVE 7-41 instruo AWA 16-24 instruo AWT 16-28 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 CONCAT 17-3 instruo COP 7-32 instruo COS 13-5 instruo CPS 7-32 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 DELETE 17-5 instruo DIV 5-15 instruo DTOS 18-7 instruo DTR 12-18 instruo EQU 4-7 instruo FAL modo de operao 7-2 operandos 7-7 instruo FBC modo de busca 12-4

8-10, 8-17, 8-22, 8-28, 9-2, 9-7, 9-12, 12-3, 12-11 FBD_BIT_FIELD_DISTRIBUTE 6-13 FBD_COMPARE 4-8, 4-12, 4-16, 4-20, 4-24, 4-39 FBD_CONVERT 6-29, 15-8, 15-12 FBD_COUNTER 2-31 FBD_LIMIT 4-28 FBD_LOGICAL 6-17, 6-21, 6-25 FBD_MASK_EQUAL 4-34 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-10, 16-14, 16-18, 16-21, 16-25, 16-29 STRING 16-6, 17-2, 18-2 TEMPORIZADOR 2-2, 2-6, 2-10 tipo string 16-6, 17-2, 18-2 examinar se energizado 1-3 exponencial 14-7
expresses formato 4-6, 5-4, 7-19, 7-30 operadores vlidos 4-4, 5-4, 7-18, 7-30 seqncia de operao 4-6, 5-5, 7-19, 7-31

F
feedforward 12-38 fim temporrio 10-13 flags de status aritmtico overflow B-5

G
grau 15-2

Publicacin 1756-RM003D-PT-P - Junho 2001

ndice

operandos 12-2 instruo FFL 8-10 instruo FFU 8-16 instruo FIND 17-7 instruo FLL 7-37 instruo FOR 11-2 instruo FRD 15-12 instruo FSC modo de operao 7-2 operandos 7-20 instruo GEQ 4-11 instruo GRT 4-15 instruo GSV objetos 3-30 operandos 3-28 instruo INSERT 17-9 instruo JMP 10-2 instruo JSR 10-4 instruo LBL 10-2 instruo LEQ 4-19 instruo LES 4-23 instruo LFL 8-22 instruo LFU 8-28 instruo LIM 4-27 instruo LN 14-2 instruo LOG 14-4 instruo MCR 10-15 instruo MEQ 4-33 instruo MID 17-11 instruo MOD 5-19 instruo MOV 6-2 instruo MSG 3-13 cdigos de erro 3-7 conexo de cache 3-27 estrutura 3-2 mtodo de comunicao 3-26 operandos 3-2 instruo MUL 5-12 instruo MVM 6-4 instruo MVMT 6-7 instruo NEG 5-26 instruo NEQ 4-38 instruo NOP 10-21 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-7 instruo RTO 2-10 instruo RTOR 2-20 instruo RTOS 18-9 instruo SBR 10-4 instruo sempre falsa 10-20 instruo SIN 13-2 instruo SQI 9-2 instruo SQL 9-12 instruo SQO 9-7 instruo SQR 5-23 instruo SRT 7-45 instruo SSV objetos 3-30 operandos 3-28 instruo STOD 18-3 instruo STOR 18-5 instruo SUB 5-9 instruo TAN 13-8 instruo TND 10-13 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-18 instruo UIE 10-18 instruo XIO 1-3 instruo XOR 6-25 instruo XPY 14-7 instrues binrias 1-1 clculo 5-1 comparao 4-1 contador 2-1 controle de programa 10-1 converso 15-1 converso ASCII 18-1 converso de string 18-1 converso matemtica 15-1 deslocamento 8-1 entrada/sada 3-1 especiais 12-1
Publicacin 1756-RM003D-PT-P - Junho 2001

ndice

for/break 11-1 lgica 6-1 manipulao de string 17-1 manipulao de string ASCII 17-1 matemticas avanadas 14-1 matriz movimentao 6-1 porta serial 16-1 porta serial ASCII 16-1 seqenciador 9-1 temporizador 2-1 trigonomtrica 13-1 instrues ASCII ABL 16-7 ACB 16-10 ACL 16-12 AHL 16-14 ARD 16-17 ARL 16-20 AWA 16-24 AWT 16-28 CONCAT 17-3 DELETE 17-5 DTOS 18-7 FIND 17-7 INSERT 17-9 MID 17-11 RTOS 18-9 STOD 18-3 STOR 18-5 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-19 introduo 5-1 MOD 5-19 MUL 5-12 NEG 5-26 operadores vlidos 5-4, 7-18 seqncia de operao 5-5, 7-19
Publicacin 1756-RM003D-PT-P - Junho 2001

SQR 5-23 SUB 5-9 instrues de comparao CMP 4-2 EQU 4-7 formato da expresso 7-30 formato de expresso 4-6 GEQ 4-11 GRT 4-15 introduo 4-1 LEQ 4-19 LES 4-23 LIM 4-27 MEQ 4-33 NEQ 4-38 operadores vlidos 4-4, 7-30 seqncia de operao 4-6, 7-31 instrues de controle de programa introduo 10-1 UID 10-18 UIE 10-18 instrues de controle do programa AFI 10-20 JMP 10-2 JSR 10-4 LBL 10-2 MCR 10-15 NOP 10-21 RET 10-4 SBR 10-4 TND 10-13 instrues de converso DEG 15-2 FRD 15-12 introduo 15-1 RAD 15-5 TRN 15-15 instrues de converso de string DTOS 18-7 introduo 18-1 RTOS 18-9 STOD 18-3 STOR 18-5 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

ndice

FFU 8-16 introduo 8-1 LFL 8-22 LFU 8-28 instrues de entrada/sada GSV 3-28 introduo 3-1 MSG 3-2 SSV 3-28 instrues de lgica introduo 6-1 instrues de manipulao de string CONCAT 17-3 DELETE 17-5 FIND 17-7 INSERT 17-9 introduo 17-1 MID 17-11 instrues de matemtica avanada LOG 14-4 XPY 14-7 instrues de matriz arquivo/misc. 7-1 AVE 7-41 BSL 8-2 BSR 8-6 COP 7-32 CPS 7-32 DDT 12-10 deslocamento 8-1 FBC 12-2 FFL 8-10 FFU 8-16 FLL 7-37 FSC 7-20 LFL 8-22 LFU 8-28 modo de operao 7-2 seqenciador 9-1 SIZE 7-53 SQI 9-2 SQL 9-12 SQO 9-7 SRT 7-45 STD 7-49 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-7 ACB 16-10 ACL 16-12 AHL 16-14 ARD 16-17 ARL 16-20 AWA 16-24 AWT 16-28 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/break BRK 11-5 FOR 11-2 introduo 11-1 RET 11-7 instrues lgicas AND 6-17 NOT 6-29 OR 6-21 XOR 6-25 instrues matemticas avanadas introduo 14-1 LN 14-2
Publicacin 1756-RM003D-PT-P - Junho 2001

ndice

instrues PID operandos 12-21 instrues STD 7-49 instrues trigonomtricas ACS 13-14 ASN 13-11 ATN 13-16 COS 13-5 introduo 13-1 SIN 13-2 TAN 13-8

O
objeto AXIS 3-31 objeto CONTROLLER 3-39 objeto CONTROLLERDEVICE 3-39 objeto CST 3-41 objeto DF1 3-42 objeto FAULTLOG 3-45 objeto MESSAGE 3-46 objeto MODULE 3-48 objeto MOTIONGROUP 3-49 objeto PROGRAM 3-50 objeto ROUTINE 3-51 objeto SERIALPORT 3-52 objeto TASK 3-54 objeto WALLCLOCKTIME 3-55 objetos AXIS 3-31 CONTROLLER 3-39 CONTROLLERDEVICE 3-39 CST 3-41 DF1 3-42 FAULTLOG 3-45 instruo GSV/SSV 3-30 MESSAGE 3-46 MODULE 3-48 MOTIONGROUP 3-49 PROGRAM 3-50 ROUTINE 3-51 SERIALPORT 3-52 TASK 3-54 WALLCLOCKTIME 3-55 obteno do valor do sistema 3-28 operadores 4-4, 5-4, 7-18, 7-30 ordem de execuo B-2

L
label 10-2 leitura ASCII 16-17 limite 4-27 linha de leitura ASCII 16-20 linhas ASCII handshake 16-14 log base 10 14-4 natural 14-2 log natural 14-2

M
maior ou igual a 4-11 maior que 4-15 mascarado igual a 4-33 mscaras 12-19 mdia 7-41 Meio do String 17-11 menor ou igual a 4-19 menor que 4-23 mensagem 3-2 modo All (todos) 7-2 modo de busca 12-4, 12-12 modo de operao 7-2 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

P
polarizao da sada (bias) 12-38 preenchimento de arquivo 7-37 proporcional, integral e derivativo 12-21

R
radianos 15-5 raiz quadrada 5-23 REAL Para String 18-9 rearme do controle mestre 10-15 remoo de buffer e da fila ASCII 16-12 Remoo de String 17-5 reset 2-35 retorno 10-4, 11-7

N
negao 5-26

S
sada do sequenciador 9-7

Publicacin 1756-RM003D-PT-P - Junho 2001

ndice

salto 10-2 salto para sub-rotina 10-4 sem operao 10-21 seno 13-2 seqncia de operao 4-6, 5-5, 7-19, 7-31 SIZE instruo 7-53 String Para DINT 18-3 String Para REAL 18-5 sub-rotina 10-4 subtrao 5-9

truncagem 15-15

V
valor absoluto 5-29 valores imediatos A-1

X
X elevado potncia de Y 14-7

T
tamanho em elementos 7-53 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-7

Z
zeramento 6-16 zona morta 12-37

Publicacin 1756-RM003D-PT-P - Junho 2001

ndice

Notas:

Publicacin 1756-RM003D-PT-P - Junho 2001

Cdigos de Caracteres ASCII


Caracteres [ctrl-A] SOH [ctrl-B] STX [ctrl-C] ETX [ctrl-D] EOT [ctrl-E] ENQ [ctrl-F] ACK [ctrl-G] BEL [ctrl-H] BS [ctrl-I] HT [ctrl-J] LF [ctrl-K] VT [ctrl-L] FF [ctrl-M] CR [ctrl-N] SO [ctrl-O] SI [ctrl-P] DLE [ctrl-Q] DC1 [ctrl-R] DC2 [ctrl-S] DC3 [ctrl-T] DC4 [ctrl-U] NAK [ctrl-V] SYN [ctrl-W] ETB [ctrl-X] CAN [ctrl-Y] EM [ctrl-Z] SUB ctrl-[ ESC [ctrl-\] FS ctrl-] GS [ctrl-^] RS [ctrl-_] US Dec 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Hex $00 $01 $02 $03 $04 $05 $06 $07 $08 $09 $l ($0A) $0B $0C $r ($0D) $0E $0F $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $1A $1B $1C $1D $1E $1F Caracteres SPACE ! # $ % & ( ) * + , . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? Dec 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 Hex $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $2A $2B $2C $2D $2E $2F $30 $31 $32 $33 $34 $35 $36 $37 $38 $39 $3A $3B $3C $3D $3E $3F Caracteres @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ Dec 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 Hex $40 $41 $42 $43 $44 $45 $46 $47 $48 $49 $4A $4B $4C $4D $4E $4F $50 $51 $52 $53 $54 $55 $56 $57 $58 $59 $5A $5B $5C $5D $5E $5F Caracteres a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ DEL Dec 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 Hex $60 $61 $62 $63 $64 $65 $66 $67 $68 $69 $6A $6B $6C $6D $6E $6F $70 $71 $72 $73 $74 $75 $76 $77 $78 $79 $7A $7B $7C $7D $7E $7F

[ctrl-@] NUL 0

Publicao 1756-RM003D-PT-P - Junho 2001

Publicao 1756-RM003D-PT-P - Junho 2001 1


Substitui Publicao 1756-RM003C-EN-P - Novembro de 2000

PN 957464-55
2001 Rockwell International Corporation.

S-ar putea să vă placă și