Controladores Logix5000 ControlLogix 1756, CompactLogix 1769, SoftLogix 1789, FlexLogix 1794, PowerFlex 700S com DriveLogix
Referência do Sistema
ii
Informações Importantes ao Usuário Por causa da diversidade de usos dos produtos descritos nesta publicação, os responsáveis pela aplicação e usos deste equipamento de controle devem certificar-se de que todas as etapas necessárias foram tomadas para garantir que cada aplicação e uso cumpram todas as especificações de desempenho e segurança, incluindo todas as leis, regulamentações, códigos e normas aplicáveis. Em nenhum momento a Rockwell Automation será responsável por danos indiretos ou que possam vir acontecer como resultado do uso ou a aplicação destes produtos. As ilustrações, gráficos, amostras de programas e exemplos de layout mostrados neste manual são apenas para fins ilustrativos. Visto que há diversas variáveis e requisitos associados a qualquer instalação em especial, a Rockwell Automation não assume a responsabilidade (inclusive a responsabilidade por propriedade intelectual) pelo uso real baseado nos exemplos mostrados nesta publicação. É proibida a reprodução, parcial ou total, deste manual sem a permissão por escrito da Rockwell Automation.
Resumo das Alterações Esta versão do Manual de Referência do Sistema de Controladores Logix5000 corresponde à versão 15 dos controladores. As barras de revisão (mostradas na margem esquerda desta página) indicam as informações que foram alteradas. As alterações feitas nesse manual incluem: • • • •
Adição de controladores CompactLogix 1769-L32C e 1769-L35CR para ControlNet Adição de controlador DriveLogix5730 para PowerFlex 700S Adição de instruções de gerenciador de fase PSC, PCMD, POVR, PFL, PCLF, PXRQ, PRNP, PPD, PATT e PDET Os controladores 1794-L33, 1769-L20 e 1769-L30 foram removidos
Publicação 1756-QR107C-PT-P - Junho 2005
iv
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Conteúdos Capítulo 1 Controladores Logix
Família Logix de Controladores. . . . . . . . . . . . . . . . Controladores ControlLogix (1756-L6x, L55Mxx) . . . Controladores CompactLogix (1769-Lxx) . . . . . . . . . Controladores FlexLogix (1794-L34) . . . . . . . . . . . . Controladores SoftLogix5800 (1789-L10, -L30, -L60) . PowerFlex 700S com DriveLogix5720 . . . . . . . . . . . PowerFlex 700S com DriveLogix5730 . . . . . . . . . . . Comparação de Controlador . . . . . . . . . . . . . . . . . . Seleção do Modo de Operação do Controlador. . . . Memória Não-Volátil . . . . . . . . . . . . . . . . . . . . . . . Criação de um Projeto . . . . . . . . . . . . . . . . . . . . . . Organizador do Controlador. . . . . . . . . . . . . . . . . . Tarefas do Controlador. . . . . . . . . . . . . . . . . . . . . . Códigos de Acesso do Controlador . . . . . . . . . . . . . Aliases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Seleção de uma Linguagem de Programação . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. 1-1 . 1-2 . 1-4 1-10 1-12 1-14 1-16 1-18 1-21 1-22 1-24 1-25 1-26 1-30 1-33 1-34
Publicação 1756-QR107C-PT-P - Junho 2005
vi
Capítulo 2 Controle Seqüencial de Funções
Edição de um SFC . . . . . . . . . . . . . . . Qualificadores . . . . . . . . . . . . . . . . . . Como Você Quer Usar a Ação? . . . . . . Configuração da Execução de um SFC
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. 2-4 2-10 2-12 2-13
Sintaxe do Texto Estruturado . . . . . . . . . Atributos . . . . . . . . . . . . . . . . . . . . . . . . Expressões. . . . . . . . . . . . . . . . . . . . . . . Determinação da seqüência de execução Instruções . . . . . . . . . . . . . . . . . . . . . . . Construções . . . . . . . . . . . . . . . . . . . . . . Comentários . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. 3-1 . 3-4 . 3-6 3-12 3-13 3-15 3-25
Capítulo 3 Texto Estruturado
Publicação 1756-QR107C-PT-P - Junho 2005
vii
Capítulo 4 Diagrama de Blocos de Funções
Edição de um Diagrama de Blocos de Funções. . . . . Seqüência de Execução . . . . . . . . . . . . . . . . . . . . . . Determinação de uma Malha . . . . . . . . . . . . . . . . . . Determinação do Fluxo de Dados Entre Dois Blocos . Criação de um Atraso de Varredura . . . . . . . . . . . . . Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Definição do Controle de Programação/Operação . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . .
4-2 4-5 4-7 4-9 4-10 4-10 4-11
Capítulo 5 Lógica Ladder
Publicação 1756-QR107C-PT-P - Junho 2005
Lógica Ladder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 Edição de Lógica Ladder. . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3 Condição de linha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
viii
Capítulo 6 Acesso aos Valores de Sistema
Valores de Sistema Armazenados pelo Controlador . . . Monitoração de Flags de Status. . . . . . . . . . . . . . . . . . Obtenção e Definição de Dados do Sistema (Informações de Status) . . . . . . . . . . . . . . . . . Informações de Status Disponíveis - Objetos GSV/SSV. Determinação das Informações sobre a Memória do Controlador . . . . . . . . . . . . . . . . . . . . . .
. . . . 6-1 . . . . 6-2 . . . . 6-3 . . . . 6-5 . . . 6-26
Capítulo 7 Comunicação com Outros Controladores
Publicação 1756-QR107C-PT-P - Junho 2005
Opções de Comunicação . . . . . . . . . . . . . . . . . . . Produção e Consumo de um Tag . . . . . . . . . . . . . Envio de uma Mensagem . . . . . . . . . . . . . . . . . . . Mapear os Endereços CLP/SLC . . . . . . . . . . . . . . . Envie uma Mensagem para Dispositivos Múltiplos .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. 7-1 . 7-2 . 7-9 7-13 7-15
ix
Capítulo 8 Forcing
O Que Pode ser Forçado . Force de E/S . . . . . . . . . . Acompanhamento de uma Force de um SFC . . . . . . .
........ ........ Transição ........
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
8-1 8-4 8-7 8-7
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. 9-1 . 9-2 . 9-7 9-10 9-13 9-15
Capítulo 9 Falhas do Sistema
Falhas do Controlador . . . . . . . . Falha Grave . . . . . . . . . . . . . . . . Códigos de Falhas Graves. . . . . . Falhas de Advertência . . . . . . . . Códigos de Falha de Advertência Falhas Definidas Pelo Usuário. . .
. . . . . .
. . . . . .
. . . . . .
Capítulo 10 Estruturas de Dados
Estruturas Comuns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1
Capítulo 11 Conjunto de Instruções Publicação 1756-QR107C-PT-P - Junho 2005
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1
x
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Capítulo
1
Família Logix de Controladores As Plataformas Logix da Rockwell Automation fornecem uma única arquitetura de controle integrada para controle discreto, inversores, posicionamento e processo. A arquitetura Logix integrada fornece um controlador comum, ambiente de software de programação e suporte de comunicação através de diversas plataformas de hardware. Todos os controladores Logix operam com um sistema operacional de multi-tarefas e multi-processamento e suportam o mesmo conjunto de instruções em diversas linguagens de programação. Um pacote de software de programação 5000 programa todos os controladores Logix. Além disso, todos os controladores Logix incorporam a arquitetura NetLinx para comunicação através de redes EtherNet/IP, ControlNet e DeviceNet.
PowerFlex 700S com DriveLogix Uma solução integrada de inversores e controle
ControlLogix Plataforma de controle de alto desempenho e multi-processamento
SoftLogix5800 Controle de alto desempenho, baseado em microcomputador
FlexLogix Aplicações de controle de pequeno a médio porte que usem FLEX I/O
CompactLogix Compact I/O e controle para aplicações menores
Publicação 1756-QR107C-PT-P - Junho 2005
1-2
Controladores Logix
Controladores ControlLogix (1756-L6x, L55Mxx) Painel Frontal:
Indicador:
Cor:
Descrição:
RUN
desligado
O controlador está no modo Program ou Test.
verde sólido
O controlador está no modo Run.
desligado
Ou: • Não há dispositivos na configuração de E/S do controlador. • O controlador não contém um projeto (a memória do controlador está vazia).
verde sólido
O controlador está se comunicando com todos os dispositivos em sua configuração de E/S.
verde intermitente
Um ou mais dispositivos na configuração de E/S do controlador não respondem.
vermelho intermitente
O rack está danificado. Substitua o rack.
desligado
Nenhum dos códigos de acesso contém valores de force de E/S. Os forces de E/S estão inativos (desabilitados).
âmbar sólido
Os forces de E/S estão ativos (habilitados). Os valores de force de E/S podem ou não existir.
âmbar intermitente
Um ou mais endereços de entrada ou saída foram forçados para um estado energizado ou desenergizado, mas os forces não foram habilitados.
desligado
Não há atividade.
verde sólido
Dados sendo recebidos ou transmitidos.
E/S
FORCE
RS232
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Painel Frontal:
Indicador:
Cor:
Descrição:
BAT
desligado
A bateria suporta a memória.
vermelho sólido
A bateria: • não está instalada. • está 95% descarregada e deve ser substituída.
desligado
Sem alimentação aplicada.
vermelho intermitente
Se o controlador for:Então: um controlador novo O controlador precisará de uma atualização de firmware não for um controlador novoUma falha grave ocorreu. Para apagar a falha: - Gire a chave seletora de PROG para RUN para PROG - Entre em comunicação com o software RSLogix 5000
vermelho sólido
O controlador detectou uma falha não recuperável, portanto, ele removeu o projeto da memória. Para recuperar:
OK
1-3
1. Desligue e ligue a alimentação do rack. 2. Descarregue o projeto. 3. Mude para o modo Run. Se o LED OK permanecer vermelho sólido, entre em contato com seu representante Rockwell Automation ou distribuidor local. verde sólido
O controlador está OK.
verde intermitente
O controlador está armazenando ou carregando um projeto da/para a memória não-volátil.
Publicação 1756-QR107C-PT-P - Junho 2005
1-4
Controladores Logix
Controladores CompactLogix (1769-Lxx) Painel Frontal:
Indicador:
Cor:
Descrição:
RUN
desligado
O controlador está no modo Program ou Test.
verde sólido
O controlador está no modo Run.
desligado
Nenhum dos códigos de acesso contém valores de force de E/S. Os forces de E/S estão inativos (desabilitados).
âmbar sólido
Os forces de E/S estão ativos (habilitados). Os valores de force de E/S podem ou não existir.
âmbar intermitente
Um ou mais endereços de entrada ou saída foram forçados para um estado energizado ou desenergizado, mas os forces não foram habilitados.
desligado
A bateria suporta a memória.
vermelho sólido
A bateria: • não está instalada. • está 95% descarregada e deve ser substituída.
desligado
Ou: • Não há dispositivos na configuração de E/S do controlador. • O controlador não contém um projeto (a memória do controlador está vazia).
verde sólido
O controlador está se comunicando com todos os dispositivos em sua configuração de E/S.
verde intermitente
Um ou mais dispositivos na configuração de E/S do controlador não respondem.
vermelho intermitente
O controlador não está se comunicando com nenhum dispositivo. O controlador está com falha.
FORCE
BAT
E/S
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Painel Frontal:
Indicador:
Cor:
Descrição:
OK
desligado
Sem alimentação aplicada.
vermelho intermitente
Se o controlador for:Então: um controlador novo O controlador precisará de uma atualização de firmware não for um controlador novoUma falha grave ocorreu. Para apagar a falha: - Gire a chave seletora de PROG para RUN para PROG - Entre em comunicação com o software RSLogix 5000
vermelho sólido
O controlador detectou uma falha não recuperável, portanto, ele removeu o projeto da memória. Para recuperar:
1-5
1. Desligue e ligue a alimentação do rack. 2. Descarregue o projeto. 3. Mude para o modo Run. Se o LED OK permanecer vermelho sólido, entre em contato com seu representante Rockwell Automation ou distribuidor local.
DCH0 (RS-232) Channel 1 (RS-232) (1769-L31, -L30 somente)
verde sólido
O controlador está OK.
verde intermitente
O controlador está armazenando ou carregando um projeto da/para a memória não-volátil.
desligado
As comunicações configuradas pelo usuário estão ativas.
verde sólido
A comunicação padrão está ativa.
desligado
Não há atividade.
verde sólido
Dados sendo recebidos ou transmitidos.
Publicação 1756-QR107C-PT-P - Junho 2005
1-6
Controladores Logix
Controladores CompactLogix (1769-L31, -L32E, -L35E, -L32C, -L35CR) - CompactFlash Indicador:
Cor:
Descrição:
CompactFlash CF
desligado
Sem atividade.
verde intermitente
O controlador está lendo ou escrevendo no cartão CompactFlash.
vermelho intermitente
O cartão CompactFlash não possui um sistema de arquivo válido.
Controladores CompactLogix (1769-L32E, -L35E) - EtherNet Indicador:
Cor:
Descrição:
EtherNet/IP MS
desligado
Não há atividade.
verde intermitente
A porta EtherNet/IP não tem um endereço IP e está operando no modo BOOTP.
verde sólido
A comunicação EtherNet/IP está ativa.
vermelho sólido
Um dos seguintes itens ocorreu: • O controlador está mantendo a porta EtherNet/IP em reset ou o controlador tem uma falha. • A porta EtherNet/IP está desempenhando seu auto-teste de energização. • Uma falha irrecuperável ocorreu. Desligue e ligue a alimentação do controlador.
vermelho intermitente
O firmware está sendo atualizado.
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Indicador:
Cor:
Descrição:
EtherNet/IP NS
desligado
Não há atividade. A porta EtherNet/IP não tem um endereço IP e está operando no modo BOOTP.
verde intermitente
A porta EtherNet/IP possui um endereço IP, porém, não há conexões CIP estabelecidas.
verde sólido
A porta EtherNet/IP possui um endereço IP e as conexões CIP estão estabelecidas.
vermelho sólido
O endereço IP atribuído já está em uso.
vermelho/verde intermitente
A porta EtherNet/IP está desempenhando seu auto-teste de energização.
desligado
A porta EtherNet/IP não está conectada corretamente à rede EtherNet/IP. Certifique-se de que todos os cabos Ethernet estejam conectados e de que a chave Ethernet esteja energizada.
verde intermitente
Um dos seguintes itens ocorreu: • A porta EtherNet/IP está desempenhando seu auto-teste de energização. • A porta EtherNet/IP está se comunicando na rede.
verde sólido
A porta EtherNet/IP está conectada corretamente à rede EtherNet/IP.
EtherNet/IP LNK
1-7
Publicação 1756-QR107C-PT-P - Junho 2005
1-8
Controladores Logix
Controladores CompactLogix (1769-L32C, -L35CR) - ControlNet Indicador:
Cor:
Descrição:
ControlNet MS
desligado
o controlador não tem alimentação. O controlador está com falha.
vermelho estável
ocorreu uma falha grave no controlador.
vermelho intermitente
ocorreu uma falha de advertência porque uma atualização de firmware estava em andamento. ocorreu uma troca de chave de endereço de nó. As chaves de endereço de nó do controlador foram alteradas desde a energização. o controlador usa firmware inválido. o endereço de nó do controlador é duplicata do endereço de outro dispositivo.
verde estável
as conexões foram estabelecidas.
verde intermitente
nenhuma conexão foi estabelecida.
vermelho/verde intermitente
o controlador está executando o auto-diagnóstico.
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Indicador:
ControlNet
(1)
Se os dois indicadores de canal estiverem:
Descrição:
desligado
um canal está desabilitado.
verde estável
operação normal em andamento.
verde intermitente/desligado
ocorreram erros temporários de rede.
1-9
o nó não está configurado para entrar em comunicação. vermelho intermitente/desligado
ocorreu uma falha de mídia. nenhum outro nó presente na rede.
vermelho/verde intermitente
a rede está configurada incorretamente.
Se o indicador de um canal estiver:
(1)
desligado
verifique os indicadores de MS.
vermelho estável
O controlador está com falha.
alternando vermelho/verde
o controlador está executando um auto-teste.
alternando vermelho/desligado
o nó está configurado incorretamente.
O canal B está identificado com etiqueta apenas no controlador 1769-L35CR. O controlador 1769-L32C tem apenas o canal A, mas usa o segundo indicador em alguns padrões de LED, como descrito nesta tabela.
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 10
Controladores Logix
Controladores FlexLogix (1794-L34) Painel Frontal:
Indicador:
Cor:
Descrição:
RUN
desligado
O controlador está no modo Program ou Test.
verde sólido
O controlador está no modo Run.
desligado
Sem alimentação aplicada.
vermelho intermitente
Se o controlador for:Então: um controlador novo O controlador precisará de uma atualização de firmware não for um controlador novoUma falha grave ocorreu. Para apagar a falha: - Gire a chave seletora de PROG para RUN para PROG - Entre em comunicação com o software RSLogix 5000
vermelho sólido
O controlador detectou uma falha não recuperável, portanto, ele removeu o projeto da memória. Para recuperar:
OK
1. Desligue e ligue a alimentação do rack. 2. Descarregue o projeto. 3. Mude para o modo Run. Se o LED OK permanecer vermelho sólido, entre em contato com seu representante Rockwell Automation ou distribuidor local.
BATTERY
Publicação 1756-QR107C-PT-P - Junho 2005
verde sólido
O controlador está OK.
verde intermitente
O controlador está armazenando ou carregando um projeto da/para a memória não-volátil.
desligado
A bateria suporta a memória.
vermelho
A bateria: • não está instalada. • está 95% descarregada e deve ser substituída.
Controladores Logix
Painel Frontal:
Indicador:
Cor:
Descrição:
E/S
desligado
Ou: • O descarregamento do controlador do projeto não foi feito (a condição após a energização). • Nenhuma E/S ou comunicação configurada.
verde sólido
O controlador está se comunicando com todos os dispositivos.
verde intermitente
Um ou mais dispositivos não estão respondendo.
desligado
O trilho está inibido.
verde sólido
O controlador está se comunicando com todos os dispositivos no trilho.
verde intermitente
Um ou mais dispositivos naquele trilho não estão respondendo.
vermelho intermitente
Não existe módulo naquele trilho.
desligado
Não há atividade.
verde sólido
Dados sendo recebidos ou transmitidos.
desligado
Nenhum dos códigos de acesso contém valores de force de E/S. Os forces de E/S estão inativos (desabilitados).
âmbar sólido
Os forces de E/S estão ativos (habilitados). Os valores de force de E/S podem ou não existir.
âmbar intermitente
Um ou mais endereços de entrada ou saída foram forçados para um estado energizado ou desenergizado, mas os forces não foram habilitados.
local e LOCAL2
RS232
FORCE
1 - 11
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 12
Controladores Logix
Controladores SoftLogix5800 (1789-L10, -L30, -L60) Painel Frontal:
Indicador:
Cor:
Descrição:
RUN
desligado
O controlador está no modo Program ou Test.
verde sólido
O controlador está no modo Run.
desligado
Ou: • Não há dispositivos na configuração de E/S do controlador. • O controlador não contém um projeto (a memória do controlador está vazia).
verde sólido
O controlador está se comunicando com todos os dispositivos em sua configuração de E/S.
verde intermitente
Um ou mais dispositivos na configuração de E/S do controlador não respondem.
vermelho intermitente
Um erro virtual do rack foi detectado. Entre em contato com o seu representante Rockwell Automation ou distribuidor local.
desligado
Nenhum dos códigos de acesso contém valores de force de E/S. Os forces de E/S estão inativos (desabilitados).
verde intermitente
Pelo menos um código de acesso contém um valor de force de E/S. Os valores do force de E/S estão inativos (desabilitados).
verde sólido
Os forces de E/S estão ativos (habilitados). Os valores de force de E/S podem ou não existir.
desligado
Nenhuma porta COM foi selecionada.
verde sólido
A porta COM selecionada foi atribuída com sucesso ao canal 0 do controlador.
vermelho sólido
Existe uma porta COM em conflito ou você selecionou um número de porta COM inválido.
E/S
FRC
RS232(1)
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Painel Frontal:
Indicador: BAT
OK
(1)
Cor:
Descrição:
desligado
Operação normal.
âmbar intermitente
O controlador está no modo de energização
vermelho sólido
Falha no armazenamento contínuo no controlador.
vermelho intermitente
Se o controlador for:Então: um controlador novo O controlador precisará de uma atualização de firmware não for um controlador novoUma falha grave ocorreu. Para apagar a falha: - Gire a chave seletora de PROG para RUN para PROG - Entre em comunicação com o software RSLogix 5000
vermelho sólido
O controlador detectou uma falha não recuperável, portanto, ele removeu o projeto da memória. Para recuperar:
1 - 13
1. Desligue e ligue a alimentação do rack. 2. Descarregue o projeto. 3. Mude para o modo Run. Se o LED OK permanecer vermelho sólido, entre em contato com seu representante Rockwell Automation ou distribuidor local. verde sólido (1)
O controlador está OK.
Observe que estas funções de LED diferem ligeiramente dos mesmos LEDs em um controlador ControlLogix.
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 14
Controladores Logix
PowerFlex 700S com DriveLogix5720 Painel Frontal:
Indicador:
Cor:
Descrição:
RUN
desligado
O controlador está no modo Program ou Test.
verde sólido
O controlador está no modo Run.
desligado
Nenhum dos códigos de acesso contém valores de force de E/S. Os forces de E/S estão inativos (desabilitados).
âmbar intermitente
Pelo menos um código de acesso contém um valor de force de E/S. Os valores do force de E/S estão inativos (desabilitados).
âmbar sólido
Os forces de E/S estão ativos (habilitados). Os valores de force de E/S podem ou não existir.
desligado
A bateria suporta a memória.
vermelho sólido
A bateria: • não está instalada. • está 95% descarregada e deve ser substituída.
desligado
Ou: • Não há dispositivos na configuração de E/S do controlador. • O controlador não contém um projeto (a memória do controlador está vazia).
verde sólido
O controlador está se comunicando com todos os dispositivos em sua configuração de E/S.
verde intermitente
Um ou mais dispositivos na configuração de E/S do controlador não respondem.
vermelho intermitente
Não é possível solicitar conexões de E/S, o controlador está no modo Run.
FORCE
BAT
E/S
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Painel Frontal:
1 - 15
Indicador:
Cor:
Descrição:
RS232
desligado
Nenhuma porta COM foi selecionada.
verde sólido
A porta COM selecionada foi atribuída com sucesso ao canal 0 do controlador.
vermelho sólido
Existe uma porta COM em conflito ou você selecionou um número de porta COM inválido.
vermelho intermitente
Se o controlador for: um controlador novo não for um controlador novo
vermelho sólido
O controlador detectou uma falha não recuperável, portanto, ele removeu o projeto da memória. Para recuperar: 1. Desligue e ligue a alimentação do rack. 2. Descarregue o projeto. 3. Mude para o modo Run. Se o LED OK permanecer vermelho sólido, entre em contato com seu representante Rockwell Automation ou distribuidor local.
verde sólido
O controlador está OK.
verde intermitente
O controlador está armazenando ou carregando um projeto da/para a memória não-volátil.
OK
Então: O controlador precisará de uma atualização de firmware Uma falha grave ocorreu. Para apagar a falha: - Gire a chave seletora de PROG para RUN para PROG - Entre em comunicação com o software RSLogix 5000
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 16
Controladores Logix
PowerFlex 700S com DriveLogix5730 Painel Frontal:
Indicador:
Cor:
Descrição:
RUN
desligado
O controlador está no modo Program ou Test.
verde sólido
O controlador está no modo Run.
desligado
Nenhum dos códigos de acesso contém valores de force de E/S. Os forces de E/S estão inativos (desabilitados).
âmbar sólido
Os forces de E/S estão ativos (habilitados). Os valores de force de E/S podem ou não existir.
âmbar intermitente
Um ou mais endereços de entrada ou saída foram forçados para um estado energizado ou desenergizado, mas os forces não foram habilitados.
desligado
A bateria suporta a memória.
vermelho sólido
A bateria: • não está instalada. • está 95% descarregada e deve ser substituída.
desligado
Ou: • Não há dispositivos na configuração de E/S do controlador. • O controlador não contém um projeto (a memória do controlador está vazia).
verde sólido
O controlador está se comunicando com todos os dispositivos em sua configuração de E/S.
verde intermitente
Um ou mais dispositivos na configuração de E/S do controlador não respondem.
vermelho intermitente
O controlador não está se comunicando com nenhum dispositivo. O controlador está com falha.
FORCE
BAT
E/S
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
Painel Frontal:
1 - 17
Indicador:
Cor:
Descrição:
COM
desligado
Sem atividade no RS-232.
verde intermitente
Atividade no RS-232.
desligado
Sem alimentação aplicada.
vermelho intermitente
Se o controlador for: um controlador novo não for um controlador novo
vermelho sólido
O controlador detectou uma falha não recuperável, portanto, ele removeu o projeto da memória. Para recuperar: 1. Desligue e ligue a alimentação do rack. 2. Descarregue o projeto. 3. Mude para o modo Run. Se o LED OK permanecer vermelho sólido, entre em contato com seu representante Rockwell Automation ou distribuidor local.
verde sólido
O controlador está OK.
verde intermitente
O controlador está armazenando ou carregando um projeto da/para a memória não-volátil.
OK
Então: O controlador precisará de uma atualização de firmware Uma falha grave ocorreu. Para apagar a falha: - Gire a chave seletora de PROG para RUN para PROG - Entre em comunicação com o software RSLogix 5000
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 18
Controladores Logix
Comparação de Controlador Características Comuns
ControlLogix 1756
CompactLogix 1769
SoftLogix 1789
FlexLogix 1794
PowerFlex 700S com DriveLogix
tarefas do controlador • contínua • periódica • de evento
• 32 tarefas (somente uma contínua) • tarefas de evento: é compatível com todos os disparos de evento
• 1769-L35E, -L35CR: 8 tarefas • 1769-L32E, -L32C: 6 tarefas • 1769-L31: 4 tarefas • somente uma contínua • tarefas de evento: suporta disparo de código de acesso consumido e instrução EVENT
• 32 tarefas (somente uma contínua) • tarefas de evento: suporta todos os disparos de eventos, mais os de saída e eventos Windows
• 8 tarefas (somente uma contínua) • tarefas de evento: suporta disparo de código de acesso consumido e instrução EVENT
• 8 tarefas (somente uma contínua) • tarefas de evento: suporta disparos de evento de movimento e eixo
memória do usuário
1756-L55M12 1756-L55M13 1756-L55M14 1756-L55M16 1756-L55M22 1756-L55M23 1756-L55M24 1756-L61 1756-L62 1756-L63
750 Kbytes 1,5 Mbytes 3,5 Mbytes 7,5 Mbytes 750 Kbytes 1,5 Mbytes 3,5 Mbytes 2 Mbytes 4 Mbytes 8 Mbytes
1769-L31 512 Kbytes 1769-L32E, -L32C 750 Kbytes 1769-L35E, -L35CR 1,5 Mbytes
1789-L10 2 Mbytes 3 slots, sem movimento 1789-L30 64 Mbytes 5 slots 1789-L60 64 Mbytes 16 slots
1794-L34
5720
1756-L55M12 1756-L55M13 1756-L55M14 1756-L55M16 1756-L55M22 1756-L55M23 1756-L55M24 1756-L6x
nenhuma nenhuma nenhuma nenhuma sim sim sim CompactFlash
CompactFlash
nenhuma
sim
memória não-volátil do usuário
Publicação 1756-QR107C-PT-P - Junho 2005
512 Kbits
5730
5720 5730
256 Kbytes 768 Kbytes com memória de expansão 1,5 Mbytes
sim (memória de expansão) CompactFlash
Controladores Logix
1 - 19
Características Comuns
ControlLogix 1756
CompactLogix 1769
SoftLogix 1789
FlexLogix 1794
PowerFlex 700S com DriveLogix
portas de comunicação incorporadas
1 porta serial RS-232 (DF1 ou ASCII)
• 1769-L31: 2 portas seriais RS-232 (apenas uma DF1, outra DF1 ou ASCII) • 1769-L32C, -L35CR: 1 porta ControlNet e 1 porta serial RS-232 (DF1 ou ASCII) • 1769-L32E, -L35E: 1 porta EtherNet/IP e 1 porta serial RS-232 (DF1 ou ASCII)
depende do microcomputador
• 1 porta serial RS-232 (DF1 ou ASCII) • 2 slots para cartões de comunicação 1788
5720 • 1 porta serial RS-232 (DF1 ou ASCII) • 1 slot para cartões de comunicação 1788 5730 • 1 porta serial RS-232 (DF1 ou ASCII) • 1 slot para 1788 (opcional) • 1 ethernet incorporada (opcional)
Opções de Comunicação (essas opções têm produtos e perfis específicos para suas plataformas estão disponíveis outras opções através de produtos de terceiros e com perfis genéricos)
EtherNet/IP ControlNet DeviceNet Data Highway Plus Remote I/O serial Modbus via rotina ladder DH-485 SynchLink
EtherNet/IP ControlNet DeviceNet serial Modbus via rotina ladder DH-485
EtherNet/IP ControlNet DeviceNet serial
EtherNet/IP ControlNet DeviceNet serial Modbus via rotina ladder DH-485
EtherNet/IP ControlNet DeviceNet serial Modbus via rotina ladder DH-485
conexões
64 via ControlNet (48 recomendados) 128 via EtherNet/IP
32 via ControlNet 32 via EtherNet/IP
64 via ControlNet (48 recomendados) EtherNet/IP limitado por tipo e número de cartões
32 via ControlNet 32 via EtherNet/IP
32 via ControlNet 32 via EtherNet/IP
redundância do controlador
suporte a redundância total
não aplicável
não aplicável
backup com controlador ativo via DeviceNet
não aplicável
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 20
Controladores Logix
Características Comuns
ControlLogix 1756
CompactLogix 1769
SoftLogix 1789
FlexLogix 1794
PowerFlex 700S com DriveLogix
E/S nativa
ControlLogix I/O 1756
Compact I/O 1769
suportado via cartões de E/S de barramento PCI de terceiros
FLEX I/O 1794 FLEX Ex I/O 1797
5720 • FLEX I/O 1794 • FLEX Ex I/O 1797 5730 • Compact I/O 1769
movimento simples
passo a passo servo via DeviceNet inversor analógico ca
passo a passo servo via DeviceNet inversor analógico ca
passo a passo servo via DeviceNet inversor analógico ca
passo a passo servo via DeviceNet inversor analógico ca
passo a passo servo via DeviceNet inversor analógico ca
movimento integrado
interface SERCOS interface analógica com opções: • entrada para encoder de quadratura • entrada LDT • entrada SSI
não aplicável
interface SERCOS interface analógica com opções: • entrada para encoder de quadratura • entrada LDT • entrada SSI
não aplicável
1 servo pleno 1 eixo de realimentação
opções de montagem e/ou instalação
rack 1756
suporte do painel Guia DIN
nenhuma
suporte do painel Guia DIN
incorporado
linguagens de programação
• • • •
• • • •
• • • •
• • • •
• • • •
lógica ladder texto estruturado bloco de funções controle seqüencial de funções
Publicação 1756-QR107C-PT-P - Junho 2005
lógica ladder texto estruturado bloco de funções controle seqüencial de funções
lógica ladder texto estruturado bloco de funções controle seqüencial de funções • rotinas externas (DLLs do Windows desenvolvidas usando C/C++)
lógica ladder texto estruturado bloco de funções controle seqüencial de funções
lógica ladder texto estruturado bloco de funções controle seqüencial de funções
Controladores Logix
1 - 21
Seleção do Modo de Operação do Controlador. Use esta tabela para determinar o modo de operação do controlador: Se você quiser:
Selecione um destes modos: Run
Remote Run
mudar as saídas para o estado comandado pela lógica do projeto
Program
Test
Program
X
X
X
X
X
X
X
muda o modo do controlador através do software
X
X
X
descarregar um projeto
X
X
X
X
X
X
X
X
X
X
mudar as saídas para seus estados configurados para o modo Program executa (varredura) tarefas
programar uma rede ControlNet enquanto estiver on-line, editar o projeto
X
enviar mensagens
X
X
X
enviar e receber dados em resposta a uma mensagem de outro controlador
X
X
X
X
X
produzir e consumir códigos de acesso
X
X
X
X
X
Gire a chave no painel frontal do controlador para selecionar o modo.
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 22
Controladores Logix
Memória Não-Volátil Estes controladores possuem memória não-volátil para armazenamento do projeto. Tipo de Controlador: CompactLogix5332E
Código de Catálogo: 1769-L32E
(1)
CompactLogix5335E
1769-L35E
(1)
CompactLogix5331
1769-L31(1)
CompactLogix5332C
1769-L32C(1)
Revisão de Firmware: 13.x ou superior 12.x ou superior 13.x ou superior 13.x ou superior
CompactLogix5335CR
(1)
1769-L35CR
13.x ou superior
ControlLogix5555
1756-L55M22
10.x ou superior
1756-L55M23
8.x ou superior
1756-L55M24
8.x ou superior
ControlLogix5560M03SE
1756-L60M03SE(1)
13.x ou superior
ControlLogix5561 e ControlLogix5562
1756-L61, -L62
ControlLogix5563
1756-L63(1)
11.x ou superior para série A 13.x ou superior para série B
DriveLogix5720
vários
10.x ou superior
DriveLogix5730
vários(1)
13.x ou superior
FlexLogix5434 Série B
1794-L34/B
11.x ou superior
(1)
(1)
Requer um cartão de memória 1784-CF64 Industrial CompactFlash.
Publicação 1756-QR107C-PT-P - Junho 2005
12.x ou superior para série A 13.x ou superior para série B
Controladores Logix
1 - 23
Nas propriedades do controlador, selecione armazenar/carregar um projeto para/de uma memória não-volátil:
Um projeto que está na memória não-volátil do controlador atualmente (se houver).
Um projeto que está na memória do usuário (RAM) do controlador atualmente.
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 24
Controladores Logix
Criação de um Projeto No software RSLogix 5000, selecione File → New.
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
1 - 25
Organizador do Controlador O software de programação usa o Organizador do Controlador para definir um projeto.
Tarefa Contínua Tarefa
Program
Rotina
Tarefa Periódica
Rotina Principal
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 26
Controladores Logix
Tarefas do Controlador Uma tarefa fornece informações de programação e prioridade para um conjunto de um ou mais programas executados com base em critérios específicos. Uma vez que uma tarefa é disparada (ativada), todos os programas atribuídos (programados) às tarefas são executados na ordem em que são mostrados no organizador do controlador. Tarefa:
Definição:
tarefa contínua
A tarefa contínua é executada em segundo plano. Qualquer tempo de CPU não alocado para outras operações (como posicionamento, comunicação e tarefas periódicas ou eventuais) é usado para executar os programas na tarefa contínua. • A tarefa contínua é executada todo o tempo. Quando a tarefa contínua conclui uma varredura completa, ela reinicia imediatamente. • Um projeto não requer uma tarefa contínua. Se usada, deve haver apenas uma tarefa contínua.
tarefa periódica
Uma tarefa periódica realiza uma função em uma taxa específica. • Sempre que o tempo para a tarefa periódica expira, a tarefa periódica interrompe qualquer tarefa de prioridade mais baixa, executa uma vez e volta para o controle de onde a tarefa anterior parou. • Você pode configurar o período de tempo de 1 ms a 2000 s. O padrão é 10 ms. O desempenho de uma tarefa periódica depende do tipo de controlador Logix e da lógica da tarefa. Atribua um nível de prioridade (1 é o mais alto, 15 é o mais baixo) para cada tarefa periódica: • A tarefa com prioridade mais alta interrompe todas as tarefas com prioridade mais baixa. • Uma tarefa com prioridade alta pode interromper tempos múltiplos de uma tarefa com prioridade menor. • As tarefas com a mesma prioridade executam em intervalos curtos de 1 ms.
tarefa por evento
Uma tarefa por evento desempenha uma função somente quando um evento específico (disparo) ocorre. Sempre que o disparo para a tarefa de evento ocorrer, a tarefa interrompe qualquer outra de prioridade mais baixa, executa uma vez e volta para o controle de onde a tarefa anterior parou. Os disparos disponíveis são Module Input Data State Change, Consumed Tag, Axis Registration 1 ou 2, Axis Watch, Motion Group Execution, EVENT Instruction.
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
1 - 27
O número de tarefas suportadas depende do controlador: Controlador
Número de Tarefas Suportadas:
ControlLogix
32 tarefas, uma das quais pode ser contínua Existem 15 níveis de prioridade configuráveis para tarefas periódicas (1-15), sendo 1 a maior prioridade e 15 a menor.
CompactLogix e PowerFlex 700S com DriveLogix5730
1769-L35E, -L35CR: 8 tarefas, uma das quais pode ser contínua 1769-L32E, -L32C: 6 tarefas, uma das quais pode ser contínua 1769-L31, -L30, -L20: 4 tarefas, uma das quais pode ser contínua Existem 15 níveis de prioridade configuráveis para tarefas periódicas (1-15), sendo 1 a maior prioridade e 15 a menor. O controlador CompactLogix usa uma tarefa periódica exclusiva na prioridade 7 para processar os dados de E/S. Esta tarefa periódica é executada no RPI mais rápido programado para o sistema. Seu tempo de execução total é o tempo que leva para executar a varredura dos módulos de E/S configurados.
FlexLogix e PowerFlex 700S com DriveLogix5720
8 tarefas, uma das quais pode ser contínua Existem 15 níveis de prioridade configuráveis para tarefas periódicas (1-15), sendo 1 a maior prioridade e 15 a menor. O controlador usa uma tarefa periódica exclusiva na prioridade 7 para processar os dados de E/S. Esta tarefa periódica é executada no RPI mais rápido programado para o sistema. Seu tempo de execução total é o tempo que leva para executar a varredura dos módulos de E/S configurados.
SoftLogix5800
32 tarefas, uma das quais pode ser contínua Existem 3 níveis de prioridade configuráveis para tarefas periódicas (1-3), sendo 1 a maior prioridade e 3 a menor.
Uma tarefa pode ter até 32 programas separados, cada um com suas próprias rotinas executáveis e códigos de acesso do programa. Uma vez que uma tarefa é iniciada (ativada), todos os programas definidos para a tarefa são executados na ordem na qual eles foram agrupados. Os programas só podem aparecer uma vez no Organizador do Controlador e não podem ser compartilhados por tarefas múltiplas. Quando a tarefa é acionada, os programas definidos na tarefa são executados até a conclusão, do primeiro até o último. Cada programa contém códigos de acesso de programa, uma rotina principal, outras rotinas e uma rotina opcional de falha. Quando um programa é executado, sua rotina principal é executada primeiro. Use a rotina principal para chamar (executar) outras rotinas (sub-rotinas). Para chamar uma outra rotina em um programa, use uma instrução JSR (Jump to Subroutine).
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 28
Controladores Logix
Detalhes de tarefa de evento Não são todos os controladores Logix que suportam disparos de tarefa de evento: Se você tiver esse controlador:
Então é possível utilizar estes disparos de tarefa de evento: Mudança de Estado de Dados do Módulo de Entrada
Código de acesso consumido
Registros de Eixo 1 ou 2
Observação de Eixo
Execução de Grupo de Posicionamento
Instrução EVENT
CompactLogix
X
X
FlexLogix
X
X
ControlLogix
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X(2)
X
X
X
X
DriveLogix5720 DriveLogix5730 SoftLogix5800
X(1)
(1)
Requer um módulo de E/S 1756 ou um backplane virtual.
(2)
Um controlador SoftLogix5800 produz e consome códigos de acesso somente em uma rede ControlNet.
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
1 - 29
Para utilizar um módulo de entrada para disparar uma tarefa de evento, o módulo deve suportar o disparo da tarefa de evento. Se o módulo estiver em um local remoto, os módulos de comunicação associados devem também suportar o disparo do evento. Esses módulos podem acionar uma tarefa de evento. Categoria:
Módulo
Categoria:
Módulo
Categoria:
Módulo
1756 Discreto
1756-IA8D
1756 Analógico
1756-IF16
1756 Comunicação
1756-CNB/A, -CNB/B, -CNB/D
1756-IA16, -IA16I
1756-IF4FXOF2F/A
1756-CNBR/A, -CNBR/B, -CNBR/D
1756-IA32
1756-IF6CIS
1756-DNB
1756-IB16, -IB16D, -IB16I
1756-IF6I
1756-ENBT/A
1756-IB16ISOE
1756-IF8
1756-SYNCH/A
1756-IB32/A, -IB32/B
1756-IR6I
1756 Genérico
1756-MODULE
1756-IC16
1756-IT6I
SoftDNB
1784-PCIDS/A
1756-IT6I2
1789 Genérico
1789-MODULE
1756-IG16 1756-IH16I, -IH16ISOE
1756 Especializado
1756-CFM/A
1756-IM16I
1756-HSC
1756-IN16
1756-PLS/B
1756-IV16/A 1756-IV32/A
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 30
Controladores Logix
Códigos de Acesso do Controlador Os tipos de dados mais comuns são: Para:
Selecione:
Para:
Selecione:
dispositivo analógico em modo de ponto flutuante
REAL
ponto de E/S digital
BOOL
dispositivo analógico em modo de número inteiro (para taxas de amostra muito rápidas)
INT
número de ponto flutuante
REAL
caracteres ASCII
string
inteiro (todo o número)
DINT
bit
BOOL
seqüenciador
CONTROL
contador
COUNTER
temporizador
TIMER
Para organizar seus dados: Para um:
Use um:
grupo de atributos comuns que são usados por mais de uma máquina
tipo de dados definido pelo usuário
grupo de dados com o mesmo tipo de dados
vetor
valor único
código de acesso de um único elemento
dispositivo de E/S
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
1 - 31
Criação de um Código de Acesso No menu Logic, selecione Edit Tags.
É possível configurar códigos de acesso para se comunicarem diretamente com outros controladores: Para:
Use um:
enviar dados no backplane e na rede ControlNet em um intervalo específico
código de acesso produzido
receber dados de outro controlador através do backplane ou da rede ControlNet em um intervalo específico
código de acesso consumido
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 32
Controladores Logix
Criação de um tipo de dados definidos pelo usuário
clique com o botão direito do mouse
Publicação 1756-QR107C-PT-P - Junho 2005
Controladores Logix
1 - 33
Aliases Um código de acesso alias permite criar um código que represente outro. • Os códigos de acesso compartilham o(s) mesmo(s) valor(es). • Quando o valor de um código de acesso muda, o outro também reflete a mudança. drill_1_depth_limit é um alias para Local:2:I.Data.3 (um ponto de entrada digital). Quando a entrada é energizada, o código de acesso alias também é energizado.
drill_1_on é um alias Local:0:O.Data.2 (um ponto de saída digital). Quando o código de acesso alias é energizado, o código de saída também é energizado.
O (C) indica que o código de acesso está no escopo do controlador.
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 34
Controladores Logix
Seleção de uma Linguagem de Programação Em geral, se a função ou grupo de funções representar:
Use esta linguagem:
execução contínua ou paralela de múltiplas operações (não seqüenciadas)
lógica ladder
operações baseadas em bit ou booleanos operações lógicas complexas processamento de comunicação e mensagem intertravamento de máquina operações que a equipe de serviço ou manutenção pode ter que interpretar para localizar as falhas da máquina ou processo processo contínuo e controle do inversor
diagrama de blocos de funções
controle da malha cálculos em fluxo de circuito gestão de múltiplas operações em alto nível seqüências repetitivas de operações processo por batelada controle de posicionamento usando texto estruturado operações de uma máquina de estado continuação
Publicação 1756-QR107C-PT-P - Junho 2005
controle seqüencial de funções (SFC)
Controladores Logix
Em geral, se a função ou grupo de funções representar:
Use esta linguagem:
operações matemáticas complexas
texto estruturado
1 - 35
vetor especializado ou tabela de processamento de malha manipulação do grupo ASCII ou processamento de protocolo
Publicação 1756-QR107C-PT-P - Junho 2005
1 - 36
Controladores Logix
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Controle Seqüencial de Funções
Capítulo
2
Um controle seqüencial de funções (SFC) é semelhante a um fluxograma. Ele usa os passos e transições para realizar operações e ações específicas. Um passo representa uma função principal do processo. Ele contém os eventos que ocorrem em um tempo particular, fase ou estação.
Uma ação é uma das funções que a etapa realiza.
Uma transição é uma condição verdadeira ou falsa que informa o SFC quando ir para o próximo passo. Um qualificador determina quando uma ação começa e quando ela pára.
INÍCIO
Uma ramificação simultânea executa mais de 1 passo ao mesmo tempo.
FIM
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
2-2
Controle Seqüencial de Funções
Exemplo de SFC continuação
INÍCIO
Uma ramificação de seleção escolhe entre diferentes caminhos de execução.
FIM
Uma caixa de texto permite a adição de texto descritivo ou observações ao seu SFC.
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
Controle Seqüencial de Funções
2-3
Exemplo de SFC continuação
Um fio conecta um elemento a um outro em qualquer lugar do gráfico.
Um comando stop permite parar e esperar por um comando para reiniciar.
Publicação 1756-QR107C-PT-P - Junho 2005
2-4
Controle Seqüencial de Funções
Edição de um SFC
Botão
Elemento SFC Criado
Descrição
par passo e transição
Adiciona um par passo/transição. Veja as descrições para passo e transição abaixo.
etapa
Adiciona um passo. Um passo representa uma função principal do processo. Ele contém os eventos que ocorrem em um tempo particular, fase ou estação.
transição
Adiciona uma transição. Uma transição é uma condição verdadeira ou falsa ou condições que determinam quando ir para o próximo passo.
ação
ação booleana
divergência de ramificação de seleção
Adiciona uma ação ou uma ação booleana ao passo selecionado. Clique no passo e depois pressione este botão. Uma ação representa uma divisão funcional de um passo. Várias ações compõem um passo. Cada ação realiza uma função específica, como controlar um motor, abrir uma válvula ou colocar um grupo de dispositivos em um modo específico. Cada ação inclui um qualificador. Quando o passo está ativo (em execução), o qualificador determina quando a ação começa e quando ela pára. Inicie uma ramificação de seleção Use o novo botão de caminho para adicionar caminhos à estrutura de ramificação.
Publicação 1756-QR107C-PT-P - Junho 2005
Controle Seqüencial de Funções
Botão
Elemento SFC Criado
Descrição
divergência de ramificação simultânea
Inicie uma ramificação simultânea. Use o novo botão de caminho para adicionar caminhos à estrutura de ramificação.
convergência de elementos SFC
Finalize a ramificação atual. Selecione o último passo de cada caminho na ramificação e então pressione este botão.
ramificação estendida
Adicione um caminho à ramificação. Clique no primeiro passo do caminho que está à esquerda de onde deseja adicionar um novo caminho e então pressione o botão.
parar
Finalize um caminho em uma ramificação sem conectar outros elementos SFC.
sub-rotina/retorno
Adicionar o chamado de uma sub-rotina
caixa de texto
Crie uma caixa de texto. Ao aparecer a caixa de texto, clique e arraste a caixa de texto para o local desejado. Clique duas vezes na caixa de texto para adicionar o texto.
2-5
Uma ramificação simultânea terminal com uma linha dupla horizontal e sem transição. Uma ramificação de seleção termina com uma transição para cada caminho e uma única linha horizontal.
Publicação 1756-QR107C-PT-P - Junho 2005
2-6
Controle Seqüencial de Funções
Estrutura SFC_STEP Membro
Tipo de dados
Detalhes
A
DINT
Quando uma etapa se torna ativa, o valor do Temporizador (T) é restaurado e começa a contagem crescente em milissegundos. O temporizador continua a contagem crescente até o passo ficar inativo, não importando o valor de Preset (PRE).
PRE
DINT
Insira o tempo no membro Preset (PRE). Quando o Temporizador (T) alcançar o valor de Preset, o bit Done (DN) energiza e permanece assim até o passo se tornar ativo novamente. Como opção, insira uma expressão numérica que calcule o tempo no tempo de execução.
DN
BOOL
Quando o Temporizador (T) alcançar o valor de Preset (PRE), o bit Done (DN) energiza e permanece assim até o passo se tornar ativo novamente.
LimitLow
DINT
Insira o tempo no membro LimitLow. • Se o passo se tornar inativo antes que o Timer (T) alcance o valor LimitLow, o bit AlarmLow se ativa. • O bit AlarmLow fica energizado até que seja restaurado. • Para usar os bits de alarme, energize (marque) o bit AlarmEnable (AlarmEn).
AlarmEn
BOOL
Para usar os bits de alarme, energize (marque) o bit AlarmEnable (AlarmEn).
AlarmLow
BOOL
Se o passo se tornar inativo antes que o Timer (T) alcance o valor LimitLow, o bit AlarmLow se ativa. • O bit fica energizado até resetá-lo. • Para usar os bits de alarme, energize (marque) o bit AlarmEnable (AlarmEn).
LimitHigh
DINT
Insira o tempo no membro LimitHigh. • Se o temporizador (T) alcançar o valor LimitHigh, o bit AlarmHigh energiza. • O bit AlarmHigh fica energizado até que seja restaurado. • Para usar os bits de alarme, energize (marque) o bit AlarmEnable (AlarmEn).
AlarmEn
BOOL
Para usar os bits de alarme, energize (marque) o bit AlarmEnable (AlarmEn).
Publicação 1756-QR107C-PT-P - Junho 2005
Controle Seqüencial de Funções
Membro
Tipo de dados
Detalhes
AlarmHigh
BOOL
Se o temporizador (T) alcançar o valor LimitHigh, o bit AlarmHigh energiza. • O bit fica energizado até resetá-lo. • Para usar os bits de alarme, energize (marque) o bit AlarmEnable (AlarmEn).
X
BOOL
O bit X está energizado durante todo o tempo que o passo estiver ativo (em execução).
FS
BOOL
O bit FS está energizado durante o primeira varredura do passo.
SA
BOOL
O bit SA está energizado quando o passo está ativo com exceção durante a primeira e última varredura do passo.
LS
BOOL
O bit LS está energizado durante a última varredura do passo. Use este bit apenas se fizer o seguinte: Na caixa de diálogo Controller Properties, guia SFC Execution, defina Last Scan of Active Step para Don’t Scan ou Programmatic reset.
Reset
BOOL
Uma instrução SFC Reset (SFR) restaura o SFC para um passo ou parada que a instrução especificar. • O bit Reset indica para qual passo ou parada o SFC irá para iniciar a execução novamente. • Uma vez que SFC executar, o bit Reset desenergiza.
TMax
DINT
Use isso para fins de diagnóstico. O controlador desenergiza esse valor somente quando você seleciona Restart Position de Restart at initial step e o controlador altera os modos ou experiências de um ciclo de alimentação.
OV
BOOL
Use isso para fins de diagnóstico.
Count
DINT
Isso não é uma contagem de varreduras do passo. • A contagem incrementa cada vez que o passo se torna ativo. • Ela incrementa novamente somente após o passo ficar inativo e ativa novamente. • A contagem será restaurada somente se você configurar o SFC para reiniciar no passo inicial. Com essa configuração, ela é restaurada quando o controlador passa do modo Program para o modo Run.
2-7
Publicação 1756-QR107C-PT-P - Junho 2005
2-8
Controle Seqüencial de Funções
Membro
Tipo de dados
Detalhes
Status
DINT
Para esse membro:
Use esse bit:
Reset
22
AlarmHigh
23
AlarmLow
24
AlarmEn
25
OV
26
DN
27
LS
28
SA
29
FS
30
X
31
Publicação 1756-QR107C-PT-P - Junho 2005
Controle Seqüencial de Funções
2-9
Estrutura SFC_ACTION Membro
Tipo de dados
Detalhes
Q
BOOL
O status do bit Q depende se ação é booleana ou não booleana: Se a ação for:
Então o bit Q é:
booleana
energizado (1) o tempo inteiro em que a ação está ativa, incluindo o última varredura da ação
não booleana
energizado (1) enquanto a ação está ativa, mas desenergizado (0) na última varredura da ação
Para usar um bit a fim de determinar quando uma ação está ativa, use o bit Q. A
BOOL
O bit A está energizado o tempo todo que a ação está ativa.
A
DINT
Quando uma ação se torna ativa, o valor do Temporizador (T) é restaurado e começa a contagem crescente em milissegundos. O temporizador continua a contagem crescente até a ação ficar inativa não importando o valor de Preset (PRE).
PRE
DINT
Insira o limite de tempo ou de atraso no membro Preset (PRE). A ação começa ou pára quando o Temporizador (T) alcança o valor de Preset.
Count
DINT
Isso não é uma contagem de varreduras da ação. • A contagem incrementa cada vez que a ação se torna ativa. • Ela apenas incrementa novamente após a ação ficar inativa e ativa novamente. • A contagem será restaurada somente se você configurar o SFC para reiniciar no passo inicial. Com essa configuração, ela é restaurada quando o controlador passa do modo Program para o modo Run.
Status
DINT
Para esse membro:
Use esse bit:
Q
30
A
31
Publicação 1756-QR107C-PT-P - Junho 2005
2 - 10
Controle Seqüencial de Funções
Qualificadores Se você quer que a ação:
E:
Atribua esse qualificador:
Que significa:
comece quando o passo for ativado
parar quando o passo for desativado
N
Não armazenado (padrão)
execute somente uma vez
P1
Pulso (Borda Crescente)
pare antes do passo ser desativado ou quando o passo estiver desativado
L
Tempo Limitado
permanece ativa até que uma ação Reset desative essa ação
S
Armazenado
permanece ativa até que uma ação Reset desative essa ação ou um tempo específico expire, mesmo se a etapa estiver desativada
SL
Tempo Armazenado e Limitado
comece um tempo específico após a etapa ser ativada e a etapa ainda estiverativa
parar quando o passo for desativado
D
Tempo de Atraso
permanece ativa até que uma ação Reset desative essa ação
DS
Atrasado e Armazenado
comece um tempo específico após o passo ser ativado, mesmo se o passo for desativado antes desse tempo
permanece ativa até que uma ação Reset desative essa ação
SD
Tempo Armazenado e de Atraso
execute uma vez quando um passo for ativado
execute uma vez quando o passo for desativado
P
Pulso
comece quando o passo for desativado
execute somente uma vez
P0
Pulso (Borda de Descida)
R
Reset
desenergize (reset) uma ação armazenada: • S Armazenado • SL Armazenado e Tempo Limitado • DS Com Atraso e Armazenado • SD Armazenado e Tempo de Atraso
Publicação 1756-QR107C-PT-P - Junho 2005
Controle Seqüencial de Funções
2 - 11
Estrutura SFC_STOP Membro:
Tipo de dados:
X
BOOL
Reset
BOOL
Uma instrução SFC Reset (SFR) restaura o SFC para um passo ou parada que a instrução especificar. • O bit Reset indica para qual passo ou parada o SFC irá para iniciar a execução novamente. • Uma vez que SFC executar, o bit Reset desenergiza.
Count
DINT
Isso não é uma contagem de varreduras da parada. • A contagem incrementa cada vez que a parada se torna ativa. • Ela incrementa novamente somente após a parada ficar inativa e ativa de novo. • A contagem será restaurada somente se você configurar o SFC para reiniciar no passo inicial. Com essa configuração, ela é restaurada quando o controlador passa do modo Program para o modo Run.
Status
DINT
Para esse membro:
Use esse bit:
Reset
22
X
31
Detalhes: • Quando SFC alcança o elemento de parada, o bit X energiza. • O bit X desenergiza se configurar os SFCs para reiniciar no passo inicial e o controlador para passar do modo Program para o modo Run. • Em um SFC encadeado, o bit X também desenergiza se você configurar os SFCs para o reset automático e o SFC para sair do passo que chama o SFC encadeado.
Publicação 1756-QR107C-PT-P - Junho 2005
2 - 12
Controle Seqüencial de Funções
Como Você Quer Usar a Ação? Há dois tipos de ações: Se você quiser:
Use:
executar o texto estruturado diretamente no SFC
ação não booleana
chamar uma sub-rotina usar a opção de reset automático para restaurar os dados ao sair do passo energizar somente um bit e programar outra lógica para monitorar o bit para determinar quando executar.
ação booleana
Utilização de uma Ação Não Booleana Uma ação não booleana contém a lógica para a ação. Ela usa o texto estruturado para executar as atribuições e instruções ou chamar uma sub-rotina. Com as ações não booleanas, é possível também ter a opção de postscan(restaurar automaticamente) as atribuições e instruções antes de sair do passo: • Durante o postscan o controlador executa as atribuições e instruções como se todas as condições fossem falsas. • Os postscan do controlador são incorporados ao texto estruturado e a qualquer sub-rotina que a ação chame.
Utilização de uma Ação Booleana Uma ação booleana não contém nenhuma lógica para a ação. Ela simplesmente energiza um bit em seu tag (estrutura SFC_ACTION). Para realizar a ação, outra lógica deve monitorar o bit e executar quando estiver energizado. Com as ações booleanas, você precisa restaurar manualmente as atribuições e instruções associadas à ação. Como não há vínculo entre a ação e a lógica que realiza a ação, a opção de reset automático não interfere nas ações booleanas. É possível reutilizar a ação booleana múltiplas vezes no mesmo SFC. Publicação 1756-QR107C-PT-P - Junho 2005
Controle Seqüencial de Funções
2 - 13
Configuração da Execução de um SFC Em Controller Properties:
Publicação 1756-QR107C-PT-P - Junho 2005
2 - 14
Controle Seqüencial de Funções
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
Capítulo
3
Sintaxe do Texto Estruturado O texto estruturado é uma linguagem de programação textual que usa as declarações para definir o que executar. • O texto estruturado é sem distinção entre maiúsculas e minúsculas. • Use as guias e mecanismo de retorno de carro (linhas separadas) para tornar seu texto estruturado mais fácil de ler. Eles não têm efeito na execução do texto estruturado. Este é um exemplo de uma rotina de texto estruturado.
Publicação 1756-QR107C-PT-P - Junho 2005
3-2
Texto Estruturado
O texto estruturado pode conter esses componentes: Termo:
Definição:
Exemplos:
atributo (consulte a página 3-4)
Use uma declaração de atribuição para atribuir os valores aos tags. O operador := é um operador de atribuição. Termine a atribuição com um ponto e vírgula “;”.
tag := expression;
expression (consulte a página 3-6)
Uma expressão é parte de uma atribuição completa ou declaração de construção. Uma expressão avalia para um número (expressão numérica) ou para um estado verdadeiro ou falso (expressão BOOL). Uma expressão contém: tags
Uma área nomeada da memória em que os dados são armazenados (BOOL, SINT,INT,DINT, REAL, grupo).
value1
imediatos
Um valor constante.
4
operadores
Um símbolo ou mnemônico que especifica uma operação em uma expressão.
tag1 + tag2 tag1 >= value1
funções
Quando executada, uma função produz um valor. Use parênteses para limitar o operando de uma função.
function(tag1)
Embora sua sintaxe seja similar, as funções são diferentes das instruções em que as funções possam somente ser usadas em expressões. As instruções não podem ser usadas em expressões. instrução (consulte a página 3-13)
Uma instrução é uma declaração independente. Uma instrução usa parênteses para conter seus operandos. Dependendo da instrução, pode haver zero, um ou múltiplos operandos. Quando executada, uma instrução produz um ou mais valores que são parte de uma estrutura de dados. Termine a instrução com um ponto e vírgula “;”. As instruções não podem ser usadas em expressões. As funções podem ser usadas somente em expressões.
Publicação 1756-QR107C-PT-P - Junho 2005
instrução(); instrução(operando); instrução(operando1, operando2,operando3);
Texto Estruturado
Termo:
Definição:
Exemplos:
construção (consulte a página 3-15)
Uma declaração condicional usada para iniciar o código de texto estruturado (isto é, outras declarações). Termine a construção com um ponto e vírgula “;”.
IF...THEN CASE FOR…DO WHILE…DO REPEAT…UNTIL EXIT
comentário (consulte a página 3-25)
O texto que explica ou esclarece o que uma coluna de texto estruturado faz. Use os comentários para interpretar o texto estruturado de forma mais fácil. Os comentários não afetam a execução do texto estruturado. Os comentários podem aparecer em qualquer lugar no texto estruturado.
//comentário
3-3
(*início de comentário , . . fim de comentário*) /*início de comentário . . . fim de comentário*/
A inserção de espaços em uma sintaxe de texto estruturado é opcional. Espaços não possuem efeito na execução do texto estruturado. Por exemplo, estas duas declarações fazem a mesma execução: Tag_B:=Tag_A Tag_B := Tag_A
Publicação 1756-QR107C-PT-P - Junho 2005
3-4
Texto Estruturado
Atributos Use um atributo para alterar o valor armazenado em um tag. Um atributo possui essa sintaxe: tag := expression ; Onde: Componente:
Descrição:
tag
representa o tag que está obtendo o novo valor o tag deve ser BOOL, SINT, INT, DINT ou REAL
:=
é o símbolo de atribuição
expressão
representa o novo valor para atribuir ao tag Se tag for deste tipo de dados:
Use esse tipo de expressão:
BOOL
expressão BOOL
SINT INT ;
DINT REAL
expressão numérica
termina a atribuição
O tag retém o valor atribuído até que uma outra atribuição altere o valor.
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
3-5
Especificação de um atributo não retentivo Uma atribuição não retentiva é restaurada para zero cada vez que o controlador: • entrar o modo RUN • deixa a etapa de um SFC se o SFC for configurado para Automatic reset. Uma atribuição não retentiva possui essa sintaxe: tag [:=] expression ; Onde: Componente:
Descrição:
tag
representa o tag que está obtendo o novo valor o tag deve ser BOOL, SINT, INT, DINT ou REAL
[:=]
é um símbolo de atribuição não retentiva
expressão
representa o novo valor para atribuir ao tag Se tag for deste tipo de dados:
Use esse tipo de expressão:
BOOL
expressão BOOL
SINT INT ;
DINT REAL
expressão numérica
termina a atribuição
Publicação 1756-QR107C-PT-P - Junho 2005
3-6
Texto Estruturado
Expressões Uma expressão é um nome do tag, equação ou comparação. Para escrever uma expressão, use: • • • •
o nome do tag que armazena o valor (variável) o número inserido diretamente na expressão (valor imediato) funções, como: ABS, TRUNC operadores, como: +, -, <, >, And, Or
Expressão BOOL: Uma expressão que produz o valor BOOL de 1 (verdadeiro) ou 0 (falso). • Uma expressão BOOL usa os tags BOOL, operadores relacionados e operadores lógicos para comparar os valores ou verificar se as condições são verdadeiras ou falsas. Por exemplo, tag1>65. • Uma expressão BOOL simples pode ser um único tag BOOL. • Geralmente, usam-se expressões BOOL para condicionar a execução de outra lógica. Expressão numérica: Uma expressão que calcula um valor inteiro ou de ponto flutuante. • Uma expressão numérica usa operadores aritméticos, funções aritméticas e operadores bitwise. Por exemplo, tag1+5. • Geralmente, você encadeia uma expressão numérica em uma expressão BOOL. Por exemplo, (tag1+5)>65.
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
3-7
Operadores aritméticos Os operadores aritméticos calculam os novos valores. Para:
Use este operador:
Tipo de dados otimizados:
adição
+
DINT, REAL
subtração/negação
-
DINT, REAL
multiplicar
*
DINT, REAL
expoente (x elevado a y)
**
DINT, REAL
dividir
/
DINT, REAL
módulo-divisão
MOD
DINT, REAL
Publicação 1756-QR107C-PT-P - Junho 2005
3-8
Texto Estruturado
Funções aritméticas As funções aritméticas realizam operações matemáticas. Especifique uma constante, um tag não booleano ou uma expressão para a função. Para:
Use esta função:
Tipo de dados otimizados:
valor absoluto
ABS (numeric_expression)
DINT, REAL
arco co-seno
ACOS (numeric_expression)
REAL
arco seno
ASIN (numeric_expression)
REAL
arco tangente
ATAN (numeric_expression)
REAL
co-seno
COS (numeric_expression)
REAL
radianos para graus
DEG (numeric_expression)
DINT, REAL
logarítmo natural
LN (numeric_expression)
REAL
logarítmo base 10
LOG (numeric_expression)
REAL
graus para radianos
RAD (numeric_expression)
DINT, REAL
seno
SIN (numeric_expression)
REAL
raiz quadrada
SQRT (numeric_expression)
DINT, REAL
tangente
TAN (numeric_expression)
REAL
truncar
TRUNC (numeric_expression)
DINT, REAL
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
3-9
Operadores relacionados Os operadores relacionados comparam dois valores ou grupos para fornecer um resultado verdadeiro ou falso. O resultado de uma operação relacionada é um valor BOOL: Se a comparação for:
O resultado é:
verdadeira
1
falsa
0
Para essa comparação:
Use este operador:
Tipo de dados otimizados:
igual
=
DINT, REAL, grupo
menor que
<
DINT, REAL, grupo
menor ou igual a
<=
DINT, REAL, grupo
maior que
>
DINT, REAL, grupo
maior ou igual a
>=
DINT, REAL, grupo
diferente de
<>
DINT, REAL, grupo
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 10
Texto Estruturado
Operadores lógicos Os operadores lógicos permitem verificar se múltiplas condições são verdadeiras ou falsas. O resultado de uma operação lógica é um valor BOOL: Se a comparação for:
O resultado é:
verdadeira
1
falsa
0
Para:
Use este operador:
Tipo de dados:
AND lógico
&, AND
BOOL
OR lógico
OR
BOOL
XOR lógico
XOR
BOOL
NOT lógico
NOT
BOOL
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
3 - 11
Operadores bitwise Os operadores bitwise manipulam os bits em um valor baseado em dois valores. Para:
Use este operador:
Tipo de dados otimizados:
AND orientado por bit
&, AND
DINT
OR
OR
DINT
OR exclusivo orientado por bit
XOR
DINT
NOT
NOT
DINT
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 12
Texto Estruturado
Determinação da seqüência de execução As operações escritas em uma expressão são realizadas em uma seqüência prescrita, não necessariamente da esquerda para a direita. • Operações com seqüência igual são realizadas da esquerda para a direita. • Se uma expressão contiver operadores múltiplos ou funções, agrupe as condições em parênteses “( )” para garantir a ordem correta. Seqüência:
Operação:
1.
()
2.
função (…)
3.
**
4.
− (negação)
5.
NOT
6.
*, /, MOD
7.
+, - (subtração)
8.
<, <=, >, >=
9.
=, <>
10.
&, AND
11.
XOR
12.
OR
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
3 - 13
Instruções As declarações do texto estruturado também podem ser instruções. Consulte a Tabela de Localização no início desse manual para uma lista de instruções disponíveis no texto estruturado. Uma instrução de texto estruturado executa toda vez que é varrida. Uma instrução de texto estruturado com uma construção executa toda vez que as condições de construção forem verdadeiras. Se as condições de construção forem falsas, as declarações na construção não são scaneadas. Não há condição de linha ou transição de estado que inicie a execução. Isso difere das instruções do bloco de funções que usam EnableIn para iniciar a execução. As instruções de texto estruturado executam se EnableIn estiver sempre energizado. Isso difere também das instruções de lógica ladder que usam a entrada da condição de linha para iniciar a execução. Algumas instruções da lógica ladder somente são executadas quando a entrada da condição de linha alterna de falso para verdadeiro. Essas são instruções de lógica ladder são transicionais. No texto estruturado, as instruções serão executadas toda vez que forem scaneadas a menos que você pré-condicione a execução da instrução de texto estruturado. Por exemplo, a instrução ABL é uma instrução transicional na lógica ladder. Nesse exemplo, a instrução ABL é executada somente em uma varredura quando as transições tag_xic forem de desenergizada para energizada. A instrução ABL não é executada quando tag_xic fica energizada ou quando tag_xic está desenergizada.
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 14
Texto Estruturado
No texto estruturado, se você escrever este exemplo como: IF tag_xic THEN ABL(0,serial_control); END_IF; A instrução ABL será executada a cada varredura em que tag_xic estiver energizada, não apenas quando as transições tag_xic forem de desenergizada para energizada. Se você quiser que a instrução ABL execute somente quando as transições tag_xic forem de desenergizada para energizada, precisará condicionar a instrução de texto estruturado. Use um monoestável para iniciar a execução. osri_1.InputBit := tag_xic; OSRI(osri_1);
IF (osri_1.OutputBit) THEN ABL(0,serial_control); END_IF;
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
3 - 15
Construções As construções podem ser programadas uma a uma ou encadeadas em outras construções. Se você quiser:
Use esta construção:
Consulte página:
fazer algo se ou quando as condições específicas ocorrerem
IF...THEN
3-16
selecionar o que fazer com base em um valor numérico
CASE...OF
3-17
fazer algo um número de vezes determinadas antes de fazer mais alguma coisa
FOR…DO
3-19
WHILE…DO
3-21
REPEAT…UNTIL
3-23
continuar a fazer algo enquanto certas condições são verdadeiras continuar a fazer algo até que uma condição seja verdadeira
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 16
Texto Estruturado
IF...THEN Use IF…THEN para fazer algo se ou quando as condições específicas ocorrerem. A sintaxe é: IF bool_expression THEN ;
declarações a serem executadas quando bool_expression1 for verdadeiro
. . . opcional
ELSIF bool_expression2 THEN ;
declarações a serem executadas quando bool_expression2 for verdadeiro
. . . opcional
ELSE ; . . . END_IF;
Publicação 1756-QR107C-PT-P - Junho 2005
declarações a serem executadas quando as expressões forem falsas
Texto Estruturado
3 - 17
CASE...OF Use CASE para selecionar o que fazer baseado em um valor numérico. A sintaxe é: CASE numeric_expression OF especifica os valores possíveis do seletor alternativo (caminhos) à medida que você precisar
selector1:
; . . .
declarações a serem executadas quando numeric_expression = selector1
selector2:
;
declarações a serem executadas quando numeric_expression = selector2
. . . selector3:
; . . .
opcional
declarações a serem executadas quando numeric_expression = selector3
ELSE
; . . .
declarações a serem executadas quando numeric_expression ≠ qualquer seletor
END_CASE;
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 18
Texto Estruturado
A sintaxe para inserção dos valores do seletor é: Quando o seletor for:
Insira:
um valor
value: statement
múltiplo, com valores distintos
value1, value2, valueN: Use uma vírgula (,) para separar cada valor.
uma faixa de valores
value1..valueN: Use dois pontos (..) para identificar a faixa.
valores distintos mais uma faixa de valores
valuea, valueb, value1..valueN:
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado
3 - 19
FOR…DO Use a malha FOR…DO para fazer algo com um número específico de vezes antes de fazer algo mais. A sintaxe é: FOR count := initial_ value TO final_value opcional
{
Se não especificar um incremento, a malha incrementa pelo 1.
BY increment DO ;
opcional
IF bool_expression THEN EXIT;
Se houver condições quando quiser sair da malha antes, use outras declarações, como a construção IF...THEN, para a condição de uma declaração EXIT.
END_IF; END_FOR;
Uma falha grave ocorrerá se:
Tipo de falha:
Código de falha:
a malha for construída longa demais
6
1
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 20
Texto Estruturado
Os diagramas a seguir mostram como uma malha FOR...DO executa e como uma declaração EXIT deixa a malha mais cedo. Executado x número de vezes?
sim
Executado x número de vezes?
não
não
declaração 1 declaração 2 declaração 3 declaração 4 …
declaração 1 declaração 2 declaração 3 declaração 4 … Sair ? resto da rotina
sim
sim
não resto da rotina
A malha FOR…DO executa um número específico de vezes.
Publicação 1756-QR107C-PT-P - Junho 2005
Para parar a malha antes que a contagem alcance o último valor, use uma declaração EXIT.
Texto Estruturado
3 - 21
WHILE...DO Use a malha WHILE…DO para continuar algo enquanto certas condições forem verdadeiras. A sintaxe é: WHILE bool_expression DO ; opcional
declarações para serem executadas enquanto bool_expression1 é verdadeiro
IF bool_expression2 THEN EXIT;
Se houver condições quando quiser sair da malha antes, use outras declarações, como a construção IF...THEN, para a condição de uma declaração EXIT.
END_IF; END_WHILE;
Uma falha grave ocorrerá se:
Tipo de falha:
Código de falha:
a malha for construída longa demais
6
1
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 22
Texto Estruturado
Os diagramas a seguir mostram como uma malha WHILE...DO se executa e como uma declaração EXIT deixa a malha mais cedo. expressão BOOL
falsa
falsa expressão BOOL
verdadeira
verdadeira
declaração 1 declaração 2 declaração 3 declaração 4 …
declaração 1 declaração 2 declaração 3 declaração 4 … Sair ? resto da rotina
sim
não resto da rotina
Enquanto bool_expression for verdadeira, o controlador executa somente as declarações na malha WHILE…DO.
Publicação 1756-QR107C-PT-P - Junho 2005
Para parar a malha antes das condições serem verdadeiras, use uma declaração EXIT.
Texto Estruturado
3 - 23
REPEAT...UNTIL Use a malha REPEAT…UNTIL para continuar a fazer algo até que as condições sejam verdadeiras. A sintaxe é: REPEAT declarações para serem executadas enquanto bool_expression1 for falso
; opcional
IF bool_expression2 THEN EXIT;
Se houver condições quando quiser sair da malha antes, use outras declarações, como a construção IF...THEN, para a condição de uma declaração EXIT.
END_IF; UNTIL bool_expression1 END_REPEAT;
Uma falha grave ocorrerá se:
Tipo de falha:
Código de falha:
a malha for construída longa demais
6
1
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 24
Texto Estruturado
Os diagramas a seguir mostram como uma malha REPEAT...UNTIL se executa e como uma declaração EXIT deixa a malha mais cedo. declaração 1 declaração 2 declaração 3 declaração 4 … expressão BOOL
verdadeira
declaração 1 declaração 2 declaração 3 declaração 4 … Sair ?
sim
não
falsa
expressão BOOL
verdadeira
resto da rotina falsa resto da rotina Enquanto bool_expression for falsa, o controlador executa somente as declarações na malha REPEAT…UNTIL.
Publicação 1756-QR107C-PT-P - Junho 2005
Para parar a malha antes das condições serem falsas, use uma declaração EXIT.
Texto Estruturado
3 - 25
Comentários Para acrescentar comentários ao texto estruturado: Para acrescentar um comentário:
Use um desses formatos:
em uma única linha
//comentário
ao final de uma linha do texto estruturado
(*comentário*) /*comentário*/
em uma linha do texto estruturado
(*comentário*) /*comentário*/
que ocupe mais de uma linha
(*início de comentário . . . fim de comentário*) /*início de comentário . . . fim de comentário*/
Publicação 1756-QR107C-PT-P - Junho 2005
3 - 26
Texto Estruturado
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Diagrama de Blocos de Funções
Capítulo
4
Os diagramas de blocos de funções são programas visuais que podem conter os seguintes elementos. Cada bloco de funções é uma instrução que define uma ação de controle.: referência de entrada (IREF)
bloco de funções
referência de saída (OREF)
conector do fio de saída (OCON)
conector do fio de entrada (ICON)
Publicação 1756-QR107C-PT-P - Junho 2005
4-2
Diagrama de Blocos de Funções
Edição de um Diagrama de Blocos de Funções.
Este botão da barra de ferramentas:
Cria este elemento ladder:
Descrição:
IREF
Adiciona uma referência de entrada para fornecer um valor a partir de um dispositivo de entrada ou tag.
OREF
Adiciona uma referência de saída para enviar um valor para dispositivo de saída ou tag.
ICON
Adiciona conectores de entrada e de saída. Use conectores de fios para transferir dados entre blocos de função quando eles estiverem: • distantes da mesma planilha • em diferentes planilhas na mesma rotina
OCON
instrução
Use conectores de fios para dispersar dados para diversos pontos na rotina atribuindo um OCON para diversos ICONs. Selecione um bloco de funções específico para executar uma operação em um valor ou valores de entrada e produza um valor ou valores de saída Use as guias na parte inferior da barra de ferramentas para exibir outros blocos de funções disponíveis.
Publicação 1756-QR107C-PT-P - Junho 2005
Diagrama de Blocos de Funções
4-3
Retenção de Dados Condição:
Exemplo:
Se você usa um IREF para especificar os dados de entrada para uma instrução do bloco de funções, os dados no IREF são retidos para a varredura da rotina do bloco de funções. O IREF retém os dados dos tags do programa e do controlador. O controlador atualiza todos os dados IREF no início de cada varredura. IREF
Nesse exemplo, o valor de tagA é armazenado no início da execução da rotina. O valor armazenado é usado quando Block_01 é executado. O mesmo valor armazenado é também usado quando Blcock_02 é executado. Se o valor de tagA se alterar durante a execução da rotina, o valor armazenado de tagA no IREF não será alterado até a próxima execução da rotina.
tagA
Block_01
Block_02
Publicação 1756-QR107C-PT-P - Junho 2005
4-4
Diagrama de Blocos de Funções
Condição:
Exemplo:
Este exemplo é o mesmo que o descrito anteriormente. O valor de tagA é armazenado somente uma vez no início da execução da rotina. A rotina usa este valor armazenado por toda a rotina. tagA Block_01
tagA Block_02
É possível utilizar o mesmo tag em diversos IREFs e um OREF na mesma rotina. Como os valores de tags nos IREFs são retidos em toda a varredura através da rotina, todos os IREFs usarão o mesmo valor, mesmo se um OREF obtém um valor de tag diferente durante a execução da rotina. Neste exemplo, se tagA possui um valor de 25,4 quando a rotina inicia a execução da varredura e Block_01 altera o valor de tagA para 50,9, o segundo IREF conectado ao Block_02 ainda usará um valor de 25,4 quando Block_02 executar essa varredura. O novo valor de tagA de 50,9 não será usado por nenhum IREFs nessa rotina até o início da próxima varredura.
Publicação 1756-QR107C-PT-P - Junho 2005
Diagrama de Blocos de Funções
4-5
Seqüência de Execução O software de programação RSLogix 5000 determina automaticamente a seqüência de execução para os blocos de funções em uma rotina quando você: • verificar uma rotina do bloco de funções • verificar um projeto que contenha uma rotina do bloco de funções • descarregar um projeto que contenha uma rotina do bloco de funções Você define a seqüência de execução ao conectar os blocos de funções juntos e indicar o fluxo de dados de quaisquer fios de realimentação, se necessário. Se os blocos de funções não forem conectados juntos, não importa que o bloco execute primeiro. Não há fluxo de dados entre os blocos. Se conectar os blocos seqüencialmente, a ordem de execução movimenta-se da entrada para a saída. As entradas de um bloco requerem que os dados estejam disponíveis antes de o controlador executar o bloco. Por exemplo, o bloco 2 tem que ser executado antes do bloco 3 porque as saídas do bloco 2 alimentam as entradas do bloco 3. 1
2
3
Publicação 1756-QR107C-PT-P - Junho 2005
4-6
Diagrama de Blocos de Funções
A seqüência de execução é somente relativa aos blocos que são conectados juntos. A figura a seguir é um bom exemplo, pois os dois grupos de blocos não estão conectados juntos. Os blocos em um grupo específico executam na seqüência apropriada em relação aos blocos no grupo. 1
3
5
2
4
6
Publicação 1756-QR107C-PT-P - Junho 2005
Diagrama de Blocos de Funções
4-7
Determinação de uma Malha Para criar uma malha de realimentação ao redor do bloco, conecte um pino de saída do bloco a um pino de entrada do mesmo bloco. O exemplo seguinte está OK. A malha contém apenas um bloco, logo, não importa a ordem de execução.
Este pino de entrada usa uma saída que o bloco produziu na varredura anterior.
Se um grupo de blocos estiver em uma malha, o controlador não pode determinar qual bloco executar primeiro. Em outras palavras, ele não pode determinar a malha.
?
?
?
Publicação 1756-QR107C-PT-P - Junho 2005
4-8
Diagrama de Blocos de Funções
Para identificar que bloco executar primeiro, marque o fio de entrada que cria a malha (o fio de realimentação) com o indicador Assume Data Available. No exemplo seguinte, o bloco 1 usa a saída do bloco 3 que foi produzida na execução anterior da rotina. 1
2
3
Esse pino de entrada usa a saída que o bloco 3 produziu na varredura anterior.
Indicador Assume Data Available
O indicador Assume Data Available define o fluxo de dados na malha. A seta indica que os dados servem como entrada para o primeiro bloco na malha. Não marque todos os fios de uma malha com o indicador Assume Data Available. Este está OK
Este NÃO está OK
1
2
O controlador não pode determinar a malha porque todos os fios usam o indicador Assume Data Available.
?
Indicador Assume Data Available
Publicação 1756-QR107C-PT-P - Junho 2005
?
Diagrama de Blocos de Funções
4-9
Determinação do Fluxo de Dados Entre Dois Blocos Se você usar dois ou mais fios para conectar dois blocos, use os mesmos indicadores de fluxo de dados para todos os fios entre os dois blocos. Este está OK
Este NÃO está OK Um fio usa o indicador Assume Data Available enquanto o outro não usa.
Nenhum fio usa o indicador Assume Data Available.
Indicador Assume Data Available
Os fios usam o indicador Assume Data Available.
Publicação 1756-QR107C-PT-P - Junho 2005
4 - 10
Diagrama de Blocos de Funções
Criação de um Atraso de Varredura Para produzir um atraso de varredura entre os blocos, use o indicador Assume Data Available. No exemplo a seguir, o bloco 1 executa primeiro. Ele usa a saída do bloco 2 que foi produzida na varredura anterior da rotina.
2
1
Indicador Assume Data Available
Resumo Em resumo, uma rotina do bloco de funções é executada nesta seqüência: 1. O controlador trava todos os valores de dados em IREFs. 2. O controlador executa os outros blocos de função na seqüência determinada pela sua fiação. 3. O controlador escreve as saídas em OREFs.
Publicação 1756-QR107C-PT-P - Junho 2005
Diagrama de Blocos de Funções
4 - 11
Definição do Controle de Programação/Operação Muitas instruções suportam o conceito de controle de Programação/Operação. Essas instruções incluem: • • • • • •
Seleção Aprimorada (ESEL) Totalizador (TOT) PID Aprimorado (PIDE) Rampa/Patamar (RMPS) Dispositivo Discreto em 2 Estados (D2SD) Dispositivo Discreto em 3 Estados (D3SD)
O controle Program/Operator permite controlar essas instruções simultaneamente do programa do usuário e de um dispositivo de interface de operação. No controle Program, a instrução é controlada pelas entradas de Program na instrução. No controle Operator, a instrução é controlada pelas entradas Operator na instrução. O controle Program ou Operator é determinado ao usar estas entradas: Entrada:
Descrição:
.ProgProgReq
Uma solicitação do programa para ir para o controle Program.
.ProgOperReq
Uma solicitação do programa para ir para o controle Operator.
.OperProgReq
Uma solicitação do operador para ir para o controle Program.
.OperOperReq
Uma solicitação do operador para ir para o controle Operator.
Publicação 1756-QR107C-PT-P - Junho 2005
4 - 12
Diagrama de Blocos de Funções
Para determinar se uma instrução está no controle Program ou Control, examine a saída ProgOper. Se ProgOper estiver energizado, a instrução estará no controle Program. Se ProgOper estiver desenergizado, a instrução estará no controle Operator. Controle:
Descrição:
program
As entradas do pedido Program têm preferência sobre as entradas do pedido Operator. Isso fornece a capacidade de usar as entradas ProgProgReq e ProgOperReq para “travar” uma instrução em um controle desejado. A definição constante do ProgProgReq pode “travar” a instrução no controle Program. Isso é muito usado para as seqüências de partida automática quando se deseja que o programa para controlar a ação da instrução sem se preocupar que um operador assuma de forma inadvertida o controle da instrução. Nesse exemplo, você possui a definição do programa da entrada ProgProgReq durante a partida e desenergiza a entrada ProgProgReq uma vez que a partida foi concluída. Assim que a entrada ProgProgReq é desenergizada, a instrução permanece no controle Program até que ela receba um pedido para ser alterada. Por exemplo, o operador poderia definir a entrada OperOperReq de uma placa frontal para assumir o controle da instrução. As entradas do pedido de Program normalmente não são desenergizadas pela instrução porque são conectadas como entradas na instrução. Se a instrução desenergizar essas entradas, a entrada consegue apenas energizar novamente pela entrada conectada. Deve haver situações em que se deseja usar outra lógica para definir os pedidos de Program de forma que você queira que os pedidos de Program sejam desenergizados pela instrução. Nesse caso, é possível energizar a entrada ProgValueReset e a instrução sempre desenergizará as entradas do pedido do modo Program quando ela for executada.
operator
As entradas de pedido de Operator para uma instrução sempre são desenergizadas pela instrução quando ela é executada. Isso permite que as interfaces de operação funcionem com essas instruções ao energizar o bit de solicitação do modo desejado. Você não precisa programar a interface de operação para restaurar os bits de solicitação. O controle Operator é mais indicado que o controle Program se os bits de solicitação de entrada estiverem energizados. Por exemplo, se ProgProgReq e ProgOperReq estiverem energizados, a instrução vai para o controle Operator.
Publicação 1756-QR107C-PT-P - Junho 2005
Lógica Ladder
Capítulo
5
Lógica Ladder A lógica ladder posiciona instruções de entrada e de saída em linhas. instruções de entrada
instruções de saída
ramificações
Publicação 1756-QR107C-PT-P - Junho 2005
5-2
Lógica Ladder
Não há limite para o número de níveis de ramificação paralela que você pode inserir. A figura a seguir mostra uma ramificação paralela com cinco níveis. A linha principal é o primeiro nível da ramificação, seguido de quatro ramificações adicionais.
Você pode encadear as ramificações em até 6 níveis. A figura abaixo mostra uma ramificação interna. A instrução final de saída está em uma ramificação interna que tem três níveis de profundidade.
Publicação 1756-QR107C-PT-P - Junho 2005
Lógica Ladder
5-3
Edição de Lógica Ladder
Este botão da barra de ferramentas:
Cria este elemento ladder:
Descrição:
linha ladder
Uma linha determina a ordem de execução das instruções de entrada e de saída.
ramificação
Uma ramificação são duas ou mais instruções em paralelo.
um nível de ramificação
Não há limite para o número de níveis de ramificação paralela que você pode inserir. Você pode encadear as ramificações em até 6 níveis.
instrução
Instrução de entrada: Uma instrução de entrada verifica, compara ou examina as condições específicas na máquina ou processo. Instrução de saída: Uma instrução de saída que realiza alguma ação, como ligar um dispositivo, desligar um dispositivo, copiar dados ou calcular um valor. Use as guias na parte inferior da barra de ferramentas para exibir outras instruções disponíveis.
Publicação 1756-QR107C-PT-P - Junho 2005
5-4
Lógica Ladder
Condição de linha O controlador avalia as instruções de lógica ladder com base na condição da linha que antecede a instrução (entrada da condição da linha). instrução de entrada
entrada da condição da linha
instrução de saída
saída da condição de linha
Apenas as instruções de entrada afetam a entrada da condição de linha das instruções subseqüentes na linha: • Se a entrada da condição de linha de uma instrução de entrada for verdadeira, o controlador avalia a instrução e energiza a saída da condição de linha para corresponder aos resultados da avaliação. – Se a instrução avaliar como verdadeiro, a saída da condição de linha é verdadeira. – Se a instrução avaliar como falsa, a saída da condição de linha é falsa. • Uma instrução de saída não muda a saída da condição de linha. – Se a entrada da condição de linha para uma instrução de saída for verdadeira, a saída da condição de linha é energizada para verdadeira. – Se a entrada da condição de linha para uma instrução de saída for falsa, a saída da condição de linha é energizada para falsa.
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
Capítulo
6
Valores de Sistema Armazenados pelo Controlador O controlador armazenou automaticamente informações diferentes de status: Se você quiser:
Consulte página:
usar palavras-chave específicas na lógica para monitorar condições de status específicas
6-2
obter ou definir os dados do sistema (informações de status)
6-3
informações de status disponíveis - objetos GSV/SSV
6-5
obter informações sobre a memória do controlador
6-26
Publicação 1756-QR107C-PT-P - Junho 2005
6-2
Acesso aos Valores de Sistema
Monitoração de Flags de Status O controlador suporta as palavras-chave de status que podem ser usadas na lógica para monitorar eventos específicos: Para determinar se: o valor que está armazenando não pode ajustar-se em Destination porque é: • maior que o valor máximo para Destination • menor que o valor mínimo para Destination
Use: S: V
Importante: Cada vez que S:V passar de desenergizado para energizado, ele cria uma falha de advertência (tipo 4, código 4) o valor de destino da instrução é 0
S:Z
o valor de destino da instrução é negativo
S:N
uma operação aritmética causa um transporte ou empréstimo que tenta usar os bits que estão fora do tipo de dados
S:C
essa é a primeira varredura normal de rotinas no programa atual
S:FS
pelo menos uma falha de advertência foi gerada: • O controlador energiza esse bit quando uma falha de advertência ocorre devido à execução do programa. • O controlador não energiza esse bit para falhas de advertência não relacionadas à execução do programa, como bateria fraca.
S:MINOR
As palavras-chave de status não são sensíveis ao contexto. Como os flags de status podem mudar rapidamente, o software RSLogix 5000 não exibe o status dos flags. Não é possível definir alias do tag para uma palavra-chave.
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6-3
Obtenção e Definição de Dados do Sistema (Informações de Status) O controlador armazena os dados do sistema nos objetos. Não há arquivo de status como no controlador CLP-5. Use as instruções GSV/SSV de leitura e escrita dos dados do sistema do controlador que estão armazenados em objetos: Para obter ou energizar um valor do sistema: 1. Selecione o objeto de sistema que você quer. Obter ou definir:
Selecione:
Obter ou definir:
Selecione:
os eixos de um servomódulo
AXIS
status, falhas e modo de um módulo
MODULE
o tempo de atraso do sistema
CONTROLLER
grupo de eixos
MOTIONGROUP
o hardware físico de um controlador
CONTROLLERDEVICE
as informações de falha ou o tempo de varredura para um programa
PROGRAM
o tempo coordenado do sistema para os dispositivos em um rack
CST
o número de exemplo de uma rotina
ROUTINE
o driver de comunicação DF1 para a porta serial
DF1
a configuração da porta serial
SERIALPORT
o histórico de falha para um controlador
FAULTLOG
as propriedades ou tempo decorrido de uma tarefa
TASK
os atributos de uma instrução de mensagem
MESSAGE
o tempo do wallclock de um controlador
WALLCLOCKTIME
2. Na lista de atributos para o objeto, identifique o atributo que quer acessar.
Publicação 1756-QR107C-PT-P - Junho 2005
6-4
Acesso aos Valores de Sistema
3. Crie um tag para o valor do atributo: Se o tipo de dados do atributo for:
Então:
um elemento (p. ex.: DINT)
Crie um tag para o atributo.
mais de um elemento (p. ex.: DINT[7])
A. Crie um tipo de dados definidos pelo usuário que corresponda à organização de dados para o atributo. b. Crie um tag para o atributo.
4. Em sua lógica, use uma instrução GSV para obter os valores de um atributo ou a instrução SSV para determinar o valor de um atributo. 5. Atribua os operandos necessários para a instrução: Para este operando:
Selecione:
Class name
o nome do objeto
Instance name
o nome do objeto específico (p. ex.: o nome do módulo de E/S requisitado, tarefa, mensagem) Nem todos os objetos requerem esta entrada. Para especificar a tarefa atual, programa ou rotina, selecione THIS.
Attribute Name
o nome do atributo
Dest (GSV)
o tag que armazenará o valor recuperado Se o tag for um tipo de dados definidos pelo usuário ou um vetor, selecione o primeiro membro ou elemento.
Source (SSV)
o tag que armazena o valor a ser energizado Se o tag for um tipo de dados definidos pelo usuário ou um vetor, selecione o primeiro membro ou elemento.
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6-5
Informações de Status Disponíveis - Objetos GSV/SSV Atributos do CONTROLADOR Atributo:
Tipo de dados:
Instrução:
Descrição:
TimeSlice
INT
GSV SSV
Porcentagem de CPU disponível atribuída para a comunicação. Valores válidos são 10-90. Este valor não pode ser alterado quando a chave seletora estiver em posição de execução.
Atributos CONTROLLERDEVICE Atributo:
Tipo de dados:
Instrução:
Descrição:
DeviceName
SINT[33]
GSV
Grupo ASCII que identifica o código de catálogo do controlador e placa de memória. O primeiro byte contém uma contagem do número de caracteres ASCII que retornaram no grupo do vetor.
ProductCode
INT
GSV
Identifica o tipo de controlador Valor: Significado: 3 ControlLogix5550 15 SoftLogix5860 41 FlexLogix5433 43 FlexLogix5434 48 PowerFlex 700S com DriveLogix5720 50 CompactLogix5320 51 ControlLogix5555 52 PowerFlex 700S com DriveLogix5730
Publicação 1756-QR107C-PT-P - Junho 2005
6-6
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
ProductRev
INT
GSV
Identifica a revisão atual do produto. A apresentação deve ser hexadecimal. O byte desenergizado contém a revisão principal; o byte energizado contém a revisão secundária.
SerialNumber
DINT
GSV
Número serial do dispositivo. O número serial é atribuído quando o dispositivo é construído.
Status
INT
GSV
Bits de Status do dispositivo Bits 7-4: Significado: 0000 reservado 0001 atualização flash em progresso 0010 reservado 0011 reservado 0100 flash está danificado 0101 falha 0110 execução 0111 programa
Bits de Status do Controlador Bits 13-12: Significado: 01 chave seletora em execução 10 chave seletora em programa 11 chave seletora em modo Remote 15-14 Bits 01 10
Significa o controlador está alternando os modos modo de depuração se o controlador estiver no modo Run
Bits de Status de Falha Bits 11-8: Significado: 0001 falha de advertência recuperável 0010 falha de advertência não recuperável 0100 falha grave recuperável 1000 falha grave não recuperável Type
INT
GSV
Identifica o dispositivo como um controlador. Controlador = 14
Vendor
INT
GSV
Identifica o fornecedor do dispositivo. Allen-Bradley = 0001
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6-7
Atributos CST Atributo:
Tipo de dados: Instrução:
Descrição:
CurrentStatus
INT
GSV
Status atual do tempo de sistema coordenado. Bit: Significado: 0 falha no hardware do temporizador: o hardware do temporizador interno do dispositivo está com falha 1 rampa habilitada: o valor atual dos 16 bits menos significativos do temporizador aumentam em rampa até o valor requisitado, ao invés de permanecer no valor menor. 2 mestre do tempo do sistema: o objeto CST é uma fonte de tempo mestre no sistema ControlLogix 3 sincronizado: o CurrentValue de 64 bits do objeto CST é sincronizado por um objeto CST mestre através de uma atualização de tempo do sistema. 4 mestre da rede local: o objeto CST é a fonte de tempo mestre da rede local 5 modo de relé: o objeto CST está agindo em um modo de relé de tempo 6 detecção de mestre duplicado: um mestre de tempo duplicado na rede local foi detectado. Este bit é sempre 0 para os nós que dependem do tempo. 7 não usado 8-9 00 = nó que depende do tempo 01 = nó do mestre de tempo 10 = nó do relé de tempo 11 = não usado 10-15 não usado
CurrentValue
DINT[2]
GSV
Valor atual do temporizador. DINT[0] contém os 32 bits menos significativos; DINT[1] contém os 32 bits mais significativos. A fonte do temporizador é ajustada para corresponder ao valor fornecido nos serviços de atualização e da sincronização da rede de comunicação local. O ajuste pode ser tanto um aumento em rampa até atingir o valor requisitado como uma configuração imediata no valor requisitado, conforme definido no atributo CurrentStatus.
Publicação 1756-QR107C-PT-P - Junho 2005
6-8
Acesso aos Valores de Sistema
Atributos DF1 Atributo:
Tipo de dados:
Instrução:
Descrição:
ACKTimeout
DINT
GSV
Quantidade de tempo que se espera para se reconhecer uma transmissão de mensagem (somente mestre e ponto-a-ponto) Valor válido 0-32.767. Atraso em pulsos de períodos de 20 ms. O valor inicial é 50 (1 segundo).
DiagnosticCounters
INT[19]
GSV
Vetor de contadores de diagnóstico para o driver de comunicação DF1.
offset da palavra 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
DF1 ponto a ponto assinatura (0x0043) bits do modem pacotes enviados pacotes recebidos pacotes não entregues não usado NAKs recebidos ENQs polling recebidos pacotes NAKed defeituosos nenhuma memória enviou um NAK pacotes duplicados recebidos caracteres defeituosos recebidos contagem de recuperações DCD contagem de modem perdida não usado não usado não usado não usado ENQs enviados
Publicação 1756-QR107C-PT-P - Junho 2005
DF1 escravo assinatura (0x0042) bits do modem pacotes enviados pacotes recebidos pacotes não entregues tentativas de mensagens NAKs recebidos pacotes recebidos pacotes não ACKed defeituosos nenhuma memória não ACKed pacotes duplicados recebidos não usados contagem de recuperações DCD contagem de modem perdida não usado não usado não usado não usado não usado
mestre assinatura (0x0044) bits do modem pacotes enviados pacotes recebidos pacotes não entregues tentativas de mensagens não usado não usados pacotes não ACKed defeituosos não usado pacotes duplicados recebidos não usados contagem de recuperações DCD contagem de modem perdida prioridade do tempo máximo de varredura última prioridade do tempo de varredura tempo de varredura normal máximo último tempo normal de varredura não usado
Acesso aos Valores de Sistema
6-9
Atributo:
Tipo de dados:
Instrução:
Descrição:
DuplicateDetection
SINT
GSV
Habilita a detecção de mensagem duplicada. Valor: Significado: 0 detecção de mensagem duplicada desabilitada diferente de zero detecção de mensagem duplicada habilitada
EmbeddedResponseEnable
SINT
GSV
Habilita funcionalidade de resposta incorporada (somente ponto-a-ponto). Valor: Significado: 0 iniciado somente depois que um é recebido (padrão) 1 habilitado incondicionalmente
ENQTransmitLimit
SINT
GSV
O número de pedidos (ENQs) a serem enviados após um timeout ACK (somente ponto-a-ponto). Valor válido 0-127. O valor inicial é 3.
EOTSuppression
SINT
GSV
Habilita a supressão de transmissões EOT em resposta ao polling de pacotes (somente escravo). Valor: Significado: 0 supressão de EOT desabilitada (desabilitado) diferente de zero supressão de EOT habilitada
ErrorDetection
SINT
GSV
Especifica o esquema de detecção de erro. Valor: Significado: 0 BCC (padrão) 1 CRC
MasterMessageTransmit
SINT
GSV
Valor atual da transmissão de mensagem mestre (somente mestre). Valor: Significado: 0 entre os pollings da estação (padrão) 1 na seqüência do polling (no lugar do número da estação do mestre)
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 10
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
NAKReceiveLimit
SINT
GSV
O número de NAKs recebidos em resposta a uma mensagem antes da interrupção da transmissão (somente comunicação ponto-a-ponto). Valor válido 0-127. Valor inicial é 3.
NormalPollGroupSize
INT
GSV
Número de estações para ser distribuído no vetor normal de nós do polling, depois de realizar um polling de todas as estações no vetor de nós de polling de prioridade (somente mestre). Valor válido 0-255. Valor inicial é 0.
PollingMode
SINT
GSV
Modo de polling atual (somente mestre). O valor inicial é 1. Valor: Significado: 0 baseado em mensagem, mas não permite escravos para iniciar as mensagens 1 baseado em mensagens, mas permite escravos para iniciar as mensagens (padrão) 2 transferência padrão de uma única mensagem por varredura do nó 3 transferência padrão de várias mensagens por varredura do nó
ReplyMessageWait
DINT
GSV
O tempo (atuando como mestre) para esperar o recebimento de um ACK antes de realizar um polling do escravo para uma resposta (somente mestre). Valor válido 0-65.535. Atraso em pulsos de períodos de 20 ms. O valor inicial é de 5 períodos (100 ms).
StationAddress
INT
GSV
Endereço atual da estação da porta serial. Valor válido 0-254. Valor inicial é 0.
SlavePollTimeout
DINT
GSV
A quantidade de tempo em ms que o escravo espera pelo mestre para realizar um polling, antes que o escravo declare que não tem condições de transmitir porque o mestre está inativo (somente escravo). Valor válido 0-32.767. Atraso em pulsos de períodos de 20 ms. O valor inicial é de 3000 períodos (1 minuto).
TransmitRetries
SINT
GSV
Número de vezes para reenviar uma mensagem sem obter um reconhecimento (somente mestre e escravo) Valor válido 0-127. Valor inicial é 3.
PendingACKTimeout
DINT
SSV
Valor pendente para o atributo ACKTimeout.
PendingDuplicateDetection
SINT
SSV
Valor pendente para o atributo DuplicateDetection.
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
PendingEmbeddedResponseEnable
SINT
SSV
Valor pendente para o atributo EmbeddedResponse.
PendingENQTransmitLimit
SINT
SSV
Valor pendente para o atributo ENQTransmitLimit.
PendingEOTSuppression
SINT
SSV
Valor pendente para o atributo EOTSuppression.
PendingErrorDetection
SINT
SSV
Valor pendente para o atributo ErrorDetection.
PendingNormalPollGroupSize
INT
SSV
Valor pendente para o atributo NormalPollGroupSize.
PendingMasterMessageTransmit
SINT
SSV
Valor pendente para o atributo MasterMessageTransmit.
PendingNAKReceiveLimit
SINT
SSV
Valor pendente para o atributo NAKReceiveLimit.
PendingPollingMode
SINT
SSV
Valor pendente para o atributo PollingMode.
PendingReplyMessageWait
DINT
SSV
Valor pendente para o atributo ReplyMessageWait.
PendingStationAddress
INT
SSV
Valor pendente para o atributo StationAddress.
PendingSlavePollTimeout
DINT
SSV
Valor pendente para o atributo SlavePollTimeout.
PendingTransmitRetries
SINT
SSV
Valor pendente para o atributo TransmitRetries.
6 - 11
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 12
Acesso aos Valores de Sistema
Atributos FAULTLOG Atributo:
Tipo de dados:
Instrução:
Descrição:
MajorEvents
INT
GSV SSV
Quantas falhas graves ocorreram desde a última vez que este contador foi restaurado.
MinorEvents
INT
GSV SSV
Quantas falhas de advertência ocorreram desde a última vez que este contador foi restaurado.
MajorFaultBits
DINT
GSV SSV
Os bits individuais indicam o motivo da falha grave atual. Bit: Significado: 1 perda de alimentação 3 E/S 4 execução da instrução (programa) 5 rotina de falhas 6 watchdog 7 pilha 8 alteração de modo 11 movimento
MinorFaultBits
DINT
GSV SSV
Os bits individuais indicam o motivo da falha de advertência atual. Bit: Significado: 4 execução da instrução (programa) 6 watchdog 9 porta serial 10 bateria
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6 - 13
Atributos MESSAGE Atributo:
Tipo de dados:
Instrução:
Descrição:
ConnectionPath
SINT[130]
GSV SSV
Dados para configuração do percurso de conexão. Os primeiros dois bytes (byte desenergizado e byte energizado) são o comprimento em bytes do percurso de conexão.
ConnectionRate
DINT
GSV SSV
Taxa requisitada para o pacote da conexão.
MessageType
SINT
GSV SSV
Especifica o tipo de mensagem. Valor: Significado: 0 não inicializado
Port
SINT
GSV SSV
Indica por qual porta a mensagem deve ser enviada. Valor: Significado: 1 backplane 2 porta serial
TimeoutMultiplier
SINT
GSV SSV
Determina o término da temporização de uma conexão e quando deve ser fechada. Valor: Significado: 0 conexão interromperá o timeout em 4 vezes a taxa de atualização (padrão) 1 conexão interromperá o timeout em 8 vezes a taxa de atualização 2 conexão interromperá o timeout em 16 vezes a taxa de atualização
UnconnectedTimeout
DINT
GSV SSV
Timeout em microssegundos para todas as mensagens não conectadas. O valor inicial é de 30.000.000 microssegundos (30 s).
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 14
Acesso aos Valores de Sistema
Atributos MODULE Atributo:
Tipo de dados:
Instrução:
Descrição:
EntryStatus
INT
GSV
Especifica o estado atual da entrada do mapa especificado. Os 12 bits menos significativos devem ser filtrados pela máscara na execução de uma operação de comparação. Somente os bits de 12 a 15 são válidos. Valor: Significado: 16#0000 Standby: o controlador está energizando. 16#1000 Em Falha: quaisquer uma das conexões do objeto MODULE com a falha do módulo associado. Este valor não deve ser usado para determinar se o módulo apresentou falha porque o objeto MODULE sai deste estado periodicamente ao tentar reconectar-se ao módulo. Ao invés disso, verifique o estado Running (16#4000). Verifique se FaultCode não é igual a 0 para determinar se um módulo apresenta falha. Quando estiver na condição de falha (Faulted), os atributos FaultCode e FaultInfo são válidos até que a condição de falha seja corrigida. 16#2000 Validação: o objeto MODULE está verificando a integridade do objeto MODULE antes de estabelecer as conexões para o módulo. 16#3000 Conexão: o objeto MODULE está iniciando as conexões para o módulo. 16#4000 Em Operação: todas as conexões com o módulo são estabelecidas e os dados são transferidos. 16#5000 Desligamento: o objeto MODULE está no processo de desligar todas as conexões para o módulo. 16#6000 Inibido: o objeto MODULE está inibido (o bit inibido no atributo Mode está energizado). 16#7000 Na Espera: o objeto-pai do qual este objeto MODULE depende não está em operação.
FaultCode
INT
GSV
Número que identifica uma falha no módulo, em caso de ocorrência.
FaultInfo
DINT
GSV
Fornece informações específicas sobre o código de falha do objeto MODULE.
ForceStatus
INT
GSV
Especifica o status dos pontos forçados. Bit: Significado: 0 pontos forçados instalados (1=sim, 0-não) 1 pontos forçados habilitados (1=sim, 0=não
Instance
DINT
GSV
Fornece o número de instância deste objeto MODULE.
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6 - 15
Atributo:
Tipo de dados:
Instrução:
Descrição:
LEDStatus
INT
GSV
Especifica o estado atual do LED de E/S localizado na parte frontal do controlador. Valor: Significado: 0 LED desligado: Nenhum objeto MODULE foi configurado para o controlador (não há módulos na seção I/O Configuration do organizador do controlador). 1 Vermelho piscando: Nenhum dos objetos MODULE está em operação. 2 Verde piscando: Pelo menos um objeto MODULE não está em operação. 3 Verde permanente: Todos os objetos MODULE estão em operação. Nota: Não é possível inserir um nome de objeto com este atributo porque este atributo se aplica a todo o conjunto de módulos.
Mode
INT
GSV SSV
Especifica o modo atual do objeto MODULE. Bit: Significado: 0 Se configurado, causa uma falha grave se uma das conexões do objeto MODULE apresentar falha enquanto o controlador estiver no modo Run. 2 Se configurado, faz com que o objeto MODULE seja introduzido no estado Inibido depois de desligar todas as conexões do módulo.
Atributos PROGRAM Atributo:
Tipo de dados:
Instrução:
Descrição:
DisableFlag
SINT
GSV SSV
Controla essa execução do programa. Valor: Significado: 0 execução habilitada 1 execução desabilitada
Instance
DINT
GSV
Fornece o número de instância deste objeto PROGRAM.
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 16
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
LastScanTime
DINT
GSV SSV
Tempo que a levou a execução do programa da última vez. O tempo está em microssegundos.
MajorFaultRecord
DINT[11]
GSV SSV
Registra as falhas graves para este programa Recomendamos que você crie uma estrutura definida pelo usuário para simplificar o acesso ao atributo MajorFaultRecord:
Nome: TimeLow TimeHigh Type Code Info
Tipo de dados: DINT DINT INT INT DINT[8]
Estilo: Decimal Decimal Decimal Decimal Hexadecimal
Descrição: 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.) código exclusivo para a falha (depende do tipo de falha) informações específicas sobre a falha (depende do tipo e do código de falha)
MaxScanTime
DINT
GSV SSV
Tempo máximo de execução registrado para este programa. O tempo está em microssegundos.
MinorFaultRecord
DINT[11]
GSV SSV
Registra as falhas de advertência para este programa Recomendamos que você crie uma estrutura definida pelo usuário para simplificar o acesso ao atributo MinorFaultRecord:
Nome: TimeLow TimeHigh Type Code Info SFCRestart
Tipo de dados: DINT DINT INT INT DINT[8]
Estilo: Decimal Decimal Decimal Decimal Hexadecimal INT
Publicação 1756-QR107C-PT-P - Junho 2005
Descrição: 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.) código exclusivo para a falha (depende do tipo de falha) informações específicas sobre a falha (depende do tipo e do código de falha) GSV SSV
não usado - reservado para uso futuro
Acesso aos Valores de Sistema
6 - 17
Atributos REDUNDANCY Atributo:
Tipo de dados:
Instrução:
Descrição:
ChassisRedundancyState
INT
GSV
O status de redundância de todo o rack. Valor: Significado: 16#1 energizado ou não determinado 16#2 primário com secundário qualificado 16#3 primário com secundário desqualificado 16#4 primário sem secundário
CompatibilityResults
INT
GSV
Os resultados das verificações de compatibilidade com o controlador parceiro. Valor: Significado: 0 indeterminado 1 não compatível com o parceiro 2 totalmente compatível com o parceiro
KeyswitchAlarm
DINT
GSV
as definições de chaves seletoras do controlador e seu parceiro combinam ou não. Valor: Significado: 0 as chaves seletoras combinam ou não há um parceiro 1 chaves seletoras não combinam
ModuleRedundancyState
INT
GSV
Status de redundância de todo o controlador. Valor: Significado: 16#1 energizado ou não determinado 16#2 primário com secundário qualificado 16#3 primário com secundário desqualificado 16#4 primário sem secundário 16#6 primário com secundário qualificado
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 18
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
PartnerChassisRedundancyState
INT
GSV
Estado de redundância do rack parceiro Valor: Significado: 16#8 secundário qualificado 16#9 secundário desqualificado com o primário
PartnerKeyswitch
DINT
GSV
Posição da chave seletora do parceiro Valor: Significado: 0 desconhecido 1 EXECUÇÃO 2 PROGR 3 REM
PartnerMinorFaults
DINT
GSV
Falhas de advertência do parceiro (se o ModuleRedundancyState indicar que um parceiro está presente). Valor: Significado: 4 problema com uma instrução (programa) 6 sobreposição periódica de tarefa (watchdog) 9 problema com a porta serial 10 baixa bateria
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
PartnerMode
DINT
GSV
Modo do parceiro. Valor: Significado: 16#0 energizado 16#1 programa 16#2 execução 16#3 teste 16#4 falha 16#5 execução para programa 16#6 teste para programa 16#7 programa para execução 16#8 teste para execução 16#9 execução para teste 16#A programa para teste 16#B com falha 16#C com falha para programa
PartnerModuleRedundancyState
INT
GSV
Estado de redundância do parceiro Valor: Significado: 16#7 qualificação de secundário 16#8 secundário qualificado 16#9 secundário desqualificado com chave primária
PhysicalChassisID
INT
GSV
Em um par de rack redundante, identifique um rack específico independente do estado do rack. Valor: Significado: 0 desconhecido 1 rack A 2 rack B
6 - 19
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 20
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
QualificationInProgress
INT
GSV
Status do processo de qualificação. Valor: Significado: -1 qualificação não está em andamento 0 sem suporte 1 - 99 para módulos que podem medir seu percentual de conclusão, o percentual de qualificação que está concluído; para módulos que não podem medir seu percentual de conclusão, 50 = qualificação está em andamento e 100 = qualificação está concluída.
SRMSlotNumber
INT
GSV
Número do slot do módulo 1757-SRM neste rack
LastDataTransferSize
DINT
GSV
Este atributo só é válido em um controlador principal que esteja configurado para redundância. Se: Então este valor é o: um parceiro sincronizado transferida para o parceiro, especificada em DINTs é a quantidade de dados que foi apresentada por último não há parceiro presente ou a um parceiro qualificado é especificado em DINTs presentes quantidade de dados que seria transferida por último para um parceiro sincronizado,
MaxDataTransferSize
DINT
Publicação 1756-QR107C-PT-P - Junho 2005
GSV SSV
Valor máximo do atributo LastDataTransferSize Este atributo só é válido em um controlador principal que esteja configurado para redundância. Para restaurar este valor, use uma instrução SSV com um valor Source de 0.
Acesso aos Valores de Sistema
6 - 21
Atributos ROUTINE Atributo:
Tipo de dados:
Instrução:
Descrição:
Instance
DINT
GSV
Fornece o número de instância deste objeto ROUTINE. Valores válidos são 0-65.535.
Atributo:
Tipo de dados:
Instrução:
Descrição:
BaudRate
DINT
GSV
Especifica a taxa de transmissão. Os valores válidos são 110, 300, 600, 1200, 2400, 4800, 9600 e 19200 (padrão).
DataBits
SINT
GSV
Especifica o número de bits de dados por caractere. Valor: Significado: 7 7 bits de dados (somente ASCII) 8 8 bits de dados (padrão)
Paridade
SINT
GSV
Especifica a paridade. Valor: Significado: 0 sem paridade (sem padrão) 1 paridade ímpar (somente ASCII) 2 paridade par
RTSOffDelay
INT
GSV
Quantidade de tempo para retardar o desligamento da linha RTS depois da transmissão do último caracter. Valor válido 0-32.767. Atraso em pulsos de períodos de 20 ms. O valor inicial é 0 ms.
RTSSendDelay
INT
GSV
Quantidade de tempo para retardar a transmissão do primeiro caractere de uma mensagem depois de se energizar a linha RTS. Valor válido 0-32.767. Atraso em pulsos de períodos de 20 ms. O valor inicial é 0 ms.
Atributos SERIALPORT
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 22
Acesso aos Valores de Sistema
Atributo:
Tipo de dados:
Instrução:
Descrição:
StopBits
SINT
GSV
Especifica o número de bits de parada. Valor: Significado: 1 1 bit de parada (padrão) 2 2 bits de parada (somente ASCII)
PendingBaudRate
DINT
SSV
Valor pendente para o atributo BaudRate.
PendingDataBits
SINT
SSV
Valor pendente para o atributo DataBits.
PendingParity
SINT
SSV
Valor pendente para o atributo Parity.
PendingRTSOffDelay
INT
SSV
Valor pendente para o atributo RTSOffDelay.
PendingRTSSendDelay
INT
SSV
Valor pendente para o atributo RTSSendDelay.
PendingStopBits
SINT
SSV
Valor pendente para o atributo StopBits.
Atributos TASK Atributo:
Tipo de dados: Instrução:
Descrição:
DisableUpdateOutputs
DINT
Habilita ou desabilita o processamento de saídas no fim da tarefa. Valor: Significado: 0 habilita o processamento de saídas no fim da tarefa diferente de zero desabilita o processamento de saídas no fim da tarefa
Publicação 1756-QR107C-PT-P - Junho 2005
GSV SSV
Acesso aos Valores de Sistema
6 - 23
Atributo:
Tipo de dados: Instrução:
Descrição:
InhibitTask
DINT
GSV SSV
Evita a execução da tarefa. Se uma tarefa é inibida, o controlador ainda faz prescans da tarefa quando o controlador alterna do modo Program para Run ou Test. Valor: Significado: 0 habilita a tarefa 0 (padrão) nenhum zero inibe (desabilita)a tarefa
Instance
DINT
GSV
Fornece o número de instância deste objeto TASK. Valores válidos são 0-31.
LastScanTime
DINT
GSV SSV
Tempo que a execução desta tarefa demorou da última vez. O tempo está em microssegundos.
MaxInterval
DINT[2]
GSV SSV
O tempo máximo de intervalo entre as execuções sucessivas da tarefa. DINT[0] contém os 32 bits menos significativos do valor; DINT[1] contém os 32 bits mais significativos do valor. Um valor de 0 indica 1 ou menos execuções da tarefa.
MaxScanTime
DINT
GSV SSV
Tempo máximo de execução registrado para este programa. O tempo está em microssegundos.
MinInterval
DINT[2]
GSV SSV
O tempo mínimo de intervalo entre as execuções sucessivas da tarefa. DINT[0] contém os 32 bits menos significativos do valor; DINT[1] contém os 32 bits mais significativos do valor. Um valor de 0 indica 1 ou menos execuções da tarefa.
OverlapCount
DINT
GSV SSV
Número de vezes que a tarefa foi disparada enquanto ainda em execução. Válido para um evento ou tarefa periódica. Para zerar o contador, defina o atributo como 0.
Priority
INT
GSV
Prioridade relativa dessa tarefa comparada com outras tarefas. Valores válidos são 0-15.
Rate
DINT
GSV
O intervalo de tempo entre as execuções sucessivas da tarefa. O tempo está em microssegundos.
StartTime
DINT[2]
GSV SSV
O valor de WALLCLOCKTIME quando a última execução da tarefa foi iniciada. DINT[0] contém os 32 bits menos significativos do valor; DINT[1] contém os 32 bits mais significativos do valor.
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 24
Acesso aos Valores de Sistema
Atributo:
Tipo de dados: Instrução:
Descrição:
Status
DINT
GSV SSV
Informações de status sobre a tarefa. Uma vez que o controlador defina um destes bits, deve-se remover o bit manualmente. Bit: Significado: 0 uma instrução EVENT disparou a tarefa (somente tarefa de evento) 1 um tempo limite disparou a tarefa (somente tarefa de evento) 2 uma sobreposição ocorreu para esta tarefa
Tempo limite de execução
DINT
GSV SSV
O valor de tempo de execução excedido para uma tarefa de evento. O tempo está em microssegundos.
EnableTimeOut
DINT
GSV SSV
Habilita ou desabilita a função de tempo limite de execução de uma tarefa de evento. Valor: Significado: 0 desabilita a função de tempo limite de execução diferente de zero habilita a função de tempo limite de execução
Watchdog
DINT
GSV SSV
Limite de tempo para a execução de todos os programas associados a essa tarefa. O tempo está em microssegundos. Se você inserir 0, estes valores serão atribuídos: Tempo: Tipo de Tarefa: 0,5 s periódico 5,0 s contínuo
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6 - 25
Atributos WALLCLOCKTIME Atributo:
Tipo de dados:
Instrução:
Descrição:
CSTOffset
DINT[2]
GSV SSV
Desvio positivo do CurrentValue do objeto CST (tempo do sistema coordenado, consulte a página 6-7). DINT[0] contém os 32 bits menos significativos do valor; DINT[1] contém os 32 bits mais significativos do valor. Valor em µs. O valor inicial é 0.
CurrentValue
DINT[2]
GSV SSV
O valor atual de WALLCLOCKTIME. DINT[0] contém os 32 bits menos significativos do valor; DINT[1] contém os 32 bits mais significativos do valor. O valor é o número de microssegundos que transcorreram desde 0000 horas de 1 de janeiro de 1972. Os objetos CST e WALLCLOCKTIME estão matematicamente relacionados no controlador. Por exemplo, se você acrescentar CST CurrentValue e WALLCLOCKTIME CTSOffset, terá como resultado WALLCLOCKTIME CurrentValue.
DateTime
DINT[7]
GSV SSV
Data e hora em formato que possibilita a leitura. DINT[0] ano DINT[1] representação do mês através de inteiros (1-12) DINT[2] representação do dia através 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)
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 26
Acesso aos Valores de Sistema
Determinação das Informações sobre a Memória do Controlador Dependendo do tipo de controlador, a memória do controlador pode ser dividida em diversas áreas: Se você tiver esse controlador:
Então ele armazena o seguinte:
Nesta memória:
ControlLogix
tags de E/S
memória de E/S
tags produzidos tags consumidos comunicação através de instruções MSG (Mensagem) comunicação através de estações de trabalho comunicação com tags com polling (OPC/DDE) que usam o software RSLinx(1) tags diferentes de tags de E/S, produzidos ou consumidos
dados e memória lógica(2)
rotinas lógicas comunicação com tags com polling (OPC/DDE) que usam o software RSLinx(1) CompactLogix FlexLogix PowerFlex 700S com DriveLogix SoftLogix
Estes controladores não dividem suas memórias. Eles armazenam todos os elementos em uma área de memória comum. Ao usar o procedimento a seguir para obter os valores de memória para estes controladores, os valores aparecem como memória de E/S.
(1)
Para a comunicação com os tags com polling, o controlador usa a memória de E/S e de dados e lógica.
(2)
Os controladores 1756-L55M16 possuem uma seção de memória adicional para lógica.
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6 - 27
Para obter informações de memória do controlador, use uma instrução MSG:
Guia MSG Configuration: Para este item:
Digite ou selecione:
Que significa:
Message Type
CIP Generic
Executar um comando do Protocolo de Informações e Controle.
Service Type
Custom
Criar uma mensagem de CIP Generic não disponível na lista.
Service Code
3
Usar o serviço GetAttributeList. Isso permite a leitura de informações específicas sobre o controlador.
Class
72
Obter as Informações do objeto de memória do usuário.
Instance
1
Este objeto contém somente 1 exemplo.
Attribute
0
Valor nulo
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 28
Acesso aos Valores de Sistema
Para este item:
Digite ou selecione:
Source Element
source_array de tipo SINT[12]
Que significa:
Neste elemento:
Insira:
Que significa:
source_array [0]
5
Obter 5 atributos
source_array
0
Valor nulo
source_array [2]
1
Obter memória livre
source_array [3]
0
Valor nulo
source_array [4]
2
Obter memória total
source_array[5]
0
Valor nulo
source_array[6]
5
Obter o maior bloco contínuo de memória de lógica livre adicional
source_array[7]
0
Valor nulo
source_array[8]
6
Obter o maior bloco contínuo de memória de E/S livre
source_array[9]
0
Valor nulo
source_array[10]
7
Obter o maior bloco contínuo de memória de dados e de lógica livre adicional
source_array[11]
0
Valor nulo
Source Length
12
Escrever 12 bytes (12 SINTs).
Destination
INT_array de tipo INT[29]
Publicação 1756-QR107C-PT-P - Junho 2005
Acesso aos Valores de Sistema
6 - 29
Guia MSG Communication Para este item:
Tipo:
Path
1, slot_number_of_controller
A instrução MSG devolve as informações a seguir para INT_array (o tag de destino da MSG): Se você quiser:
Copie esses elementos de vetor:
Descrição:
a quantidade de memória de E/S livre (palavras de 32 bits)
INT_array[3]
16 bits menos significativos do valor de 32 bits
INT_array[4]
16 bits mais significativos do valor de 32 bits
INT_array[5]
16 bits menos significativos do valor de 32 bits
INT_array[6]
16 bits mais significativos do valor de 32 bits
INT_array[7]
16 bits menos significativos do valor de 32 bits
INT_array[8]
16 bits mais significativos do valor de 32 bits
INT_array[11]
16 bits menos significativos do valor de 32 bits
INT_array[12]
16 bits mais significativos do valor de 32 bits
INT_array[13]
16 bits menos significativos do valor de 32 bits
INT_array[14]
16 bits mais significativos do valor de 32 bits
INT_array[15]
16 bits menos significativos do valor de 32 bits
INT_array[16]
16 bits mais significativos do valor de 32 bits
a quantidade de memória dados e de lógica livre (palavras de 32 bits)
controladores 1756-L55M16 somente — a quantidade de memória de lógica livre adicional (palavras de 32 bits) o tamanho total de memória de E/S livre (palavras de 32 bits)
o tamanho total da memória de dados e de lógica livre (palavras de 32 bits)
controladores 1756-L55M16 somente — memória de lógica adicional (palavras de 32 bits)
Publicação 1756-QR107C-PT-P - Junho 2005
6 - 30
Acesso aos Valores de Sistema
Se você quiser:
Copie esses elementos de vetor:
Descrição:
controladores 1756-L55M16 somente — o maior bloco contínuo de memória de lógica livre adicional (palavras de 32 bits)
INT_array[19]
16 bits menos significativos do valor de 32 bits
INT_array[20]
16 bits mais significativos do valor de 32 bits
INT_array[23]
16 bits menos significativos do valor de 32 bits
INT_array[24]
16 bits mais significativos do valor de 32 bits
INT_array[27]
16 bits menos significativos do valor de 32 bits
INT_array[28]
16 bits mais significativos do valor de 32 bits
o maior bloco contínuo de memória de E/S livre (palavras de 32 bits)
o maior bloco contínuo de memória de dados e de lógica livre (palavras de 32 bits)
A instrução MSG devolve cada valor de memória como dois INTs separados. • O primeiro INT representa os 16 bits de valor menos significativo. • O segundo INT representa os 16 bits de valor mais significativo. Para converter os INTs separados em um valor que possa ser usado, use uma instrução de COP (Cópia), onde: Neste operando:
Especifique
Que significa:
Origem
o primeiro INT de dois pares de elementos (16 bits inferiores)
Começar com os 16 bits inferiores
Destination
o tag DINT no qual armazena o valor de 32 bits
Copiar o valor para o tag DINT.
Comprimento
1
Copiar 1 vez o número de bytes no tipo de dados de Destination. Nesse caso, a instrução copia 4 bytes (32 bits interiores), que combina os 16 bits engenheiros e superiores em um valor de 32 bits.
Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros
Capítulo
7
Controladores Opções de Comunicação Selecione um método para transferência de dados entre controladores: Se os dados:
Então:
Consulte a página:
precisam de entrega regular dentro de uma faixa de transmissão especificada por você (p. ex.:determinística)
produza e consuma um tag
7-2
são enviados quando uma condição específica ocorre em sua aplicação
envie uma mensagem
7-9
são transmitidos entre os controladores Logix e os CLP e SLC
mapeie os endereços CLP/SLC
7-13
são coletados de diversos controladores (e os tags consumidos não são uma opção ou não são desejados)
envie uma mensagem para controladores múltiplos
7-13
Publicação 1756-QR107C-PT-P - Junho 2005
7-2
Comunicação com Outros Controladores
Produção e Consumo de um Tag É possível utilizar tags produzidos e consumidos com as seguintes combinações de controlador e de rede. Este controlador:
Pode produzir e consumir tags na seguinte rede: Backplane Logix
ControlNet
SLC 500
X
CLP-5 ControlLogix
EtherNet/IP
X X
X
CompactLogix 1769-L32E, -L35E
X X
CompactLogix 1769-L32C, -L35CR
X
FlexLogix
X
X
PowerFlex 700S com DriveLogix
X
X
SoftLogix
X
X
Tags produzidos e consumidos funcionam da seguinte maneira: • Uma conexão transfere os dados entre os controladores: – Controladores múltiplos podem consumir (receber) os dados. – Os dados são atualizados no intervalo do pacote requisitado (RPI), de acordo com a configuração dos tags consumidos.
Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros Controladores
7-3
• Cada tag produzido ou consumido utiliza os seguintes números de conexões: Cada:
Usa esta quantidade de conexões no controlador local:
Usa esta quantidade de conexões no dispositivo de comunicação:
tag produzido
número_de_consumidores + 1
número_de_consumidores
tag consumido
1
1
Siga estas orientações • Crie os tags no escopo do controlador. Você só pode compartilhar tags utilizados pelo controlador. • Use um dos seguintes tipos de dados: – DINT – REAL – vetor de DINTs ou REALs – definido pelo usuário • Use o mesmo tipo de dados para o tag produzido e o(s) código(s) de acesso consumido(s) correspondente(s). • Para compartilhar tags com um controlador CLP-5C, use um tipo de dados definido pelo usuário. • Limite o tamanho do tag para menor ou igual a 500 bytes. Se você precisar transferir mais do que 500 bytes, transfira os dados em pacotes. • Se estiver produzindo diversos tags para o mesmo controlador: – Agrupe os dados em um ou mais tipos de dados definidos pelo usuário. (Isto requer menos conexões do que produzir cada tag separadamente.) – Agrupe os dados de acordo com taxas de atualização semelhantes. (Para preservar a largura de banda da rede, use um RPI maior para dados menos críticos.)
Publicação 1756-QR107C-PT-P - Junho 2005
7-4
Comunicação com Outros Controladores
Produção de um tag
Consumo de um tag
IMPORTANTE
Publicação 1756-QR107C-PT-P - Junho 2005
Se uma conexão de tags consumidos falhar, todos os outros tags a serem consumidos naquele controlador remoto param de receber novos dados.
Comunicação com Outros Controladores
7-5
Produção de tags para um controlador CLP-5C 1. Crie um tipo de dados definidos pelo usuário que contenha um vetor de INTs com um número par de elementos, como INT[2]. (Ao produzir INTs, você deve produzir dois ou mais.) 2. Crie um tag produzido e selecione o tipo de dados definidos pelo usuário. 3. Na configuração ControlNet para o controlador alvo CLP-5C: • Insira um Receive Scheduled Message. • No campo Message Size, insira o número de inteiros no tag produzido. 4. No software RSNetWorx para ControlNet, programe a rede.
Publicação 1756-QR107C-PT-P - Junho 2005
7-6
Comunicação com Outros Controladores
Produção de REALs para um controlador CLP-5C 1. Quantos valores deseja produzir? Se estiver produzindo:
Então:
Somente um valor REAL
Crie um tag produzido e selecione o tipo de dados REAL.
Mais do que um valor REAL
A. Crie um tipo de dados definidos pelo usuário que contenha um vetor de REALs: B. Crie um tag produzido e selecione o tipo de dados definidos pelo usuário na Etapa A.
2. Na configuração ControlNet para o controlador alvo CLP-5C: • Insira um Receive Scheduled Message. • Em Message Size, insira duas vezes o número de REALs no tag produzido. Por exemplo, se o tag produzido possuir 10 REALs, insira 20 em Message Size. Quando um controlador CLP-5C consumir um tag que é produzido por um controlador Logix5000, ele armazenará os dados em inteiros consecutivos de 16 bits. O controlador CLP-5C armazena os dados de ponto flutuante que necessitam de 32 bits independentemente do tipo do controlador conforme segue: • O primeiro inteiro contém os bits superiores do valor (localizados mais à esquerda). • O segundo inteiro contém os bits inferiores do valor (localizados mais à direita). • Este modelo continua para cada valor de ponto flutuante. 3. No controlador CLP-5C, reconstrua os dados de ponto flutuante, conforme explicado no seguinte exemplo: 4. No software RSNetWorx para ControlNet, programe a rede.
Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros Controladores
7-7
Consumo de Inteiros a partir de um Controlador CLP-5C 1. Na configuração ControlNet do controlador CLP-5C, insira o Send Scheduled Message. 2. No organizador do controlador, adicione o controlador CLP-5C à configuração de E/S. 3. Crie um tipo de dados definidos pelo usuário que contenha os seguintes membros: Tipo de dados:
Descrição:
DINT
Status
INT[x], onde “x” é o tamanho da saída dos dados do controlador CLP-5C. (Se você estiver consumindo apenas um INT, nenhuma dimensão é necessária)
Dados produzidos por um controlador CLP-5C
4. Crie um tag consumido com as seguintes propriedades: Para esta propriedade do tag:
Digite ou selecione:
Tag Type
Consumed
Controller
O CLP-5C que está produzindo os dados
Remote Instance
O número da mensagem da configuração do controlador CLP-5C
RPI
Uma alimentação de duas vezes o NUT da rede ControlNet. Por exemplo, se o NUT for de 5 ms, selecione um RPI de 5, 10, 20, 40 etc.
Data Type
O tipo de dados definidos pelo usuário que você criou.
5. No software RSNetWorx para ControlNet, programe a rede.
Publicação 1756-QR107C-PT-P - Junho 2005
7-8
Comunicação com Outros Controladores
Ajuste para limitações de largura de banda Quando compartilhar um tag em uma rede ControlNet, o tag deve ser adequado à largura de banda da rede: • A medida em que o número de conexões aumenta, diversas conexões podem necessitar compartilhar o tempo de atualização da rede (NUT). • Uma vez que uma rede ControlNet pode enviar apenas 500 bytes em um NUT, os dados de cada conexão devem ser inferiores a 500 bytes. Dependendo do tamanho de seu sistema, a largura de banda pode não ser suficiente. É possível fazer os seguintes ajustes: • Reduzir seu NUT. Com um NUT mais rápido, menos conexões têm que compartilhar uma atualização de slot. • Aumentar o RPI de suas conexões. Em RPIs maiores, as conexões podem enviar dados em etapas durante uma atualização de slot. • Para um módulo ponte ControlNet em um rack remoto, selecione o formato de comunicação mais eficiente para o rack. A maioria dos módulos no rack sem diagnóstico são módulos de E/S?
Selecione este formato de comunicação para módulo CNB remoto:
Sim
Rack Optimization
Não
nenhuma
O formato Rack Optimization usa um adicional de 8 bytes para cada slot no rack. Os módulos analógicos ou os módulos que enviam ou recebem dados de diagnósticos, fusíveis, registro de data e hora e de programação requerem conexões diretas e não aproveitam o formato otimizado para rack. A seleção de “None” libera até 8 bytes por slot para outros fins, como tags produzidos ou consumidos. • Separe os tags em dois ou mais tags menores: – Agrupe os dados de acordo com taxas de atualização semelhantes. – Atribua um RPI diferente para cada tag. • Crie uma lógica para transferir os dados em seções menores (pacotes). Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros Controladores
7-9
Envio de uma Mensagem Para cada mensagem, crie um tag para controlar a mensagem: • Crie o tag no escopo do controlador. • Use o tipo de dados MESSAGE. • No controlador Logix5000, use o tipo de dados DINT para inteiros sempre que possível. Os controladores Logix5000 executam de forma mais eficiente e usam menos memória ao trabalharem com inteiros de 32 bits (DINTs). • Se sua mensagem for para ou de um controlador CLP-5® ou SLC 500™ e ela transfere inteiros (não REALs), use um buffer de INTs: – Crie um buffer para os dados (escopo do controlador) usando o tipo de dados INT[x]. – Use uma instrução FAL para mover os dados entre o buffer e sua aplicação. Para enviar a mesma mensagem para diversos controladores, reconfigure a instrução MSG durante o tempo de execução, escreva novos valores para os membros do tipo de dados MESSAGE. Depois de inserir a instrução MSG e especificar a estrutura MESSAGE, use a caixa de diálogo Message Configuration para especificar os detalhes da mensagem.
Clique aqui para configurar a instrução MSG
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 10
Comunicação com Outros Controladores
Os detalhes de configuração dependem do tipo de mensagem selecionado.
Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros Controladores
7 - 11
Especifique o tipo de mensagem: Se o dispositivo alvo for um:
Selecione um dos seguintes tipos de mensagens:
Controlador Logix
CIP Data Table Read/Write
Módulo de E/S que você configura usando o software RSLogix 5000
Module Reconfigure CIP Generic
Controlador CLP-5
PLC5 Typed Read/Write PLC5 Word Range Read/Write
Controlador SLC Controlador MicroLogix
SLC Typed Read/Write
Módulo de block-transfer
Block-Transfer Read/Write
Controlador CLP-3
PLC3 Typed Read/write PLC3 Word Range Read/write
Controlador CLP-2
PLC2 Unprotected Read/write
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 12
Comunicação com Outros Controladores
Em seguida, especifique essas informações de configuração: Para esta propriedade: Source Element
Especifique: • Se você selecionar um tipo de mensagem de leitura, Source Element é o endereço de dados que você quer ler no dispositivo alvo. Use a sintaxe de endereçamento do dispositivo alvo. • Se você selecionar um tipo de mensagem de escrita, Source Tag é o primeiro elemento do tag que você quer enviar para o dispositivo alvo.
Number of Elements
O número de elementos que você lê/escreve depende do tipo de dados que está sendo usado. Um elemento se refere a um "fragmento" dos dados relacionados. Por exemplo, o tag timer1 é um elemento composto por uma estrutura de controle do temporizador.
Destination Element
• Se você selecionar um tipo de mensagem de leitura, o Destination Element é o primeiro elemento do tag no controlador Logix5000 no qual você quer armazenar os dados que você lê a partir do dispositivo alvo. • Se você selecionar o tipo de mensagem de escrita, o Destination Element é o endereço do local no dispositivo alvo onde você escreverá os dados.
Ao configurar uma instrução MSG, especifique estes detalhes na guia Communication.
Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros Controladores
7 - 13
Mapear os Endereços CLP/SLC Somente mapeie os endereços CLP/SLC se enviar uma mensagem de um controlador CLP ou SLC 500 para um controlador Logix e os controladores CLP/SLC não suporta o endereçamento de lógica ASCII. Para utilizar um endereço lógico (ex. N7:0) a fim de especificar um valor (tag) em um controlador Logix, é necessário mapear arquivos para tags: • Você só tem que mapear os números de arquivo que são usados nas mensagens; os outros números de arquivo não precisam ser mapeados. • A tabela de mapeamento é carregado no controlador e é utilizada sempre que um endereço “lógico” acessa os dados. • Somente é possível acessar tags utilizados pelo controlador (dados globais).
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 14
Comunicação com Outros Controladores
Para cada arquivo mencionado em um comando CLP ou SLC, faça uma inserção de mapa:
• Digite o número do endereço lógico. • Digite ou selecione o tag utilizado pelo controlador (global) que fornece ou recebe dados para o número de arquivo. (Você pode mapear vários arquivos para o mesmo tag.) • Para comandos CLP-2, especifique o tag que fornece ou recebe os dados.
Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros Controladores
7 - 15
Envie uma Mensagem para Dispositivos Múltiplos Para enviar uma mensagem para dispositivos múltiplos: • • • • • • •
Defina os elementos de fonte e de destino Crie o tipo de dados MESSAGE_CONFIGURATION Crie o vetor de configuração Obtenha o tamanho do vetor local Carregue as propriedades da mensagem para um dispositivo Configure a mensagem Vá para o próximo dispositivo.
Definição dos elementos de fonte e de destino Um vetor armazena os dados que são lidos ou escritos para cada controlador remoto. Cada elemento no vetor corresponde a um dispositivo remoto diferente. Crie o tag local_array que armazena os dados neste controlador. Nome do tag
Tipo
local_vetor
data_type [length] onde: data_type length
é o tipo de dados que a mensagem envia ou recebe, como DINT, REAL, ou STRING. é o número de elementos no vetor local.
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 16
Comunicação com Outros Controladores
Criação do tipo de dados MESSAGE_CONFIGURATION Crie um tipo de dados definidos pelo usuário para armazenar as variáveis de configuração para a mensagem em cada dispositivo. • Alguns dos membros necessários do tipo de dados usam um tipo de dados grupo. • O tipo de dados STRING padrão armazena 82 caracteres. • Se seus caminhos, nomes de tags remotos ou endereços usam menos do que 82 caracteres, você tem a opção de criar um novo tipo de grupo que armazena menos caracteres. Isto economiza memória. • Para criar um novo tipo de grupo, selecione File ⇒ New Component ⇒ String Type… • Se você criar um novo tipo de grupo, use-a ao invés do tipo de dados STRING neste procedimento. Para armazenar as variáveis de configuração para a mensagem em cada controlador, crie o seguinte tipo de dados definidos pelo usuário. Tipo de dados: MESSAGE_CONFIGURATION Nome
MESSAGE_CONFIGURATION
Descrição
Propriedades de configuração para uma mensagem para outro controlador
Membros Nome
Tipo de dados
+
Caminho
STRING
+
RemoteElement
STRING
Publicação 1756-QR107C-PT-P - Junho 2005
Estilo
Descrição
Comunicação com Outros Controladores
7 - 17
Criação do vetor de configuração Armazene as propriedades de configuração para cada dispositivo no vetor. Antes de cada execução de uma instrução MSG, sua lógica carrega novas propriedades na instrução. Isto envia a mensagem para um controlador diferente. 1. Crie este vetor: Nome do tag
Tipo
Escopo
message_config
MESSAGE_CONFIGURATION[number]
qualquer
onde number é o número de dispositivos para os quais enviar a mensagem.
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 18
Comunicação com Outros Controladores
2. Dentro do vetor message_config, insira o caminho para o primeiro controlador que recebe a mensagem. Nome do tag
−
Valor {…}
message_config
−
{…}
message_config[0]
+
message_config[0].Path
+
message_config[0].RemoteElement
Clique com o botão direito do mouse e selecione Go to Message Path Editor.
Navegador do Caminho da Mensagem Digite o caminho para o controlador remoto. ou Pesquise o controlador remoto.
Publicação 1756-QR107C-PT-P - Junho 2005
Caminho: peer_controller Configuração da E/S
Comunicação com Outros Controladores
7 - 19
3. Dentro do vetor message_config, insira o nome ou endereço do tag dos dados no primeiro controlador para receber a mensagem. Nome do tag
−
Valor
message_config
−
−
message_config[0]
+
message_config[0].Path
+
message_config[0].RemoteElement
message_config[1]
+
message_config[1].Path
+
message_config[1].RemoteElement
{…} {…}
... {…}
Insira o nome do tag ou endereço dos dados no outro controlador.
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 20
Comunicação com Outros Controladores
4. Insira o caminho e o elemento remoto para cada controlador adicional: Nome do tag
−
Valor
message_config
−
−
message_config[0]
+
message_config[0].Path
+
message_config[0].RemoteElement
message_config[1]
+
message_config[1].Path
+
message_config[1].RemoteElement
Publicação 1756-QR107C-PT-P - Junho 2005
{…} {…}
{…}
Comunicação com Outros Controladores
7 - 21
Obtenção do tamanho do vetor local
Carregue as propriedades da mensagem para um dispositivo
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 22
Comunicação com Outros Controladores
Configure a mensagem: Embora sua lógica controle o elemento remoto e o caminho para a mensagem, a caixa de diálogo Message Properties requer uma configuração inicial. Certifique-se de remover a opção Cache Connections. Nesta guia:
Se você quiser:
Para este item:
Digite ou selecione:
Configuration
ler (receber) dados de outros controladores
Message Type
o tipo de leitura que corresponde aos outros controladores
Source Element
tag ou endereços que contenham os dados no primeiro controlador.
Number Of Elements
1
Destination Tag
local_vetor[*]
Índice
0
Message Type
o tipo escrita que corresponde aos outros controladores
Source Tag
local_vetor[*]
Índice
0
Number Of Elements
1
Destination Element
tag ou endereços que contenham os dados no primeiro controlador.
Caminho
caminho para o primeiro controlador
Cache Connections
Desmarque a caixa de seleção Cache Connection. Como este procedimento muda o caminho da mensagem constantemente é mais eficiente não selecionar esse item da caixa.
escreva (envie) os dados aos outros controladores
Communication
Publicação 1756-QR107C-PT-P - Junho 2005
Comunicação com Outros Controladores
7 - 23
Vá para o próximo controlador
Reinicie a seqüência
Publicação 1756-QR107C-PT-P - Junho 2005
7 - 24
Comunicação com Outros Controladores
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Forcing
Capítulo
8
O Que Pode ser Forçado Use um force para cancelar os dados que sua lógica usa ou produz. Por exemplo, use os forces nas seguintes situações: • testar e depurar sua lógica • verificar a conexão de um dispositivo de saída • manter temporariamente seu processo funcionando quando houver uma falha de um dispositivo de entrada Use os forces somente como uma medida temporária. Eles não foram planejados para serem partes permanentes da aplicação. É possível forçar os seguintes elementos: Se você quiser:
Então:
suprimir um valor de entrada ou saída e um tag produzido ou consumido
adicione um force de E/S
suprimir as condições de uma transição uma vez para ir de uma etapa ativa para a próxima etapa
vá por uma transição ou force de um caminho
suprimir uma vez o force de um caminho simultâneo e executar as etapas deste caminho suprimir as condições de uma transição em um controle seqüencial de funções
adicione um force SFC
executar alguns, mas não todos, os caminhos de uma ramificação simultânea de um controle seqüencial de funções
Publicação 1756-QR107C-PT-P - Junho 2005
8-2
Forcing
Antes de usar um force, determine o status dos forces do controlador: Use este método:
Para determinar o status de:
barra de ferramentas on-line
forces de E/S forces de SFC
Descrição:
Guia Forces (Forças)
LED FORCE
forces de E/S Se LED FORCE estiver:
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
Então:
desligado
• Nenhum dos tags contém valores de force. • Os forces de E/S estão inativos (desabilitados).
piscando
• Pelo menos um tag contém um valor de force. • Os forces de E/S estão inativos (desabilitados).
sólido
• Os forces de E/S estão ativos (habilitados). • Os valores de force podem ou não existir.
Forcing
Use este método:
Para determinar o status de:
instrução GSV
forces de E/S
8-3
Descrição:
Force_Status é um tag DINT. Para determinar se:
Examine este bit:
Para esse valor:
os forces estão instalados
0
1
não há forces instalados
0
0
os forces estão habilitados
1
1
os forces estão desabilitados
1
0
Publicação 1756-QR107C-PT-P - Junho 2005
8-4
Forcing
Force de E/S Use um force de E/S para: • suprimir um valor de entrada de um outro controlador (isto é, um tag consumido) • suprimir um valor de entrada de um dispositivo de entrada • suprimir a lógica e especificar um valor de saída para um outro controlador (isto é, um tag produzido) • suprimir a lógica e especificar o estado de um dispositivo de saída
IMPORTANTE
IMPORTANTE
O force aumenta o tempo de execução da lógica. Quanto mais valores forem forçados, mais tempo leva para executar a lógica.
Os forces de E/S são suportados pelo controlador e não pela estação de trabalho de programação. Os forces permanecem mesmo se a estação de trabalho de programação estiver desconectada.
Publicação 1756-QR107C-PT-P - Junho 2005
Forcing
8-5
Quando forçar um valor de E/S: • • • •
É possível forçar todos os dados de E/S, exceto os dados de configuração. Se o tag estiver em um vetor ou estrutura, como um tag de E/S, force um elemento ou membro BOOL, SINT, INT, DINT ou REAL. Se o valor de dados for um SINT, INT ou DINT, você pode forçar os valores inteiros ou os bits individuais dentro do valor. Você também pode forçar um alias para um membro de estrutura de E/S, tag produzido ou tag consumido. Um tag alias compartilha os mesmos valores de dados que o seu tag base, pois forçar um tag alias também força o tag base associado.
Forçar um tag consumido ou entrada: • suprime o valor não importando o valor do dispositivo físico ou tag produzido • não afeta o valor recebido pelos outros controladores que monitoram a entrada ou o tag produzido Forçar uma saída ou um tag produzido suprime a lógica para o dispositivo físico ou outro(s) controlador(es). Outros controladores que monitoram o módulo de saída em um recurso somente leitura (listen-only) também visualizarão o valor forçado. Para forçar a E/S: 1. Qual é o estado do indicador dos Forces de E/S? Se:
Observe o seguinte:
desligado
Não existem forces de E/S atualmente.
piscando
Não há forces de E/S ativo. Porém, ao menos um force ainda existe em seu projeto. Ao habilitar os forces de E/S, todos os forces de E/S existentes também terão efeito.
sólido
Os forces de E/S estão habilitados (ativos). Ao instalar (adicionar) um force, ele tem efeito imediato.
Publicação 1756-QR107C-PT-P - Junho 2005
8-6
Forcing
2. Abra a rotina que contém o tag que você quer forçar. 3. Clique com o botão direito do mouse no tag e selecione Monitor… Se necessário, expanda o tag para mostrar o valor que deseja forçar. 4. Instale o valor do force: Para forçar um:
Faça isto:
valor BOOL
Clique com o botão direito do mouse no tag e selecione Force ON ou Force OFF.
valor não BOOL
Na coluna Force Mask para o tag, insira o valor para o qual quer forçar o tag. Pressione a tecla Enter.
5. Os forces de E/S estão habilitados? (Consulte
etapa 1.)
Se:
Então:
não
No menu Logic, selecione I/O Forcing ⇒ Enable All I/O Forces. Selecione Yes para confirmar.
sim
Pare.
Publicação 1756-QR107C-PT-P - Junho 2005
Forcing
8-7
Acompanhamento de uma Transição Para suprimir uma transição falsa uma vez e ir de uma etapa ativa para a etapa seguinte, use a opção Step Through. Com a opção Step Through: • Você não tem que adicionar, habilitar, desabilitar ou remover os forces. • A próxima vez que SFC alcançar a transição, ela executa de acordo com as condições de transição. Para usar a opção step through para a transição de uma etapa ativa ou um force de um caminho simultâneo: 1. Abra a rotina de SFC. 2. Clique com o botão direito do mouse na transição ou no caminho forçado e selecione Step Through.
Force de um SFC Para suprimir a lógica de um SFC, você tem essas opções: Se você quiser:
Então:
suprimir as condições de uma transição cada vez que a SFC alcança a transição
Force de uma Transição
evitar a execução de um ou mais caminhos de uma ramificação simultânea
Force de um Caminho Simultâneo
Publicação 1756-QR107C-PT-P - Junho 2005
8-8
Forcing
Force de uma Transição Para suprimir as condições de uma transição por execuções repetidas de um SFC, force a transição. O force permanece até que você a remova ou desabilite os forces Se você quiser:
Então:
evitar que SFC vá para a etapa seguinte
force a transição falsa
levar o SFC para a próxima etapa independente das condições de transição
force a transição verdadeira
Se você forçar uma transição em uma ramificação simultânea que seja falsa, SFC permanece na ramificação simultânea enquanto o force estiver ativo (instalado e habilitado). • Para sair de uma ramificação simultânea, a última etapa de cada caminho deve executar pelo menos uma vez e a transição abaixo da ramificação deve ser verdadeira. • Forçar uma transição falsa evita que o SFC de alcance a última etapa de um caminho.
Publicação 1756-QR107C-PT-P - Junho 2005
Forcing
8-9
• Ao remover ou desabilitar o force, o SFC pode executar o restante das etapas no caminho.
Por exemplo, para sair dessa ramificação, o SFC deve ser capaz de: • executar Step_011 pelo menos uma vez • ter passado Tran_011 e executar Step_012 pelo menos uma vez • determinar se Tran_012 é verdadeiro
Publicação 1756-QR107C-PT-P - Junho 2005
8 - 10
Forcing
Force de um Caminho Simultâneo Para evitar a execução de um caminho de uma ramificação simultânea, force o caminho falso. Quando SFC alcançar a ramificação, ele executa somente caminhos não forçados. Esse caminho executa.
Esse caminho não executa.
Se você forçar um caminho de uma ramificação simultânea que seja falsa, o SFC permanece na ramificação simultânea enquanto o force estiver ativo (instalado e habilitado). • Para sair de uma ramificação simultânea, a última etapa de cada caminho deve executar pelo menos uma vez e a transição abaixo da ramificação deve ser verdadeira. • Forçar um caminho falso evita que o SFC insira um caminho e execute suas etapas. • Ao remover ou desabilitar o force, o SFC pode executar as etapas no caminho. Publicação 1756-QR107C-PT-P - Junho 2005
Forcing
8 - 11
Para o Force de um SFC 1. Qual é o estado do indicador SFC Forces ? Se:
Observe o seguinte:
desligado
Não existem forces de SFC atualmente.
piscando
Não há forces de SFC ativos. Porém, ao menos um force ainda existe em seu projeto. Ao habilitar os forces de SFC, todos os forces de SFC existentes também serão afetados.
sólido
Não há forces de SFC habilitados (ativos). Ao instalar (adicionar) um force, ele tem efeito imediato.
2. Abra a rotina de SFC. 3. Clique com o botão direito do mouse na transição ou comece de um caminho simultâneo que quer forçar e selecione Force TRUE, somente para uma transição, ou Force FALSE. 4. Os forces de SFC estão habilitados? Se:
Então:
não
No menu Logic, selecione SFC Forcing ⇒ Enable All SFC Forces. Selecione Yes para confirmar.
sim
Pare.
Publicação 1756-QR107C-PT-P - Junho 2005
8 - 12
Forcing
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Falhas do Sistema
Capítulo
9
Falhas do Controlador O controlador armazenou informações diferentes sobre falhas: Tipo de falha:
Descrição:
Consulte página:
falha grave
Uma condição de falha grave o bastante para que o controlador desligue, a não ser que a condição seja removida. Quando uma falha grave ocorre, o controlador: 1. Energiza um bit de falha grave 2. Executa a lógica de falha fornecida pelo usuário, se houver 3. Se a lógica de falha fornecida pelo usuário não puder remover a falha, o controlador vai para o modo de falha 4. Energiza as saídas de acordo com seu estado de saída durante o modo Program 5. O LED OK pisca em vermelho
9-2
falha de advertência
Uma condição de falha que não é grave o bastante para que o controlador desligue:
9-10
falhas definidas pelo usuário
Se você quiser suspender (encerrar) o controlador com base em condições de sua aplicação, crie uma falha grave definida pelo usuário. Com uma falha grave definida pelo usuário: • Você define um valor para o código de falha. • O controlador manuseia a falha do mesmo modo que faz com outras falhas graves: – O controlador alterna para o modo de falha (falha grave) e pára a execução da lógica. – As saídas são ajustadas para seus estados ou valores configurados para o modo de falha.
9-15
Publicação 1756-QR107C-PT-P - Junho 2005
9-2
Falhas do Sistema
Falha Grave Se uma condição de falha ocorre, severa o bastante para desligar o controlador, o controlador gera uma falha grave e pára a execução da lógica. 1. Crie o seguinte tipo de dados definidos pelo usuário. Ele armazena informações sobre a falha.
Tipo de dados: FAULTRECORD Nome
FAULTRECORD
Descrição
Armazena o atributo MajorFaultRecord ou MinorFaultRecord de um objeto PROGRAM.
Membros Nome
Tipo de dados
Estilo
Descrição
Time_Low
DINT
Decimal
32 bits menos significativos do valor de registro de data e hora
Time_High
DINT
Decimal
32 bits mais significativos do valor de registro de data e hora
Type
INT
Decimal
tipo de falha (programa, E/S, etc.)
Code
INT
Decimal
código único para a falha
Info
DINT[8]
Hex
informações específicas da falha
Publicação 1756-QR107C-PT-P - Junho 2005
Falhas do Sistema
9-3
2. Cria uma rotina de falha para remover falhas específicas e permitir que o controle reinicie a execução. O lugar em que você deve posicionar a rotina depende do tipo de falha que deseja remover: Para uma falha devido à:
Faça isto:
execução de uma instrução
Crie uma rotina de falha para o programa • No organizador do controlador, clique com o botão direito no programa e selecione New Routine a. Na caixa de nome, insira um nome para rotina de falha. b. Na lista drop-down Type, selecione Ladder. • Com o botão direito do mouse, clique no programa e selecione Properties. a. Clique na guia Configuration. b. Na lista drop-down Fault, selecione a rotina de falha
perda de potência
Crie um programa e uma rotina principal para o Controller Fault Handler: • No organizador do controlador, clique com o botão direito do mouse em Controller Fault Handler e selecione New Program. a. Insira o nome do programa e a descrição. • Clique no sinal + próximo a Controller Fault Handler. • Clique uma vez com o botão direito do mouse no programa e selecione a New Routine. a. Insira o nome da rotina e a descrição. b. Na lista drop-downType, selecione a linguagem de programação para a rotina c. Clique com o botão direito do mouse no programa e selecione Properties. d. Clique na guia Configuration. e. Na lista drop-down Main, selecione a rotina
E/S watchdog da tarefa mudança de modo eixo de posicionamento
Publicação 1756-QR107C-PT-P - Junho 2005
9-4
Falhas do Sistema
3. Para remover uma falha grave que ocorre durante a execução de seu projeto, use a seguinte lógica para: • Obter o tipo de o código da falha
1. 2.
1. A instrução GSV acessa o atributo MAJORFAULTRECORD neste programa. 2. A instrução GSV armazena as informações de falha no tag major_fault_record.
Publicação 1756-QR107C-PT-P - Junho 2005
Falhas do Sistema
9-5
• Verificar uma falha específica 1.
2.
3. 4. 1. Esta instrução EQU verifica um tipo específico de falha, como programa, E/S. Em Source B, insira o valor para o tipo de falha que deseja remover. 2. Esta instrução EQU verifica um código específico de falha. Em Source B, insira o valor para o código que deseja remover. 3. A instrução CLR ajusta como zero o valor do tipo de falha no tag major_fault_record. 4. A instrução CLR ajusta como zero o valor do código de falha no tag major_fault_record.
Publicação 1756-QR107C-PT-P - Junho 2005
9-6
Falhas do Sistema
• Remover a falha
1. 2.
1. A instrução SSV escreve novos valores para o atributo MAJORFAULTRECORD deste programa. 2. A instrução GSV escreve os valores contidos no tag major_fault_record. Uma vez que os membros Type e o Code estão ajustados para zero, a falha é removida e o controlador reinicia a execução.
Publicação 1756-QR107C-PT-P - Junho 2005
Falhas do Sistema
9-7
Códigos de Falhas Graves Tipo:
Código:
Causa:
Método de Recuperação:
1
1
O controlador alimentado no modo Run.
Execute o manipulador de perda de alimentação.
1
60
Na energização, ocorreu uma falha irrecuperável que resultou em perda da integridade do controlador. O controlador foi restaurado e a memória foi limpa.
Descarregue o programa para o controlador. Entre em contato com a Rockwell Automation para ajuda no diagnóstico da falha.
1
61
Na energização, ocorreu uma falha irrecuperável que resultou em perda da integridade do controlador. O controlador foi restaurado e a memória foi limpa. A informação do Diagnóstico Estendido foi salva.
Descarregue o programa para o controlador. Entre em contato com a Rockwell Automation para ajuda no diagnóstico da falha.
3
16
Uma conexão necessária do módulo de E/S falhou.
Verifique se o módulo de E/S está no rack. Verifique os requisitos de codificação eletrônica. Visualize a guia Major Fault nas propriedades do controlador e a guia Connection nas propriedades do módulo para obter mais informações sobre a falha.
3
20
Possível problema com o rack ControlBus.
Irrecuperável - substitua o rack.
3
23
Pelo menos uma conexão necessária não foi estabelecida antes de passar para o modo Run.
Espere que a luz de E/S do controlador fique verde antes de mudar para o modo Run.
4
16
Instrução desconhecida encontrada.
Remova a instrução desconhecida. Isto provavelmente aconteceu devido ao processo de conversão do programa.
4
20
Subscrito do vetor muito grande, as estruturas de controle .POS ou .LEN são inválidas.
Ajuste o valor de acordo com a faixa válida. Não exceda o tamanho do vetor ou ultrapasse as dimensões definidas.
4
21
Estrutura de controle .LEN ou .POS < 0.
Ajuste o valor de modo que ele seja > 0.
Publicação 1756-QR107C-PT-P - Junho 2005
9-8
Falhas do Sistema
Tipo:
Código:
Causa:
Método de Recuperação:
4
31
Os parâmetros da instrução JSR não correspondem aos da instrução SBR ou RET associada.
Transfira o número de parâmetros apropriados. Se muitos parâmetros forem transferidos, os extras serão ignorados sem qualquer erro.
4
34
Uma instrução do temporizador teve um valor acumulado ou um valor negativo predefinido.
Arrume o programa para não carregar um valor negativo no valor acumulado ou no valor predefinido do temporizador.
4
42
JMP (salto para um label) que não exista ou foi deletado.
Corrija o JMP alvo ou adicione o label que estiver faltando.
4
82
Um controle seqüencial de funções (SFC) chamou uma sub-rotina e a sub-rotina tentou voltar para o SFC que estava chamando. Ocorre quando o SFC usa uma instrução JSR ou FOR para chamar a sub-rotina.
Remova o jump de volta para o SFC que está chamando.
4
83
Os dados testados não estavam dentro dos limites exigidos. Modifique o valor de acordo com os limites.
4
84
Overflow da pilha.
Reduza os níveis de encadeamento da sub-rotina ou o número de parâmetros transferidos.
4
89
Em uma instrução SFR, a rotina alvo não contém uma etapa alvo.
Corrija a SFR alvo ou adicione a etapa que estiver faltando.
4
definido pelo usuário
Uma falha definida pelo usuário.
6
1
O watchdog da tarefa expirou. A tarefa do usuário não foi concluída no período de tempo específico. Um erro de programa causou uma malha infinita ou o programa é complexo demais para executar tão rápido quanto o especificado ou uma tarefa com maior prioridade está afastando essa tarefa do término.
Publicação 1756-QR107C-PT-P - Junho 2005
Aumente o watchdog da tarefa, diminua o tempo de execução, eleve o nível de prioridade dessa tarefa, simplifique as tarefas de maior prioridade ou mova alguns códigos para um outro controlador.
Falhas do Sistema
Tipo:
Código:
Causa:
7
40
Armazenamento na memória não volátil falhou.
7
41
A carga da memória não volátil falhou por causa de diferença no tipo de controlador.
Atualize o firmware correto para este controlador.
7
42
A carga da memória não volátil falhou porque a revisão do firmware do projeto na memória não volátil não corresponde à revisão do firmware do controlador.
Atualize o firmware do controlador para o mesmo nível de revisão que o projeto que está na memória não volátil.
7
43
A carga da memória não volátil falhou por causa de erro de checksum.
Entre em contato com o suporte da Rockwell Automation. Consulte o verso desta publicação
7
44
Falha ao restaurar a memória do processador.
Entre em contato com o suporte da Rockwell Automation. Consulte o verso desta publicação
8
1
Tentativa de colocar o controlador em modo Run com a chave seletora de modo durante o descarregamento.
Espere a conclusão do descarregamento e remova a falha.
11
1
A posição real excedeu o limite de ultrapassagem positivo.
Mova os eixos na direção negativa até a posição ficar dentro do limite de ultrapassagem e execute Motion Axis Fault Reset.
11
2
A posição real excedeu o limite positivo da ultrapassagem de curso.
Mova os eixos na direção positiva até a posição ficar dentro do limite de ultrapassagem e execute Motion Axis Fault Reset.
11
3
A posição real excedeu a tolerância de erro.
Mova a posição para dentro da tolerância e execute Motion Axis Fault Reset.
11
4
A conexão A, B ou Z do canal do encoder está interrompida.
Reconecte o canal do encoder e execute Motion Axis Fault Reset.
11
5
Evento de ruído no encoder detectado ou os sinais do encoder não estão na quadratura.
Conserte a fiação do encoder e execute Motion Axis Fault Reset.
9-9
Método de Recuperação: 1. Tente armazenar novamente o projeto na memória não volátil. 2. Se o projeto falhar ao ser armazenado na memória não volátil, substitua a placa de memória.
Publicação 1756-QR107C-PT-P - Junho 2005
9 - 10
Falhas do Sistema
Tipo:
Código:
Causa:
Método de Recuperação:
11
6
A entrada Drive Fault foi ativada.
Remova a Drive Fault e execute Motion Axis Fault Reset.
11
7
A conexão síncrona apresentou uma falha.
Primeiro, execute Motion Axis Fault Reset. Se isso não funcionar, extraia o servomódulo e torne a conectá-lo. Se tudo falhar, substitua o servomódulo.
11
8
O servomódulo detectou uma falha grave de hardware.
Substitua o módulo.
11
9
A conexão assíncrona apresentou a uma falha.
Primeiro, execute Motion Axis Fault Reset. Se isso não funcionar, extraia o servomódulo e torne a conectá-lo. Se tudo falhar, substitua o servomódulo.
11
32
A tarefa de posicionamento sofreu uma sobreposição.
A taxa de atualização do curso do grupo é muito alta para manter a operação correta. Remova o tag de falha do grupo, aumente a taxa de atualização do grupo e remova a falha grave.
Falhas de Advertência Se uma condição de falha ocorre que não seja grave a ponto de desligar o controlador, ele gera uma falha de advertência. • O controlador continua a execução. • Não é necessário remover uma falha de advertência. • A fim de otimizar o tempo de execução e garantir a precisão do programa, monitore e corrija as falhas de advertência.
Publicação 1756-QR107C-PT-P - Junho 2005
Falhas do Sistema
9 - 11
Usar lógica ladder para capturar informações sobre falha de advertência: Para verificar:
Faça isto:
sobreposição de tarefas periódicas
1. Insira uma instrução GSV que obtenha o objeto FAULTLOG, atributo MinorFaultBits. 2. Monitore o bit 6.
carregamento da memória não volátil
1. Insira uma instrução GSV que obtenha o objeto FAULTLOG, atributo MinorFaultBits. 2. Monitore o bit 7.
um problema com a porta serial
1. Insira uma instrução GSV que obtenha o objeto FAULTLOG, atributo MinorFaultBits. 2. Monitore o bit 9.
bateria fraca
1. Insira uma instrução GSV que obtenha o objeto FAULTLOG, atributo MinorFaultBits. 2. Monitore o bit 10.
Publicação 1756-QR107C-PT-P - Junho 2005
9 - 12
Falhas do Sistema
Para verificar:
Faça isto:
um problema com uma instrução
1. Crie um tipo de dados definidos pelo usuário que armazene as informações de falha: Nomeie o tipo de dados FaultRecord e atribua os seguintes membros:
2. 3. 4. 5.
Publicação 1756-QR107C-PT-P - Junho 2005
Nome:
Tipo de dados:
Estilo:
TimeLow
DINT
Decimal
TimeHigh
DINT
Decimal
Type
INT
Decimal
Code
INT
Decimal
Info
DINT[8]
Hex
Crie um tag que armazenará os valores do atributo MinorFaultRecord. Monitore S:MINOR. Se S:MINOR estiver ligado, use uma instrução GSV para obter os valores do atributo MinorFaultRecord. Para detectar uma falha de advertência que seja causada por outra instrução, resete S:MINOR. (S:MINOR permanece configurado até o fim da varredura.)
Falhas do Sistema
9 - 13
Códigos de Falha de Advertência Tipo:
Código:
Causa:
Método de Recuperação:
4
4
Uma sobrecontagem overflow aritmético em uma instrução.
Para reparar o programa, examine as operações aritméticas (ordem) ou ajuste os valores.
4
7
O tag de destino GSV/SSV foi pequeno demais para suportar todos os dados.
Arrume o destino de modo que tenha espaço suficiente.
4
35
Tempo delta PID ≤ 0.
Ajuste o tempo de delta PID para que seja > 0.
4
36
Setpoint do PID fora da faixa
Ajuste o setpoint de forma que fique dentro da faixa.
4
51
O valor LEN do tag do grupo é maior que o tamanho de DATA do tag do grupo.
4
52
O grupo de saída é maior que o destino.
Crie um tipo de dados novo que seja grande o bastante para o grupo de saída. Use o novo tipo de dados de grupo como o tipo de dados de destino.
4
53
O número de saída está além dos limites do tipo de dados de destino.
Ou:
4
56
O valor de Start ou Quantity é inválido.
4
57
Falha na execução da instrução AHL porque a porta serial não está ajustada para handshaking.
1. Verifique se nenhuma instrução está escrevendo para o membro LEN do tag do grupo. 2. No valor de LEN, insira o número de caracteres que o grupo contém.
• Reduza o tamanho do valor ASCII. • Use um tipo de dados maior para destino. 1. Verifique se o valor de Start está entre 1 e o tamanho de DATA de Source. 2. Verifique se o valor de Start mais o valor de Quantity é menor ou igual ao tamanho de DATA de Source.
Ou:
• Altere a configuração da Control Line da porta serial. • Remova a instrução AHL.
Publicação 1756-QR107C-PT-P - Junho 2005
9 - 14
Falhas do Sistema
Tipo:
Código:
Causa:
Método de Recuperação:
6
2
Sobreposição de tarefas periódicas A tarefa periódica não foi concluída antes da nova execução.
Simplifique os programas, aumente o período ou aumente a prioridade relativa, etc.
7
49
Projeto carregado da memória não volátil.
9
0
Erro desconhecido ao fazer a manutenção da porta serial.
Entre em contato com o Grupo de Suporte Técnico.
9
1
A linha CTS não está correta para a configuração atual.
Desconecte e reconecte o cabo da porta serial ao controlador. Certifique-se de que o cabo está conectado corretamente
9
2
Erro da lista de polling. Um problema foi detectado com a lista de polling do DF1 mestre, como por exemplo, especificar mais estações que o tamanho do arquivo, especificar mais de 255 estações e tentar indexar após o final da lista ou fazer o polling do endereço de difusão (STN #255).
Verifique os erros a seguir na lista de polling: • o número total de estações é maior que o espaço no tag da lista de polling • o número total de estações é maior do que 255 • o indicador de estação atual é maior que o final do tag da lista de polling • foram encontradas mais do que 254 estações
9
5
Tempo-limite do polling escravo DF1. O watchdog do polling foi interrompido por um escravo. O mestre não fez o polling neste controlador no tempo especificado.
Determine e corrija o atraso para o polling.
9
9
O contato com o modem foi perdido. As linhas de controle DCD e/ou DSR não estão sendo recebidas na seqüência e/ou estado corretos.
Corrija a conexão do modem com o controlador.
10
10
A bateria não foi detectada ou precisa ser substituída.
Instale uma bateria nova.
Publicação 1756-QR107C-PT-P - Junho 2005
Falhas do Sistema
9 - 15
Falhas Definidas Pelo Usuário Se você quiser suspender (encerrar) o controlador com base em condições de sua aplicação, crie uma falha grave definida pelo usuário. Com uma falha grave definida pelo usuário: • O tipo de falha é sempre 4. • Você define um valor para o código de falha. Certifique-se de que ele já não seja usado para as falhas graves predefinidas. Se utilizar um código de falha que já seja um código de falha predefinido, uma falha grave ocorre. • O controlador manuseia a falha do mesmo modo que faz com outras falhas graves: – O controlador alterna para o modo de falha (falha grave) e pára a execução da lógica. – As saídas são ajustadas para seus estados ou valores configurados para o modo de falha. Na rotina principal do programa, insira a seguinte linha: condições quando o controlador deve desligar
JSR Jump to Subroutine Routine name name_of_fault_routine Input par x
Publicação 1756-QR107C-PT-P - Junho 2005
9 - 16
Falhas do Sistema
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Estruturas de Dados
Capítulo
10
Estruturas Comuns As estruturas a seguir são estruturas comuns usadas por diversas instruções de lógica ladder. Instruções em bloco de funções também usam estruturas, porém, elas são mais específicas para tipos individuais de instruções.
Estrutura COMPARE Mnemônico:
Tipo de dados:
Descrição:
.EN
BOOL
O bit habilitado indica que a instrução está habilitada.
.DN
BOOL
O bit executado será energizado quando a instrução tiver operado no último elemento (.POS = .LEN).
.FD
BOOL
O bit encontrado é energizado cada vez que a instrução registra uma diferença (operação uma por vez) ou após registrar todas as diferenças (operação todas por varredura).
.IN
BOOL
O bit de inibição indica o modo de pesquisa. 0 = todos os modos 1 = uma diferença em um modo de tempo
.ER
BOOL
O bit de erro será energizado se .POS < 0 ou .LEN < 0. A instrução pára a execução até que o programa desenergize o bit .ER.
.LEN
DINT
O comprimento especifica o número de elementos no vetor.
.POS
DINT
A posição contém a posição do elemento corrente.
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 2
Estruturas de Dados
Estrutura CONTROL Mnemônico:
Tipo de dados:
Descrição:
.EN
BOOL
O bit habilitado indica que a instrução está habilitada.
.DN
BOOL
O bit executado será energizado quando a instrução tiver operado no último elemento (.POS = .LEN).
.ER
BOOL
O bit de erro será energizado se a expressão gerar uma sobrecontagem (S:V é energizado). A instrução pára a execução até que o programa desenergize o bit .ER. O valor .POS contém a posição do elemento que provocou a sobrecontagem.
.LEN
DINT
O comprimento especifica o número de elementos no vetor.
.POS
DINT
A posição contém a posição do elemento corrente.
Publicação 1756-QR107C-PT-P - Junho 2005
Estruturas de Dados
10 - 3
Estrutura COUNTER Mnemônico:
Tipo de dados:
Descrição:
.CD
BOOL
O bit de contagem decrescente indica que a instrução CTD está habilitada.
.CU
BOOL
O bit de contagem crescente indica que a instrução CTU está habilitada.
.DN
BOOL
O bit executado indica que .ACC ≥ .PRE.
.OV
BOOL
O bit de sobrecontagem indica que o contador excedeu o limite superior de 2.147.483.647. Em seguida, o contador muda para -2.147.483.648 e começa novamente a contagem crescente.
.UN
BOOL
O bit de underflow indica que o contador excedeu o limite inferior de -2.147.483.648. Em seguida, o contador muda para 2.147.483.647 e começa novamente a contagem decrescente.
.PRE
DINT
O valor pré-selecionado especifica qual valor acumulado deve ser atingido para que a instrução energize o bit .DN.
.ACC
DINT
O valor acumulado especifica o número de transições que a instrução contou.
Estrutura EXT_ROUTINE_CONTROL (somente no controlador SoftLogix5800) Mnemônico:
Tipo de dados:
Descrição:
ErrorCode
SINT
Se um erro ocorrer, este valor identificará o erro. Os valores válidos são 0 a 255.
NumParams
SINT
Este valor indica o número de parâmetros associados a esta instrução.
ParameterDefs
EXT_ROUTINE_ PARAMETERS[10]
Este vetor contém as definições de parâmetros para passar para a rotina externa. A instrução pode passar até dez parâmetros.
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 4
Estruturas de Dados
Mnemônico:
Tipo de dados:
Descrição:
ReturnParamDef
EXT_ROUTIN_ PARAMETERS
Este valor contém as definições do parâmetro de retorno da rotina externa. Há somente um parâmetro de retorno.
EN
BOOL
Quando energizado, o bit habilitado indica que a instrução JXR está habilitada.
ReturnsValue
BOOL
Se energizado, este bit indica que um parâmetro de retorno foi inserido para a instrução. Se desenergizado, este bit indica que um parâmetro de retorno não foi inserido para a instrução.
DN
BOOL
O bit executado será energizado quando a rotina externa tiver sido executada uma vez para conclusão.
ER
BOOL
O bit de erro será energizado se um erro ocorrer. A instrução pára a execução até que o programa remova o bit de erro
FirstScan
BOOL
Este bit determina se esta é a primeira varredura após a comutação do controlador para o modo Run. Use FirstScan para inicializar a rotina externa, se necessário.
EnableOut
BOOL
Habilita saída.
EnableIn
BOOL
Habilita entrada.
User1
BOOL
Esses bits estão disponíveis para o usuário. O controlador não inicializa esses bits.
User0
BOOL
ScanType1
BOOL
ScanType0
BOOL
Publicação 1756-QR107C-PT-P - Junho 2005
Esses bits identificam o tipo de varredura atual: Valores do Bit: Tipo de Varredura: 00 Normal 01 Prescan 10 Postscan (não aplicável para os programas de lógica ladder)
Estruturas de Dados
10 - 5
Estrutura MESSAGE Mnemônico:
Tipo de dados: Descrição:
.FLAGS
INT
O membro .FLAGS oferece acesso aos membros de status (bits) em uma palavra de 16 bits. Este bit:
Corresponde a este membro:
2
.EW
4
.ER
5
.DN
6
.ST
7
.EN
8
.TO
9
.EN_CC
Importante: O reset de qualquer bit de status da MSG enquanto ela estiver habilitada poderá interromper as comunicações. .ERR
INT
Se o bit .ER for energizado, a palavra de código de erro identificará os códigos de erro para a instrução MSG.
.EXERR
INT
A palavra de código de erro estendido especifica as informações de código de erro adicionais para alguns desses códigos.
.REQ_LEN
INT
O comprimento requisitado especifica quantas palavras a instrução de mensagem tentará transferir.
.DN_LEN
INT
O comprimento executado determina quantas palavras realmente foram transferidas.
.EW
BOOL
O bit de espera habilitado é energizado quando o controlador detecta a entrada de uma solicitação de mensagem na fila. O controlador reinicializa o bit .EW quando o bit .ST é energizado.
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 6
Estruturas de Dados
Mnemônico:
Tipo de dados: Descrição:
.ER
BOOL
O bit de erro é energizado quando o controlador detecta uma falha na transferência. O bit .ER será reinicializado na próxima vez em que a entrada da condição da linha passar de falsa para verdadeira.
.DN
BOOL
O bit executado será energizado quando o último pacote de mensagens for transferido com sucesso. O bit .DN será reinicializado na próxima vez em que a entrada da condição da linha passar de falsa para verdadeira.
.ST
BOOL
O bit de partida será energizado quando o controlador começar a executar a instrução MSG. O bit .ST será reinicializado quando o bit .DN ou o bit .ER for energizado.
.EN
BOOL
O bit habilitado é energizado quando a entrada da condição da linha se tornar verdadeira e permanecer energizada até o bit .DN ou .ER ser energizado e a entrada da condição da linha se tornar falsa. Se a entrada da condição da linha se tornar falsa, mas os bits .DN e .ER forem desenergizados, o bit .EN permanecerá energizado.
.TO
BOOL
Se você energizar o bit .TO manualmente, o controlador interrompe o processamento da mensagem e energiza o bit .ER.
.EN_CC
BOOL
O bit de cache habilitado determina como controlar a conexão MSG. As conexões para as instruções MSG que saem da porta serial não ficam em memória cache, mesmo que o bit .EN_CC esteja energizado.
.ERR_SRC
SINT
Usado pelo software RSLogix 5000 para apresentar o caminho de erro na caixa de diálogo Message Configuration
.DestinationLink
INT
Para mudar o link de destino de um DH+ ou mensagem de CIP com identificação de origem, ajuste o membro para o valor solicitado.
.DestinationNode
INT
Para mudar o nó de destino de um DH+ ou mensagem de CIP com identificação de origem, ajuste o membro para o valor solicitado.
.SourceLink
INT
Para mudar o link de origem de um DH+ ou ou mensagem de CIP com identificação de origem, ajuste o membro para o valor solicitado.
.Class
INT
Para mudar o parâmetro Class de uma mensagem CIP Generic, ajuste o membro para o valor solicitado.
.Attribute
INT
Para mudar o parâmetro Attribute de uma mensagem CIP Generic, ajuste o membro para o valor solicitado.
.Instance
DINT
Para mudar o parâmetro Instance de uma mensagem CIP Generic, ajuste o membro para o valor solicitado.
Publicação 1756-QR107C-PT-P - Junho 2005
Estruturas de Dados
Mnemônico:
Tipo de dados: Descrição:
.LocalIndex
DINT
10 - 7
Caso use um asterisco [*] para designar o número do elemento do vetor local, o LocalIndex fornece o número do elemento. Para alterar o número do elemento, ajuste o membro para o valor solicitado. Se a mensagem:
Logo, o vetor local é:
lê os dados
Destination element
escreve os dados
Source element
.Channel
SINT
Para enviar a mensagem de um outro canal diferente do módulo 1756-DHRIO, ajuste este membro para o valor solicitado. Use o caractere ASCII A ou B.
.Rack
SINT
Para alterar o número do rack para uma mensagem de block transfer, ajuste este membro para o número do rack requisitado (octal).
.Group
SINT
Para alterar o número do grupo para uma mensagem de block transfer, ajuste este membro para o número de grupo requisitado (octal).
.Slot
SINT
Para alterar o número do slot para uma mensagem de block transfer, ajuste este membro para o número do slot requisitado (octal).
.Path
STRING
Se a rede for:
Especifique o número do slot em:
Remote I/O
octal
ControlNet
decimal (0-15)
Para enviar a mensagem para um controlador diferente, ajuste este membro para um novo caminho. • insira o caminho como valores hexadecimais. • omita as vírgulas [,]
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 8
Estruturas de Dados
Mnemônico:
Tipo de dados: Descrição:
.RemoteIndex
DINT
.RemoteElement
STRING
Caso use um asterisco [*] para designar o número do elemento do vetor local, o LocalIndex fornece o número do elemento. Para alterar o número do elemento, ajuste o membro para o valor solicitado. Se a mensagem:
Logo, o vetor remoto é:
lê os dados
Source element
escreve os dados
Destination element
Para especificar um código de acesso ou endereço diferentes no controlador para o qual a mensagem é enviada, ajuste este membro para o valor requisitado. Insira o código de acesso ou endereço como caracteres ASCII. Se a mensagem:
Logo, o vetor remoto é:
lê os dados
Source element
escreve os dados
Destination element
.UnconnnectedTimeout DINT
O tempo-limite para mensagens desconectadas. O valor padrão é 30 segundos.
.ConnectionRate
DINT
.TimeoutMultiplier
SINT
O ConnectionRate vezes o TimeoutMultiplier produz o tempo-limite para mensagens conectadas. • o ConnectionRate padrão é 7,5 segundos. • o TimeoutMultiplier padrão é 0 (que equivale a um fator de multiplicação por 4). • o tempo-limite padrão para as mensagens conectadas é 30 segundos (7,5 segundos x 4 = 30 segundos). • para alterar o tempo-limite, altere o ConnectionRate e deixe o TimeoutMultiplier no valor padrão.
Publicação 1756-QR107C-PT-P - Junho 2005
Estruturas de Dados
10 - 9
Estrutura RESULT Mnemônico:
Tipo de dados:
Descrição:
.DN
BOOL
O bit executado é energizado quando o vetor Result está cheio.
.LEN
DINT
O valor do comprimento identifica o número de locais de armazenamento no vetor Result.
.POS
DINT
O valor da posição identifica a posição atual no vetor Result.
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 10
Estruturas de Dados
Estrutura SERIAL_PORT_CONTROL Mnemônico:
Tipo de dados:
Descrição:
.EN
BOOL
O bit habilitado indica que a instrução está habilitada.
.EU
BOOL
O bit da fila indica que a instrução entrou na fila ASCII.
.DN
BOOL
O bit executado indica que a instrução está concluída, mas é assíncrono para a varredura da lógica.
RN
BOOL
O bit de operação indica que a instrução está executando.
.EM
BOOL
O bit vazio indica que a instrução está concluída, mas é síncrono para a varredura da lógica.
.ER
BOOL
O bit de erro indica quando a instrução falha (erros).
.FD
BOOL
O bit encontrado indica que a instrução encontrou o(s) caractere(s) de terminação.
.POS
DINT
A posição determina o número de caracteres no buffer até o primeiro conjunto de caracteres de terminação inclusive. A instrução somente retorna a este número depois de encontrar o(s) caractere(s) de terminação.
.ERROR.
DINT
O erro contém um valor hexadecimal que identifica a causa de um erro.
Publicação 1756-QR107C-PT-P - Junho 2005
Estruturas de Dados
10 - 11
Estrutura STRING Todo tipo de dados de grupo inclui estes membros: Nome:
Tipo de dados:
Descrição:
Notas:
LEN
DINT
número de caracteres no grupo
A LEN atualiza a nova contagem de caracteres automaticamente sempre que você: • usar a caixa de diálogo String Browser para inserir caracteres • usar as instruções que lêem, convertem ou manipulam um grupo LEN mostra o comprimento do grupo corrente. O membro DATA pode conter caracteres adicionais, antigos, que não estão incluídos na contagem de LEN.
DATA
vetor SINT
caracteres ASCII da string
Para acessar os caracteres do grupo, enderece o nome do código de acesso. Cada elemento do vetor DATA contém um caractere. Você pode criar novos tipos de dados de grupo que armazenem menos ou mais caracteres.
Armazene caracteres ASCII em códigos de acesso que usem um tipo de dados de grupo. • Você pode usar o tipo de dados STRING padrão. Ele armazena até 82 caracteres. • Você pode criar um novo tipo de dados de grupo que armazene menos ou mais caracteres. IMPORTANTE
Tenha cuidado ao criar um novo grupo de tipo de dados. Se, posteriormente, você decidir mudar o tamanho do tipo de dados do grupo, é possível que perca dados em qualquer código de acesso que atualmente usa aquele tipo de dados. Se você:
Então:
cria um grupo de tipo de dados menor
• Os dados estão truncados. • O LEN não é trocado.
cria um tipo de dados de grupo maior
Os dados e LEN são restaurados para zero.
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 12
Estruturas de Dados
Para criar um tipo de dados de grupo:
OU Use o tipo de dados STRING padrão. Ele armazena até 82 caracteres
Crie um novo tipo de dados de grupo para armazenar o número de caracteres que você define.
Se criar um novo tipo de dados de grupo, defina o número de caracteres no grupo.
Publicação 1756-QR107C-PT-P - Junho 2005
Estruturas de Dados
10 - 13
Estrutura TIMER Mnemônico:
Tipo de dados:
Descrição:
.EN
BOOL
O bit habilitado indica que a instrução está habilitada.
.TT
BOOL
O bit de temporização indica que uma operação de temporização está em execução
.DN
BOOL
O bit executado está energizado quando .ACC ≥ .PRE.
.PRE
DINT
O valor pré-selecionado especifica o valor acumulado (unidades de 1 ms) que se deve atingir para que a instrução energize o bit .DN.
.ACC
DINT
O valor acumulado especifica o número de milissegundos que transcorreram desde que a instrução foi habilitada.
Estrutura Definida pelo Usuário É possível criar suas próprias estruturas, chamadas tipo de dados definido pelo usuário. Um tipo de dados definidos pelo usuário agrupa tipos de dados diferentes em uma única entidade com nome. • • • •
Em um tipo de dados definidos pelo usuário, você define os membros. Como tags, os membros têm um nome e um tipo de dados. Você pode incluir vetores e estruturas. Uma vez que você criou um tipo de dados definido pelo usuário, tags podem ser criados usando aquele tipo de dados.
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 14
Estruturas de Dados
• Minimize o uso destes tipos de dados, pois eles, geralmente, aumentam as especificações de memória e o tempo de execução de sua lógica: – INT – SINT • Se você incluir membros que representam dispositivos de E/S, a lógica ladder deve ser usada para copiar os dados entre os membros na estrutura e os tags de E/S correspondentes. • Ao usar os tipos de dados BOOL, SINT ou INT, coloque os membros que usam o mesmo tipo de dados em seqüência: mais eficiente
menos eficiente
BOOL
BOOL
BOOL
DINT
BOOL
BOOL
DINT
DINT
DINT
BOOL
• Você pode usar vetores de dimensão única. • Você pode criar, editar e excluir tipos de dados definidos pelo usuário apenas quando estiver programando off-line. • Se você modificar o tipo de dados definidos pelo usuário e mudar seu tamanho, os valores existentes de qualquer tag que usam o tipo de dados são definidos como zero (0). • Para copiar dados para uma estrutura, use a instrução COP.
Publicação 1756-QR107C-PT-P - Junho 2005
Estruturas de Dados
10 - 15
Para criar um tipo de dados definidos pelo usuário:
Publicação 1756-QR107C-PT-P - Junho 2005
10 - 16
Estruturas de Dados
Notas:
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
ABL Teste ASCII para Linha de Buffer
Capítulo
11
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
ABL(Channel SerialPortControl);
A instrução ABL conta os caracteres no buffer até e, incluindo, o primeiro caractere de terminação
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Porta Serial Controle
SERIAL_PORT_ Control
tag
tag que controla a operação
Contagem de Caracteres
DINT
imediato
exibe o número de caracteres no buffer, incluindo o primeiro conjunto dos caracteres de terminação (somente lógica ladder).
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 2
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
ABS Valor absoluto
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := ABS(source);
A instrução ABS tira o valor absoluto de Source e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Source
SINT INT
DINT REAL
imediato tag
valor do qual se tira o valor absoluto
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag ABS
FBD_MATH_ ADVANCED
estrutura
estrutura ABS (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Source
REAL
valor do qual se tira o valor absoluto
Dest
REAL
resultado da instrução matemática
Conjunto de Instruções Instrução:
Lógica Ladder:
ACB Caracteres ASCII em Buffer
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
ACB(Channel SerialPortControl)
A instrução ACB conta os caracteres no buffer.
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Porta Serial Controle
SERIAL_PORT_ Control
tag
tag que controla a operação
Contagem de Caracteres
DINT
imediato
exibe o número de caracteres no buffer (somente lógica ladder)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
11 - 3
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 4
Conjunto de Instruções
Instrução:
Lógica Ladder:
ACL Limpar Buffer ASCII
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
ACL(Channel, ClearSerialPortRead, ClearSerialPortWrite);
A instrução ACL imediatamente limpa o buffer ASCII.
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Limpar Porta Serial Leitura
BOOL
imediato tag
para esvaziar o buffer e remover as instruções ARD e ARL da fila, insira Yes.
Desenergizar Porta Serial Escrita
BOOL
imediato tag
para remover as instruções AWA e AWT da fila, insira Yes.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
Bloco de Funções:
ACS Arco co-seno
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := ACOS(source);
A instrução ACS retira o arco co-seno do valor Source, em radianos, e armazena o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Source
SINT INT
DINT REAL
imediato tag
encontre o arco co-seno deste valor
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag ACS
FBD_MATH_ ADVANCED
estrutura
estrutura ACS (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
11 - 5
Parâmetro:
Tipo:
Descrição:
Source
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 6
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
ADD Adição
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := sourceA + sourceB;
A instrução ADD soma Source A e Source B e coloca o resultado em Destination
Operando:
Tipo:
Formato:
Descrição:
Source A
SINT INT
DINT REAL
imediato tag
valor a ser somado a Source B
Source B
SINT INT
DINT REAL
imediato tag
valor a ser adicionado a Source A
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag ADD
FBD_MATH
estrutura
estrutura ADD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
Valor para adicionar a SourceB
SourceB
REAL
valor para adicionar a SourceA
Dest
REAL
resultado da instrução matemática
Conjunto de Instruções Instrução:
Lógica Ladder:
AFI Sempre Falso
11 - 7
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução AFI energiza a sua saída da condição da linha como falsa.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 8
Conjunto de Instruções
Instrução:
Lógica Ladder:
AHL Linhas de Handshake ASCII
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
AHL(Channel,ANDMask, ORMask, SerialPortControl);
A instrução AHL obtém o status das linhas de controle e acende ou apaga os sinais DTR e RTS.
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Máscara AND
DINT
imediato tag
Máscara OR
DINT
imediato tag
Para energizar DTR:
E energizar RTS:
desligado
desligado
ligado
Valor ANDMask:
Valor ORMask:
3
0
Para energizar DTR:
E energizar RTS:
não mudado
desligado
1
2
ligado
0
2
0
não mudado
0
0
desligado
2
1
ligado
0
3
não mudado
0
1
tag que controla a operação
Status do Canal
DINT
imediato
exibe o status das linhas de controle (somente lógica ladder)
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Código 57
0
1
tag
Falhas Graves:
2
não mudado
SERIAL_PORT_ CONTROL
afetado
Valor ORMask:
ligado
Controle de Porta Serial
Flags de Status Aritmético:
Valor ANDMask:
Houve uma falha na execução da instrução AHL porque a porta serial não está ajustada para handshaking. Mude a configuração da Linha de Controle da porta serial ou remova a instrução AHL.
Conjunto de Instruções Instrução:
Lógica Ladder:
ALM ALARME
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
ALM(ALM_tag);
A instrução ALM fornece alarme para qualquer sinal analógico.
Operando:
Tipo:
Formato:
Descrição:
Tag ALM
ALARME
estrutura
estrutura ALM (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico
HHAlarm
BOOL
indicador de alarme alto-alto
HAlarm
BOOL
indicador de alarme alto
LAlarm
BOOL
indicador de alarme baixo
LLAlarm
BOOL
indicador de alarme baixo-baixo
ROCPosAlarm
BOOL
indicador de alarme da taxa de alteração positiva
ROCNegAlarm
BOOL
indicador de alarme da taxa de alteração negativa
11 - 9
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 10
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
AND AND orientado por bit
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := sourceA AND sourceB
A instrução AND realiza uma operação AND usando os bits em Source A e Source B e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Source A
SINT INT
DINT
imediato tag
valor para AND com Source B
Source B
SINT INT
DINT
imediato tag
valor para AND com Source A
Destination
SINT INT
DINT
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag AND
FBD_LOGICAL
estrutura
estrutura AND (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SourceA
DINT
valor para AND com Source B
SourceB
DINT
valor para AND com Source A
Dest
DINT
resultado da instrução
Conjunto de Instruções Instrução:
Lógica Ladder:
ARD Leitura ASCII
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
ARD(Channel, Destination, SerialPortControl);
A instrução ARD remove os caracteres do buffer e armazena-os em Destination.
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Destination
grupo SINT INT
tag
tag no qual os caracteres são movidos (leitura): • para um tipo de dados do grupo, insira o nome do tag. • para um vetor SINT, INT ou DINT, insira o primeiro elemento do vetor.
DINT
Porta Serial Controle
SERIAL_PORT_ Control
tag
tag que controla a operação
Porta Serial Comprimento de Controle
DINT
imediato
exibe o número de caracteres para mudar para Destination [Destino] (somente lógica ladder).
Caracteres Lidos
DINT
imediato
durante a execução, exibe o número de caracteres que foram lidos (somente lógica ladder)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
11 - 11
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 12
Conjunto de Instruções
Instrução:
Lógica Ladder:
ARL Linha de Leitura ASCII
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
ARL(Channel, Destination, SerialPortControl);
A instrução ARL remove os caracteres especificados do buffer e armazena-os em Destination.
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Destination
grupo SINT INT
tag
tag no qual os caracteres são movidos (leitura): • para um tipo de dados do grupo, insira o nome do tag. • para um vetor SINT, INT ou DINT, insira o primeiro elemento do vetor.
DINT
Porta Serial Controle
SERIAL_PORT_ Control
tag
tag que controla a operação
Comprimento de Controle de Porta Serial
DINT
imediato
exibe o número máximo de caracteres a serem lidos se não forem encontrados caracteres de terminação (somente lógica ladder)
Caracteres Lidos
DINT
imediato
durante a execução, exibe o número de caracteres que foram lidos (somente lógica ladder)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
Bloco de Funções:
ASN Arco seno
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := ASIN(source);
A instrução ASN calcula o arco seno de Source, em radianos, e armazena o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Source
SINT INT
DINT REAL
imediato tag
encontre o arco seno deste valor.
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag ASN
FBD_MATH_ ADVANCED
estrutura
estrutura ASN (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Parâmetro:
Tipo:
Descrição:
Source
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática
11 - 13
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 14
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
ATN arco tangente
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Source
SINT INT
Destination
SINT INT
Operando: Tag ATN
Texto Estruturado:
Descrição:
dest := ATAN(source);
A instrução ATN calcula o arco tangente de Source, em radianos, e armazena o resultado em Destination.
Formato:
Descrição:
DINT REAL
imediato tag
encontre o arco tangente deste valor.
DINT REAL
tag
tag para armazenar o resultado
Tipo:
Formato:
Descrição:
FBD_MATH_ ADVANCED
estrutura
estrutura ATN (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Source
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática
Conjunto de Instruções Instrução:
Lógica Ladder:
AVE Média
Operando:
Tipo:
Vetor
SINT INT
Dimensão a variar
DINT
Destination
SINT INT
Controle Comprimento Posição
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SIZE(vetor,0,length); sum := 0; FOR position = 0 TO length DO-1 sum := sum + vetor[position]; END_FOR; destination := sum / length;
A instrução AVE calcula a média de um conjunto de valores.
Formato:
Descrição:
tag do vetor
encontre a média dos valores neste vetor; especifique o primeiro elemento do grupo de elementos para a média não use CONTROL.POS no subscrito
imediato (0, 1, 2)
a dimensão a ser usada a ordem é: array[dim_0,dim_1,dim_2] depois array[dim_0,dim_1] depois array[dim_0]
tag
resultado da operação
Control
tag
estrutura de controle para a operação
DINT
imediato
número de elementos do vetor para a média
DINT
imediato
elemento atual no vetor; o valor inicial é normalmente 0
DINT REAL
DINT REAL
11 - 15
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 20
o operando Dimension to vary não existe para o vetor especificado
Tipo 4
Código 21
.POS < 0 ou .LEN < 0
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 16
Conjunto de Instruções
Instrução:
Lógica Ladder:
AWA Acrescentar Escrita ASCII
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
AWA(Channel,Source, SerialPortControl);
A instrução AWA envia um número específico de caracteres do tag Source para um dispositivo serial e anexa um ou dois caracteres predefinidos.
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Source
grupo SINT INT
tag
tag que contém os caracteres para enviar: • para um tipo de dados do grupo, insira o nome do tag. • para um vetor SINT, INT ou DINT, insira o primeiro elemento do vetor.
DINT
Porta Serial Controle
SERIAL_PORT_ Control
tag
tag que controla a operação
Comprimento de Controle de Porta Serial
DINT
imediato
exibe o número de caracteres a serem enviados (somente lógica ladder)
Caracteres a enviar
DINT
imediato
exibe o número de caracteres que foram enviados (somente lógica ladder)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
AWT Escrita ASCII
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
AWT(Channel, Source, SerialPortControl);
A instrução AWT envia um número específico de caracteres do tag Source para um dispositivo serial.
Operando:
Tipo:
Formato:
Descrição:
Canal
DINT
imediato tag
0
Source
SINT INT
tag
tag que contém os caracteres para enviar: • para um tipo de dados do grupo, insira o nome do tag. • para um vetor SINT, INT ou DINT, insira o primeiro elemento do vetor.
Porta Serial Controle
SERIAL_PORT_ Control
tag
tag que controla a operação
Comprimento de Controle de Porta Serial
DINT
imediato
número de caracteres a serem enviados (somente lógica ladder)
Caracteres a enviar
DINT
imediato
exibe o número de caracteres que foram enviados (somente lógica ladder)
DINT grupo
11 - 17
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 18
Conjunto de Instruções
Instrução:
Lógica Ladder:
BAND E booleano
Veja AND
Bloco de Funções:
Texto Estruturado:
Descrição:
IF operandA AND operandB THEN ; END_IF;
A instrução BAND utiliza de forma lógica até 8 entradas booleanas.
Operando:
Tipo:
Formato:
Descrição:
Tag BAND
FBD_BOOLEAN_ AND
estrutura
estrutura BAND (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Inx
BOOL
entrada booleana, onde x = 1-8
Out
BOOL
resultado da instrução
Conjunto de Instruções Instrução:
Lógica Ladder:
BNOT NÃO booleano
Veja NOT
Bloco de Funções:
Texto Estruturado:
Descrição:
IF NOT operand THEN ; END_IF;
A instrução BNOT complementa uma entrada booleana.
Operando:
Tipo:
Formato:
Descrição:
Tag BNOT
FBD_BOOLEAN_B NOT
estrutura
estrutura BNOT (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
11 - 19
Parâmetro:
Tipo:
Descrição:
In
BOOL
entrada booleana;
Out
BOOL
resultado da instrução
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 20
Conjunto de Instruções
Instrução:
Lógica Ladder:
BOR OU booleano
Veja OR
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
IF operandA OR operandB THEN ; END_IF;
A instrução BOR possui oito entradas lógicas ORs booleanas possíveis.
Operando:
Tipo:
Formato:
Descrição:
Tag BOR
FBD_BOOLEAN_ OR
estrutura
estrutura BOR (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
Inx
BOOL
entrada booleana, onde x = 1-8
Out
BOOL
resultado da instrução
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
EXIT;
A instrução BRK interrompe a execução de uma rotina que foi chamada por uma instrução FOR.
BRK Interrupção Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
BSL Deslocar bits para a esquerda
11 - 21
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução BSL desloca os bits especificados dentro do vetor uma posição para a esquerda.
Operando:
Tipo:
Formato:
Descrição:
Vetor
DINT
tag do vetor
vetor a modificar; especifique o primeiro elemento do grupo de elementos não use CONTROL.POS no subscrito
Controle
CONTROL
tag
estrutura de controle para a operação
Source bit
BOOL
tag
bit a ser deslocado
Comprimento
DINT
imediato
número de bits do vetor a ser deslocado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 22
Conjunto de Instruções
Instrução:
Lógica Ladder:
BSL Deslocar bits para a direita
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução BSR desloca os bits especificados dentro do vetor uma posição para a direita.
Operando:
Tipo:
Formato:
Descrição:
Vetor
DINT
tag do vetor
vetor a modificar; especifique o primeiro elemento do grupo de elementos não use CONTROL.POS no subscrito
Controle
CONTROL
tag
estrutura de controle para a operação
Source bit
BOOL
tag
bit a ser deslocado
Comprimento
DINT
imediato
número de bits do vetor a ser deslocado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
BTD Distribuir Campo de bits
Operando:
Tipo:
Source
SINT INT
Bit de origem
DINT
Destination
SINT INT
Bit de destino Comprimento
Bloco de Funções:
Texto Estruturado:
Descrição:
Veja BTDT
Veja BTDT
A instrução BTD copia os bits especificados de Source, muda os bits para a posição adequada e escreve os bits em Destination.
Formato:
Descrição:
imediato tag
tag que contém os bits a serem movimentados
imediato
número do bit (número do bit menos significativo) a partir do qual iniciar a movimentação deve estar dentro da faixa de tipo de dados Source válidos (0-31 DINT, 0-15 INT, 0-7 SINT)
imediato tag
tag para onde os bits serão movidos
DINT
imediato
o número do bit (número do bit menos significativo) em que se inicia a cópia de bits Source deve estar dentro da faixa de tipo de dados Destination válidos (0-31 DINT, 0-15 INT, 0-7 SINT)
DINT
tag
número de bits a movimentar (1-32)
DINT
DINT
11 - 23
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 24
Conjunto de Instruções
Instrução:
Lógica Ladder:
BTDT Distribuir Campo de Bits com Destino
veja BTD
Bloco de Funções:
Texto Estruturado:
Descrição:
BTDT(BTDT_tag);
A instrução BTDT primeiro copia Target para Destination. Em seguida, copia os bits específicos de Source, muda os bits para a posição apropriada e os escreve os bits em Destination. Target e Source se mantêm inalterados.
Operando:
Tipo:
Formato:
Descrição:
Tag BTDT
FBD_BIT_FIELD_ DISTRIBUTE
estrutura
estrutura BTDT (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Source
DINT
valor de entrada que contenha os bits a serem movidos para Destination
SourceBit
DINT
a posição do bit em Source (menor número de bit a partir do qual se inicia a movimentação)
Comprimento
DINT
número de bits a movimentar (1-32)
DestBit
DINT
a posição do bit em Dest (menor número para iniciar a cópia dos bits)
Target
DINT
valor de entrada para movimentar para Dest antes de movimentar bits de Source
Dest
DINT
resultado da operação de movimentação do bit
Conjunto de Instruções Instrução:
Lógica Ladder:
BXOR OU Exclusivo Booleano
Veja XOR
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
IF operandA XOR operandB THEN ; END_IF;
Uma instrução BXOR realiza um OR exclusivo em duas entradas booleanas.
Operando:
Tipo:
Formato:
Descrição:
Tag BXOR
FBD_BOOLEAN_X OR
estrutura
estrutura BXOR (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
In1
BOOL
entrada booleana;
In2
BOOL
entrada booleana;
Out
BOOL
resultado da instrução
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
dest := 0;
A instrução CLR zera todos os bits Destination.
CLR Limpar Operando:
Tipo:
Destination
SINT INT
DINT REAL
Formato:
Descrição:
tag
tag a ser zerado
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
11 - 25
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 26
Conjunto de Instruções
Instrução:
Lógica Ladder:
CMP Comparar
Instrução:
Operando:
Tipo:
Expressão
SINT INT DINT
REAL grupo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
IF BOOL_expression THEN ; END_IF;
A instrução CMP compara as operações aritméticas especificadas na expressão.
Formato:
Descrição:
imediato tag
uma expressão composta por tags e/ou valores imediatos separados por operadores
Flags de Status Aritmético:
Falhas Graves:
afetado se as expressões usarem valores que afetem os flags de status aritmético
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
CONCAT(SourceA,SourceB, Dest);
A instrução CONCAT adiciona caracteres ASCII ao final de um grupo.
CONCAT Concatenar grupos
Operando:
Tipo:
Formato:
Descrição:
Source A
grupo
tag
tag que contém os caracteres iniciais
Source B
grupo
tag
tag que contém os caracteres finais
Destination
grupo
tag
tag para armazenar o resultado
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Código 51
O valor LEN do tag do grupo é maior que o tamanho de DATA do tag do grupo. Verifique se nenhuma instrução está escrevendo para o membro LEN do tag do grupo e se no valor LEN foi inserido o número de caracteres contidos no grupo.
Conjunto de Instruções Instrução:
Lógica Ladder:
COP Copiar Arquivo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
COP(Source,Dest Length);
A instrução COP copia o(s) valor(es) em Source para Destination. Source permanece inalterado.
11 - 27
Os dados podem mudar durante a operação de cópia Operando:
Tipo:
Formato:
Descrição:
Source
SINT INT DINT
REAL grupo structure
tag
elemento inicial para cópia os operandos Source e Destination devem ter o mesmo tipo de dados ou podem ocorrer resultados inesperados
Destination
SINT INT DINT
REAL grupo structure
tag
elemento inicial a ser sobrescrito por Source os operandos Source e Destination devem ter o mesmo tipo de dados ou podem ocorrer resultados inesperados
Comprimento
DINT
imediato tag
número de elementos em Destination a serem copiados
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 28
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
COS Co-seno
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := COS(source);
A instrução COS calcula o co-seno de Source, em radianos, e armazena o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Source
SINT INT
DINT REAL
imediato tag
encontra o co-seno deste valor.
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag COS
FBD_MATH_ ADVANCED
estrutura
estrutura COS (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Source
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática
Conjunto de Instruções Instrução:
Lógica Ladder:
CPS Copiar Arquivo Sincronizado
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
CPS(Source,Dest Length);
A instrução CPS copia o(s) valor(es) em Source para Destination. Source permanece inalterado.
11 - 29
Os dados não podem mudar durante a operação de cópia Operando:
Tipo:
Source
SINT INT DINT
Destination
SINT INT DINT
Comprimento
DINT
Formato:
Descrição:
REAL grupo structure
tag
elemento inicial para cópia os operandos Source e Destination devem ter o mesmo tipo de dados ou podem ocorrer resultados inesperados
REAL grupo structure
tag
elemento inicial a ser sobrescrito por Source os operandos Source e Destination devem ter o mesmo tipo de dados ou podem ocorrer resultados inesperados
imediato tag
número de elementos em Destination a serem copiados
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 30
Conjunto de Instruções
Instrução:
Lógica Ladder:
CPT Calcular
Instrução:
Operando:
Tipo:
Destination
SINT INT
Expressão
SINT INT
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
destination := numeric_expresion;
A instrução CPT realiza as operações aritméticas definidas na expressão.
Formato:
Descrição:
DINT REAL
imediato tag
tag para armazenar o resultado
DINT REAL
imediato tag
uma expressão composta por tags e/ou valores imediatos separados por operadores
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
veja CTUD
veja CTUD
A instrução CTD conta de forma decrescente.
CTD Contador Decrescente Operando:
Tipo:
Formato:
Descrição:
Contador
COUNTER
tag
estrutura do contador
Pré-selecionado
DINT
imediato
até onde contar
Acumulado
DINT
imediato
número de vezes que o contador contou; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
CTU Contador Crescente
Bloco de Funções:
Texto Estruturado:
Descrição:
veja CTUD
veja CTUD
A instrução CTU conta de forma crescente.
Operando:
Tipo:
Formato:
Descrição:
Contador
COUNTER
tag
estrutura do contador
Pré-selecionado
DINT
imediato
até quanto contar
Acumulado
DINT
imediato
número de vezes que o contador contou; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
11 - 31
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 32
Conjunto de Instruções
Instrução:
Lógica Ladder:
CTUD Contagem Cresc./Decres c. de um em um
Veja CTU e CTD
Bloco de Funções:
Texto Estruturado:
Descrição:
CTUD(CTUD_tag);
A instrução CTUD conta de forma crescente de um em um quando as transições CUEnable passa de desenergizado para energizado. A instrução CTUD conta de forma decrescente de um em um quando CDEnable muda de desenergizado para energizado.
Operando:
Tipo:
Formato:
Descrição:
Tag CTUD
FBD_COUNTER
estrutura
estrutura CTUD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
CUEnable
BOOL
habilita contagem crescente Quando a entrada passa de desenergizado para energizado, o acumulador conta de forma crescente de um em um.
CDEnable
BOOL
habilita contagem decrescente Quando a entrada passa de desenergizado para energizado, o acumulador conta de forma decrescente de um em um.
PRE
DINT
valor de preset do contador
Reset
BOOL
solicitação para restaurar o temporizador
ACC
DINT
valor acumulado
DN
BOOL
contagem executada
Conjunto de Instruções Instrução:
Lógica Ladder:
D2SD Dispositivo Discreto de 2 Estados
não disponível
Bloco de Funções:
11 - 33
Texto Estruturado:
Descrição:
D2SD(D2SD_tag);
A instrução D2SD controla o dispositivo discreto que possui dois estados possíveis como ligado/desligado, aberto/fechado, etc.
Operando:
Tipo:
Formato:
Descrição:
Tag D2SD
DISCRETE_ 2STATE
estrutura
estrutura D2SD (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
ProgCommand
BOOL
programa o comando de estado
StatexPerm
BOOL
estado x permitido, onde x = 0 ou 1 a menos que esteja nos modos Manual ou Sobrescrever, esta entrada deve ser ajustada para o dispositivo entrar no estado
FBx
BOOL
entrada de realimentação, onde x = 0 ou 1
HandFB
BOOL
entrada de realimentação manual quando ajustado, o dispositivo de campo está sendo solicitado a entrar no estado 1; quando limpo, o dispositivo de campo está sendo solicitado a entrar no estado 0
ProgProgReq
BOOL
solicitado pelo programa
ProgOperReq
BOOL
solicitado pelo operador do programa
ProgOverrideReq
BOOL
solicitação de supressão do programa
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 34
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
D2SD Dispositivo Discreto de 2 Estados (continuação)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
Parâmetro:
Tipo:
Descrição:
ProgHandReq
BOOL
solicitado pelo programa manual
Out
BOOL
saída da instrução
DevicexState
BOOL
dispositivo x saída do estado, onde x = 0 ou 1
CommandStatus
BOOL
saída do status do comando
FaultAlarm
BOOL
saída do alarme de falha
ModeAlarm
BOOL
saída do alarme de modo
ProgOper
BOOL
indicador de controle de programação/operação
Override
BOOL
indicador de modo supressão
Hand
BOOL
indicador de modo manual
Conjunto de Instruções Instrução:
Lógica Ladder:
D3SD Dispositivo Discreto de 3 Estados
não disponível
Bloco de Funções:
11 - 35
Texto Estruturado:
Descrição:
D3SD(D3SD_tag);
A instrução D3SD controla um dispositivo discreto com três estados possíveis como rápido/lento/desligado, continuar/parar/reverso, etc.
Operando:
Tipo:
Formato:
Descrição:
Tag D3SD
DISCRETE_ 3STATE
estrutura
estrutura D3SD (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
ProgxCommand
BOOL
estado do programa x comando, onde x = 0, 1 ou 2
StatexPerm
BOOL
estado x permitido, onde x = 0, 1 ou 2 a menos que esteja nos modos Manual ou Sobrescrever, esta entrada deve ser ajustada para o dispositivo entrar no estado
FBx
BOOL
entrada de realimentação; onde x = 0,1, 2 ou 3
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 36
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
D3SD Dispositivo Discreto de 3 Estados
Texto Estruturado: Tipo:
Descrição:
HandFBx
BOOL
entrada de realimentação manual, onde x = 0, 1 ou 2 quando ajustado, o dispositivo de campo está sendo solicitado a entrar no estado 1; quando limpo, o dispositivo de campo está sendo solicitado a entrar em outro estado
ProgProgReq
BOOL
solicitado pelo programa
ProgOperReq
BOOL
solicitado pelo operador do programa
ProgOverrideReq
BOOL
solicitação de supressão do programa
ProgHandReq
BOOL
solicitado pelo programa manual
Outx
BOOL
saída da instrução, onde x = 0, 1, ou 2
DevicexState
BOOL
dispositivo x saída do estado, onde x = 0, 1 ou 2
CommandxStatus
BOOL
saída do status do comando, onde x = 0, 1 ou 2
FaultAlarm
BOOL
saída do alarme de falha
ModeAlarm
BOOL
saída do alarme de modo
ProgOper
BOOL
indicador de controle de programação/operação
Override
BOOL
indicador de modo supressão
Hand
BOOL
indicador de modo manual
(continuação)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Descrição:
Parâmetro:
Conjunto de Instruções Instrução:
Lógica Ladder:
DDT Detecção de Diagnóstico
11 - 37
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução DDT compara os bits em um vetor Source aos bits em um vetor Reference para determinar as mudanças de estado.
Operando:
Tipo:
Formato:
Descrição:
Source
DINT
tag do vetor
vetor a comparar com a referência; não use CONTROL.POS no subscrito
Reference
DINT
tag do vetor
vetor a comparar com a origem; não use CONTROL.POS no subscrito
Resultado
DINT
tag do vetor
vetor a armazenar com os resultados; não use CONTROL.POS no subscrito
Controle de Comp.
Control
estrutura
estrutura de controle para a comparação
Comprimento
DINT
imediato
número de bits a ser comparado
Posição
DINT
imediato
posição atual na origem; o valor inicial é normalmente 0
Controle de resultado
Control
estrutura
estrutura de controle para os resultados
Comprimento
DINT
imediato
número de locais de armazenamento no resultado
Posição
DINT
imediato
posição atual no resultado; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 20
Result.POS > que o tamanho do vetor Result
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 38
Conjunto de Instruções
Instrução:
Lógica Ladder:
DEDT Tempo de Parada
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
DEDT(DEDT_tag,storage);
A instrução DEDT desempenha um atraso de uma única entrada Você seleciona a quantidade de atraso de tempo de parada
Operando:
Tipo:
Formato:
Descrição:
Tag DEDT
Deadtime
estrutura
estrutura DEDT (parâmetros padrão):
storage
REAL
vetor
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
buffer de tempo de parada
Conjunto de Instruções Instrução:
Lógica Ladder:
Bloco de Funções:
DEG Graus
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Source
SINT INT
Destination
SINT INT
Operando: Tag DEG
Texto Estruturado:
Descrição:
dest := DEG(source);
A instrução DEG converte Source, em radianos, em graus e armazena o resultado em Destination.
Formato:
Descrição:
DINT REAL
imediato tag
valor a ser convertido em graus
DINT REAL
tag
tag para armazenar o resultado
Tipo:
Formato:
Descrição:
FBD_MATH_ ADVANCED
estrutura
estrutura DEG (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
11 - 39
Parâmetro:
Tipo:
Descrição:
Source
REAL
entrada para a instrução de conversão
Dest
REAL
resultado da instrução de conversão
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 40
Conjunto de Instruções
Instrução:
Lógica Ladder:
DELETE Exclusão de grupo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
DELETE(Source,Qty, Start,Dest);
A instrução DELETE remove os caracteres ASCII de um grupo.
Operando:
Tipo:
Formato:
Descrição:
Source
grupo
tag
o tag que contém o grupo do qual você quer excluir caracteres
Quantidade
SINT INT
DINT
imediato tag
número de caracteres a excluir; Start e Quantity devem ser inferiores ou iguais ao tamanho de DATA de Source
Início
SINT INT
DINT
imediato tag
posição do primeiro caractere a excluir; digite um número entre 1 e o tamanho de DATA de Source
Destination
grupo
tag
tag para armazenar o resultado
Flags de Status Aritmético:
Falhas Graves:
não afetados
4
51
O valor LEN do tag do grupo é maior que o tamanho de DATA do tag do grupo. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag do grupo. • se você inseriu o número de caracteres que o grupo contém no valor de LEN.
4
56
O valor de Start ou Quantity é inválido. Verifique se: • o valor de Start está entre 1 e o tamanho de DATA de Source. • o valor de Start mais o valor de Quantity é menor ou igual ao tamanho de DATA de Source.
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
DERV Derivativo
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
DERV(DERV_tag);
A instrução DERV calcula a quantidade de mudança de um sinal em relação ao tempo em unidades por segundo
Operando:
Tipo:
Formato:
Descrição:
Tag DERV
Derivative
estrutura
estrutura DERV (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
11 - 41
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada para a instrução
ByPass
BOOL
solicitação de ignorar o algoritmo; quando ajustado, a instrução ajusta Out = In
Out
REAL
saída calculada do algorítmo
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 42
Conjunto de Instruções
Instrução:
Lógica Ladder:
DFF D FLip-Flop
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
DFF(DFF_tag);
A instrução DFF energiza a saída Q para o estado da entrada D em uma transição liberada para energizar a entrada Clock. A saída QNot é energizada para o estado oposto da saída Q.
Operando:
Tipo:
Formato:
Descrição:
Tag DFF
FLIP_FLOP_D
estrutura
estrutura DFF (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
D
BOOL
entrada para a instrução
Clear
BOOL
limpar entrada à instrução; se ajustado, a instrução limpa Q e ajusta QNot
Clock
BOOL
entrada Clock para a instrução
Q
BOOL
saída da instrução
QNot
BOOL
complemento da saída Q
Conjunto de Instruções Instrução:
Lógica Ladder:
Bloco de Funções:
DIV Dividir
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := sourceA / sourceB;
A instrução DIV divide Source A por Source B e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Source A
SINT INT
DINT REAL
imediato tag
valor do dividendo
Source B
SINT INT
DINT REAL
imediato tag
valor do divisor
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag DIV
FBD_MATH
estrutura
estrutura DIV (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
11 - 43
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor do dividendo
SourceB
REAL
valor do divisor
Dest
REAL
resultado da instrução matemática
Código 4
o divisor é 0.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 44
Conjunto de Instruções
Instrução:
Lógica Ladder:
DTOS DINT para grupo Operando:
Tipo:
Source
SINT INT
Destination
grupo
DINT REAL
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
DTOS(Source,Dest);
A instrução DTOS produz a representação ASCII de um valor.
Formato:
Descrição:
tag
tag que contém o valor; se Source é um REAL, a instrução o converte em um valor DINT
tag
tag para armazenar o valor ASCII
Flags de Status Aritmético:
Falhas Graves:
não afetados
4
51
O valor LEN do tag do grupo é maior que o tamanho de DATA do tag do grupo. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag do grupo. • se você inseriu o número de caracteres que o grupo contém no valor de LEN.
4
52
O grupo de saída é maior que o destino. Crie um tipo de dados novo que seja grande o bastante para o grupo de saída. Use o novo tipo de dados grupo como o tipo de dados de destino.
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
DTR Dados de Transição
Instrução:
11 - 45
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução DTR passa o valor de Source através de Mask e compara o resultado ao valor de Reference.
Operando:
Tipo:
Formato:
Descrição:
Source
DINT
imediato tag
vetor para comparar com a referência
Mask
DINT
imediato tag
quais bits bloquear ou passar
Reference
DINT
tag
vetor para comparar com a fonte
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
EOT(data_bit);
A instrução EOT retorna um estado booleano para uma transição SFC.
EOT Fim de Transição Operando:
Tipo:
Formato:
Descrição:
bit de dados
BOOL
tag
estado da transição (0=em execução, 1=concluído)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 46
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
EQU Igual a
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
IF sourceA = sourceB THEN ;
A instrução EQU testa se Source A é igual a Source B.
Operando:
Tipo:
Formato:
Descrição:
Source A
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source B
Source B
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source A
Operando:
Tipo:
Formato:
Descrição:
Tag EQU
FBD_COMPARE
estrutura
estrutura EQU (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor a ser testado em relação a SourceB
SourceB
REAL
valor a ser testado em relação a SourceA
Dest
BOOL
resultado da instrução
Conjunto de Instruções Instrução:
Lógica Ladder:
ESEL Seleção Aperfeiçoada
não disponível
Bloco de Funções:
11 - 47
Texto Estruturado:
Descrição:
ESEL(ESEL_tag);
A instrução ESEL permite selecionar uma de seis entradas. As opções de seleção incluem: • seleção manual (pelo operador ou pelo programa) • alta seleção • baixa seleção • seleção mediana • seleção média (meio)
Operando:
Tipo:
Formato:
Descrição:
Tag ESEL
SELECT_ ENHANCED
estrutura
estrutura ESEL (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
Inx
REAL
entradas de sinal analógico para a instrução, onde x = 1-6
ProgSelector
DINT
entrada seletora de programa
ProgProgReq
BOOL
solicitado pelo programa
ProgOperReq
BOOL
solicitado pelo operador do programa
ProgOverrideReq
BOOL
solicitação de supressão do programa
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 48
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
ESEL Seleção Aperfeiçoada (continuação)
Instrução:
Texto Estruturado:
Descrição:
Parâmetro:
Tipo:
Descrição:
Out
REAL
saída calculada do algorítmo
SelectedIn
DINT
número de entradas selecionado; se o modo de seletora for seleção da média, a instrução ajustará SelectedIn = 0
ProgOper
BOOL
indicador de programa/operador; ajustado quando em controle de Programa; limpo quando em controle de Operador
Override
BOOL
modo override; ajustado quando a instrução está em modo Override
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
EVENT(Task);
A instrução EVENT dispara uma execução de tarefa por evento
EVENT Disparador de tarefa por evento Operando:
Tipo:
Formato:
Descrição:
Tarefa
na
nome da tarefa
tarefa por evento a ser executada
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
FAL Aritmética e Lógica de Arquivo
11 - 49
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SIZE(destination,0 length-1); FOR position = 0 TO length DO destination[position] := numeric_expression END_FOR;
A instrução FAL realiza as operações de cópia, aritmética, lógica e função nos dados armazenados em um vetor.
Operando:
Tipo:
Formato:
Descrição:
Controle
Control
tag
estrutura de controle para a operação
Comprimento
DINT
imediato
número de elementos no vetor a serem manipulados
Posição
DINT
imediato
elemento atual no vetor; o valor inicial é normalmente 0
Modo
DINT
imediato
como distribuir a operação; selecione INC, ALL ou digite um número
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Expressão
SINT INT
DINT REAL
imediato tag
uma expressão composta por tags e/ou valores imediatos separados por operadores
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Código 20
subscrito está fora da faixa
Tipo 4
Código 21
.POS < 0 ou .LEN < 0
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 50
Conjunto de Instruções
Instrução:
Lógica Ladder:
FBC Comparação de Bits em Arquivo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução FBC compara os bits em um vetor Source ao vetor Reference.
Operando:
Tipo:
Formato:
Descrição:
Source
DINT
tag do vetor
vetor a comparar com a referência; não use CONTROL.POS no subscrito
Reference
DINT
tag do vetor
vetor a comparar com a origem; não use CONTROL.POS no subscrito
Resultado
DINT
tag do vetor
vetor para armazenar o resultado; não use CONTROL.POS nos subscritos
Controle de Comp.
Control
estrutura
estrutura de controle para a comparação
Comprimento
DINT
imediato
número de bits a ser comparado
Posição
DINT
imediato
posição atual na origem; o valor inicial é normalmente 0
Controle de resultado
Control
estrutura
estrutura de controle para os resultados
Comprimento
DINT
imediato
número de locais de armazenamento no resultado
Posição
DINT
imediato
posição atual no resultado normalmente, o valor inicial é 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Código 20
Result.POS > que o tamanho do vetor Result
Conjunto de Instruções Instrução:
Lógica Ladder:
FFL Carregar FIFO
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução FFL copia o valor Source para FIFO.
Operando:
Tipo:
Formato:
Descrição:
Source
SINT DINT INT REAL grupo estrutura
imediato tag
dados a serem armazenados em FIFO
FIFO
SINT DINT INT REAL grupo estrutura
tag do vetor
FIFO a modificar; especifique o primeiro elemento do FIFO não use CONTROL.POS no subscrito
Controle
Control
tag
estrutura de controle para a operação; use normalmente o mesmo CONTROL que o FFU associado
Comprimento
DINT
imediato
número máximo de elementos que LIFO pode controlar de uma vez
Posição
DINT
imediato
próximo local no FIFO onde a instrução carrega dados; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 20
11 - 51
(elemento de início + .POS) > tamanho do vetor de FIFO
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 52
Conjunto de Instruções
Instrução:
Lógica Ladder:
FFU Descarregar FIFO
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução FFU descarrega o valor da posição 0 (primeira posição) de FIFO e armazena esse valor em Destination. Os dados restantes em FIFO se deslocam uma posição para baixo.
Operando:
Tipo:
Formato:
Descrição:
FIFO
SINT DINT INT REAL grupo estrutura
tag do vetor
FIFO a modificar; especifique o primeiro elemento do FIFO não use CONTROL.POS no subscrito
Destination
SINT DINT INT REAL grupo estrutura
tag
valor que saiu de FIFO
Controle
Control
tag
estrutura de controle para a operação; use normalmente o mesmo CONTROL que o FFL associado
Comprimento
DINT
imediato
número máximo de elementos que LIFO pode controlar de uma vez
Posição
DINT
imediato
próximo local no FIFO onde a instrução descarrega dados; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Código 20
Length > FIFO tamanho do vetor
Conjunto de Instruções Instrução:
Lógica Ladder:
FGEN Gerador de Função
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
FGEN(FGEN_tag,X1,Y1,X2,Y2);
A instrução FGEN converte uma entrada com base em uma função linear inteligente.
Operando:
Tipo:
Formato:
Descrição:
Tag FGEN
FUNCTION_ GENERATOR
estrutura
estrutura FGEN (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
X1
REAL
vetor
vetor eixo X, tabela um combina com o vetor do eixo Y, tabela um para definir os pontos da primeira curva linear inteligente
Y1
REAL
vetor
vetor eixo Y, tabela um combina com o vetor do eixo X, tabela um para definir os pontos da primeira curva linear inteligente
X2
REAL
vetor
(opcional) vetor do eixo X, tabela dois combine com o vetor do eixo Y, tabela dois para definir os pontos da segunda curva linear inteligente
Y2
REAL
vetor
(opcional) vetor do eixo Y, tabela dois combine com o vetor do eixo X, tabela dois para definir os pontos da segunda curva linear inteligente
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
11 - 53
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 54
Conjunto de Instruções
Instrução:
Lógica Ladder:
FIND Localizar grupo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
FIND(Source,Search, Start,Result);
A instrução FIND localiza a posição inicial de um grupo específica dentro de outro grupo
Operando:
Tipo:
Formato:
Descrição:
Source
grupo
tag
grupo a ser procurado
Procurar
grupo
tag
grupo a ser encontrada
Início
SINT INT
DINT
imediato tag
posição em Source para iniciar a procura; digite um número entre 1 e o tamanho de DATA de Source.
Resultado
SINT INT
DINT
tag
tag que armazena a posição inicial do grupo a ser encontrada
Flags de Status Aritmético:
Falhas Graves:
não afetados
4
51
O valor LEN do tag do grupo é maior que o tamanho de DATA do tag do grupo. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag do grupo. • se você inseriu o número de caracteres que o grupo contém no valor de LEN.
4
56
O valor de Start é inválido. Verifique se o valor de Start está entre 1 e o tamanho de DATA de Source.
Publicação 1756-QR107C-PT-P - Junho 2005
Conjunto de Instruções Instrução:
Lógica Ladder:
FLL Preencher Arquivo
Operando:
Tipo:
Source
SINT INT
Destination
Comprimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SIZE(destination,0 length); FOR position = 0 TO length DO-1 destination[position] := source; END_FOR;
A instrução FLL preenche os elementos de um vetor com o valor Source. Source permanece inalterado.
Formato:
Descrição:
imediato tag
elemento para cópia os operandos Source e Destination devem ter o mesmo tipo de dados ou podem ocorrer resultados inesperados
SINT DINT INT REAL estrutura
tag
elemento inicial a ser sobrescrito por Source os operandos Source e Destination devem ter o mesmo tipo de dados ou podem ocorrer resultados inesperados o melhor jeito para inicializar uma estrutura é usar a instrução COP.
DINT
imediato
número de elementos a serem preenchidos
DINT REAL
11 - 55
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 56 Instrução:
Conjunto de Instruções Lógica Ladder:
FOR: FOR:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
FOR count := initial_value TO final_value BY increment DO ; END_FOR;
A instrução FOR executa repetidamente uma sub-rotina.
Operando:
Tipo:
Formato:
Descrição:
Nome de rotina
ROUTINE
routine name
rotina a ser executada
Índice
DINT
tag
conta quantas vezes a rotina foi executada
Valor inicial
SINT INT
DINT
imediato tag
valor em que se inicia o índice
Valor terminal
SINT INT
DINT
imediato tag
valor em que a execução da rotina pára
Tamanho da etapa
SINT INT
DINT
imediato tag
quantidade a ser acrescentada a Index cada vez que a instrução FOR executar a rotina
Flags de Status Aritmético:
Falhas Graves:
não afetados
4
Publicação 1756-QR107C-PT-P - Junho 2005
31
a rotina principal contém uma instrução RET
Conjunto de Instruções Instrução:
Lógica Ladder:
Bloco de Funções:
FRD Converter em Inteiro Lógica Ladder
Bloco de Funções
Texto Estruturado:
Descrição:
não disponível
A instrução FRD converte um valor BCD (Source) em um valor inteiro armazena o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Source
SINT INT
DINT
imediato tag
valor a ser convertido
Destination
SINT INT
DINT
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag FRD
FBD_CONVERT
estrutura
estrutura FRD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
11 - 57
Parâmetro:
Tipo:
Descrição:
Source
DINT
entrada para a instrução de conversão.
Dest
DINT
resultado da instrução matemática.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 58
Conjunto de Instruções
Instrução:
Lógica Ladder:
FSC Procurar e Comparar Arquivos
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução FSC compara valores em um vetor, elemento por elemento.
Operando:
Tipo:
Formato:
Descrição:
Controle
Control
tag
estrutura de controle para a operação
Comprimento
DINT
imediato
número de elementos no vetor a serem manipulados
Posição
DINT
imediato
offset no vetor; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
afetado
4
Publicação 1756-QR107C-PT-P - Junho 2005
21
.POS < 0 ou .LEN < 0
Conjunto de Instruções Instrução:
Lógica Ladder:
Bloco de Funções:
GEQ Maior que ou Igual a
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
IF sourceA >= sourceB THEN ;
A instrução GEQ testa se Source A é maior ou igual a Source B.
Operando:
Tipo:
Formato:
Descrição:
Source A
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source B
Source B
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source A
Operando:
Tipo:
Formato:
Descrição:
Tag GEQ
FBD_COMPARE
estrutura
estrutura GEQ (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor a ser testado em relação a SourceB
SourceB
REAL
valor a ser testado em relação a SourceA
Dest
BOOL
resultado da instrução
11 - 59
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 60
Conjunto de Instruções
Instrução:
Lógica Ladder:
Bloco de Funções:
GRT Maior que
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
IF sourceA > sourceB THEN ;
A instrução GRT testa se Source A é maior que Source B.
Operando:
Tipo:
Formato:
Descrição:
Source A
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source B
Source B
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source A
Operando:
Tipo:
Formato:
Descrição:
Tag GRT
FBD_COMPARE
estrutura
estrutura GRT (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor a ser testado em relação a SourceB
SourceB
REAL
valor a ser testado em relação a SourceA
Dest
BOOL
resultado da instrução
Conjunto de Instruções Instrução:
Lógica Ladder:
GSV Obter Valor do Sistema
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
GSV(ClassName, InstanceName, AttributeName,Dest);
As instruções GSV obtêm os dados do sistema do controlador que estão armazenados nos objetos.
Operando:
Tipo:
Formato:
Descrição:
Nome da classe
na
name
nome do objeto
Nome da instância
na
name
nome do objeto específico, quando o objeto requisitar um nome
Nome do atributo
na
name
atributo de um objeto; o tipo de dados depende do atributo selecionado
Destination
SINT INT
tag
destino para dados de atributo
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 5
Tipo 4
Código 6
Tipo 4
Código 7
11 - 61
endereço de objeto inválido • especificado um objeto que não suporta GSV/SSV • atributo inválido • informações suficientes não foram fornecidas para uma instrução SSV o destino GSV não era grande o suficiente para suportar os dados requisitados.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 62
Conjunto de Instruções
Instrução:
Lógica Ladder:
HLL Limite Alto/Baixo
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
HLL(HLL_tag);
A instrução HLL limita uma entrada analógica em dois valores. É possível selecionar limites alto/baixo, alto ou baixo.
Operando:
Tipo:
Formato:
Descrição:
Tag HLL
HL_LIMIT
estrutura
estrutura HLL (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
HighAlarm
BOOL
indicador de alarme alto, ajustado quando In ≥ HighLimit
LowAlarm
BOOL
indicador de alarme baixo, ajustado quando In ≤ LowLimit
11 - 63 Instrução:
Lógica Ladder:
HPF Filtro Passa Alta
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
HPF(HPF_tag);
A instrução HPF fornece um filtro para atenuar as freqüências de entrada que estejam abaixo da frequência de corte.
Operando:
Tipo:
Formato:
Descrição:
Tag HPF
FILTER_HIGH_ PASS
estrutura
estrutura HPF (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 64 Instrução:
Lógica Ladder:
INSERT Inserir grupo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
INSERT(SourceA,SourceB, Start,Dest);
A instrução INSERT adiciona caracteres ASCII a um local específico dentro de um grupo.
Operando:
Tipo:
Formato:
Descrição:
Origem A
grupo
tag
grupo ao qual adicionar os caracteres
Origem B
grupo
tag
grupo que contém os caracteres a serem adicionados
Início
SINT INT
imediato tag
posição em Source A para adicionar os caracteres; digite um número entre 1 e o tamanho de DATA de Source.
Resultado
grupo
tag
grupo para armazenar o resultado
DINT
Flags de Status Aritmético:
Falhas Graves:
não afetados
4
51
O valor LEN do tag do grupo é maior que o tamanho de DATA da tag do grupo. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag do grupo. • se você inseriu o número de caracteres que o grupo contém no valor de LEN.
4
56
O valor de Start é inválido. Verifique se o valor de Start está entre 1 e o tamanho de DATA de Source.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 65 Instrução:
Lógica Ladder:
INTG Integrador
não disponível
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
INTG(INTG_tag);
A instrução INTG implementa uma operação integral. Esta instrução é projetada para ser executada em uma tarefa onde a taxa de scan permanece constante.
Operando:
Tipo:
Formato:
Descrição:
Tag INTG
Integrator
estrutura
estrutura INTG (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
IOT(output_tag);
A instrução IOT atualiza imediatamente os dados de saída especificados (tag de saída ou tag produzido).
IOT Saída Imediata
Operando:
Tipo:
Formato:
Descrição:
Tag de saída
tag name
tag
o tag que deseja atualizar, um tag de saída de um módulo de E/S ou um tag produzido não selecione um membro ou elemento de um tag
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 66 Instrução:
Lógica Ladder:
JKFF Flip-Flop JK
não disponível
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
JKFF(JKFF_tag);
A instrução JKFF complementa as saídas Q e QNot quando a entrada Clock alterna de desenergizada para energizada.
Operando:
Tipo:
Formato:
Descrição:
Tag JKFF
FLIP_FLOP_JK
estrutura
estrutura JFKK (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
Clear
BOOL
limpar entrada à instrução; se ajustado, a instrução limpa Q e ajusta QNot
Clock
BOOL
entrada Clock para a instrução
Q
BOOL
saída da instrução
QNot
BOOL
complemento da saída Q
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
As instruções JMP e LBL ignoram as partes da lógica ladder.
JMP Salto Operando:
Tipo:
Formato:
Descrição:
Nome do label
na
name
nome da instrução LBL associada
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Código 42
label não existe
11 - 67 Instrução:
Lógica Ladder:
Bloco de Funções:
JSR Salto para Sub-rotina
Texto Estruturado:
Descrição:
JSR(RoutineName InputCount, InputPar,ReturnPar);
A instrução JSR salta a execução para uma rotina diferente.
Operando:
Tipo:
Formato:
Descrição:
Nome da rotina
ROUTINE
name
rotina a ser executada
Parâmetro de entrada
BOOL DINT SINT REAL INT estrutura
imediato tag tag do vetor
dados desta rotina que você quer copiar para um tag na sub-rotina • os parâmetros são opcionais • insira múltiplos parâmetros, se necessário
Parâmetro de retorno
BOOL DINT SINT REAL INT estrutura
tag tag do vetor
tag na rotina que você quer copiar um resultado da sub-rotina • os parâmetros são opcionais • insira múltiplos parâmetros, se necessário
Contagem de entrada
SINT INT
imediato
número de parâmetros de entrada (somente texto estruturado)
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
afetado
4
31
4
0
• a instrução JSR tem menos parâmetros de entrada do que a instrução SBR • a instrução RET tem menos parâmetros de retorno do que a instrução JSR • a rotina principal contém uma instrução RET a instrução JSR salta para a rotina de falha
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 68 Instrução:
Lógica Ladder:
JXR Salto para Rotina Externa
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução JXR executa uma rotina externa. Esta instrução é somente suportada pelos controladores SoftLogix5800.
Operando:
Tipo:
Formato:
Descrição:
Nome de rotina externa
ROUTINE
name
rotina externa a ser executada
Controle de rotina externa
EXT_ROUTINE_ CONTROL
tag
estrutura de controle
Parâmetro
BOOL DINT SINT REAL INT estrutura
imediato tag tag do vetor
dados desta rotina que você quer copiar para uma variável na rotina externa • os parâmetros são opcionais • insira múltiplos parâmetros, se necessário • é possível ter 10 parâmetros
Parâmetro de retorno
BOOL SINT INT
tag
tag nesta rotina que você quer copiar um resultado da rotina externa • o parâmetro de retorno é opcional. • você pode ter somente um parâmetro de retorno
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 69 Instrução:
Lógica Ladder:
LBL label
LDL2 Second;Order Lead Lag
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
As instruções JMP e LBL ignoram as partes da lógica ladder.
Operando:
Tipo:
Formato:
Descrição:
Nome do label
na
name
a execução salta para a instrução LBL quando o nome do label é citado
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 42
não disponível
label não existe A instrução LDL2 fornece um filtro com um par de pólos e um par zero. A freqüência e o amortecimento do pólo e dos pares de zeros são ajustáveis. O pólo ou os pares de zeros podem ser complexos (amortecendo menos do que a unidade) ou reais (amortecendo mais ou igual à unidade).
LDL2(LDL2_tag);
Operando:
Tipo:
Formato:
Descrição:
Tag LDL2
LEAD_LAG_SEC_ ORDER
estrutura
estrutura LDL2 (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 70 Instrução:
Lógica Ladder:
LDLG Lead Lag
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
LDLG(LDLG_tag);
A instrução LDLG fornece uma compensação de fase lead-lag para um sinal de entrada. Normalmente, esta instrução é usada para realimentar o controle do PID ou para simulações de processo.
Operando:
Tipo:
Formato:
Descrição:
Tag LDLG
LEAD_LAG
estrutura
estrutura LDLG (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
11 - 71 Instrução:
Lógica Ladder:
Bloco de Funções:
LEQ Menos que ou Igual a
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
IF sourceA <= sourceB THEN ;
A instrução LEQ testa se Source A é menor ou igual a Source B.
Operando:
Tipo:
Formato:
Descrição:
Origem A
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source B
Origem B
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source A
Operando:
Tipo:
Formato:
Descrição:
Tag LEQ
FBD_COMPARE
estrutura
estrutura LEQ (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor a ser testado em relação a SourceB
SourceB
REAL
valor a ser testado em relação a SourceA
Dest
BOOL
resultado da instrução
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 72 Instrução:
Lógica Ladder:
Bloco de Funções:
LES Menor que
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
IF sourceA < sourceB THEN ;
A instrução LES testa se Source A é menor que Source B.
Operando:
Tipo:
Formato:
Descrição:
Origem A
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source B
Origem B
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source A
Operando:
Tipo:
Formato:
Descrição:
Tag LES
FBD_COMPARE
estrutura
estrutura LES (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor a ser testado em relação a SourceB
SourceB
REAL
valor a ser testado em relação a SourceA
Dest
BOOL
resultado da instrução
11 - 73 Instrução:
Lógica Ladder:
LFL Carregar LIFO
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução LFL copia o valor Source para LIFO.
Operando:
Tipo:
Formato:
Descrição:
Origem
SINT DINT INT REAL grupo estrutura
imediato tag
dados a serem armazenados em LIFO
LIFO
SINT DINT INT REAL grupo estrutura
tag do vetor
LIFO a modificar; especifique o primeiro elemento do LIFO não use CONTROL.POS no subscrito
CONTROL
Control
tag
estrutura de controle para a operação; use normalmente o mesmo CONTROL que o LFU associado
Comprimento
DINT
imediato
número máximo de elementos que LIFO pode controlar de uma vez
Posição
DINT
imediato
próximo local no LIFO onde a instrução carrega dados; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 20
(elemento de início + .POS) > tamanho do vetor de LIFO
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 74 Instrução:
Lógica Ladder:
LFU Descarregar LIFO
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução LFU descarrega o valor em .POS de LIFO e armazena 0 naquele local.
Operando:
Tipo:
Formato:
Descrição:
LIFO
SINT DINT INT REAL grupo estrutura
tag do vetor
LIFO a modificar; especifique o primeiro elemento do LIFO não use CONTROL.POS no subscrito
Destino
SINT DINT INT REAL grupo estrutura
tag
valor que sai de LIFO
CONTROL
Control
tag
estrutura de controle para a operação; use normalmente o mesmo CONTROL que o LFL associado
Comprimento
DINT
imediato
número máximo de elementos que LIFO pode controlar de uma vez
Posição
DINT
imediato
próximo local no LIFO onde a instrução descarrega dados; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Código 20
Length > tamanho do vetor LIFO
11 - 75 Instrução:
Lógica Ladder:
Bloco de Funções:
LIM Limite
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Limite Baixo
SINT INT
Teste
Texto Estruturado:
Descrição:
IF (LowLimit <= HighLimit AND (Test >= LowLimit AND Test <= HighLimit)) OR (LowLimit >= HighLimit AND (Test <= LowLimit OR Test >= HighLimit)) THEN ; END_IF;
A instrução LIM testa se o valor de teste está dentro da faixa de Limite Inferior a Limite Superior.
Formato:
Descrição:
DINT REAL
imediato tag
valor do limite inferior
SINT INT
DINT REAL
imediato tag
valor de acordo com o teste
Limite Alto
SINT INT
DINT REAL
imediato tag
valor do limite superior
Operando:
Tipo:
Formato:
Descrição:
Tag LIM
FBD_LIMIT
estrutura
estrutura LIM (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Parâmetro:
Tipo:
Descrição:
LowLimit
REAL
valor do limite inferior
Teste
REAL
valor para comparar aos limites
HighLimit
REAL
valor do limite superior
Dest
BOOL
resultado da instrução
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 76 Instrução:
Lógica Ladder:
Bloco de Funções:
LN Logaritmo natural Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Origem
SINT INT
Destino
SINT INT
Operando: Tag LN
Texto Estruturado:
Descrição:
dest := LN(source);
A instrução LN calcula o log neperiano de Source e coloca o resultado em Destination.
Formato:
Descrição:
DINT REAL
imediato tag
encontra o log neperiano deste valor
DINT REAL
tag
tag para armazenar o resultado
Tipo:
Formato:
Descrição:
FBD_MATH_ ADVANCED
estrutura
estrutura LN (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Origem
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática
11 - 77 Instrução:
Lógica Ladder:
Bloco de Funções:
LOG Logarítmo base 10 Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Origem
SINT INT
Destino
SINT INT
Operando: Tag LOG
Texto Estruturado:
Descrição:
dest := LOG(source);
A instrução LOG calcula o log de base 10 de Source e coloca o resultado em Destination.
Formato:
Descrição:
DINT REAL
imediato tag
encontra o log deste valor
DINT REAL
tag
tag para armazenar o resultado
Tipo:
Formato:
Descrição:
FBD_MATH_ ADVANCED
estrutura
estrutura LOG (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Parâmetro:
Tipo:
Descrição:
Origem
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 78 Instrução:
Lógica Ladder:
LOWER Letra Minúscula
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
LOWER(Source,Dest);
A instrução LOWER converte os caracteres alfabéticos em um grupo em caracteres de letras minúsculas.
Operando:
Tipo:
Formato:
Descrição:
Origem
grupo
tag
o tag que contém os caracteres que você quer converter em letras minúsculas
Destino
grupo
tag
tag para armazenar os caracteres em letra minúsculas
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Instrução:
Lógica Ladder:
Bloco de Funções:
LPF Filtro Passa Baixa
não disponível
Texto Estruturado:
Descrição:
LPF(LPF_tag);
A instrução LPF fornece um filtro para atenuar as freqüências de entrada que estejam acima da frequência de corte.
Operando:
Tipo:
Formato:
Descrição:
Tag LPF
FILTER_LOW_ PASS
estrutura
estrutura LPF (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
11 - 79 Instrução:
Lógica Ladder:
MAAT Ajuste do Eixo de Aplicação de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAAT(Axis,MotionControl);
A MAAT calcula um conjunto completo de ganhos de servo e limites dinâmicos baseado nos resultados de uma instrução MRAT previamente executada e atualiza o módulo de posicionamento com estes novos parâmetros de ganho.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 80 Instrução:
Lógica Ladder:
MAFR Reset de Falha do Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAFR(Axis,MotionControl);
A instrução MAFR remove todas as falhas de posicionamento no eixo. Este é o único método para remoção de falhas de posicionamento de eixo.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 81 Instrução:
Lógica Ladder:
MAG Engrenagem do Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAG(SlaveAxis,MasterAxis, MotionControl,Direction, Ratio,SlaveCounts, MasterCounts, MasterReference, RatioFormat,Clutch, AccelRate,AccelUnits);
A instrução MAG fornece a engrenagem eletrônica entre dois eixos quaisquer em uma direção especificada e em uma razão determinada.
Operando:
Tipo:
Formato:
Descrição:
Eixo escravo
AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Eixo mestre
AXIS_FEEDBACK AXIS_CONSUME D AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_DRI VE
tag
eixos que o eixo escravo segue
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 82 Instrução:
Lógica Ladder:
Bloco de Funções:
MAG Engrenagem do Eixo de Posicionamento
Direção
UINT32
imediato tag
direção relativa que o eixo escravo segue o eixo mestre: • 0 = eixo escravo move-se na mesma direção do eixo mestre • 1 = eixo escravo move-se na direção oposta à sua direção atual • 2 = eixo escravo segue a direção oposta de atual ou anterior • 3 = eixo escravo continua sua direção atual ou anterior
Razão
REAL
imediato tag
valor Real atribuído que estabelece a razão de engrenagem em Unidades de Usuário Escravo por Unidade de Usuário Mestre
Contagens de escravo
UINT32
imediato tag
Contagens de escravo
Contagens de mestre
UINT32
imediato tag
Contagens de mestre
Referência de mestre
BOOL
imediato
referência de posição mestre: 0 = posição real, 1 = posição de comando
Formato de razão
BOOL
imediato
formato da razão: • 0 = razão de engrenagem real • 1 = fração inteira dos pulsos do encoder escravo para os pulsos do encoder mestre
Embreagem
BOOL
imediato
se a Embreagem estiver habilitada ou desabilitada
Taxa de aceleração
BOOL
imediato tag
a taxa de aceleração do Eixo Escravo em % ou Unidades de Aceleração
Unidades de aceleração
DINT
imediato
unidades usadas para exibir o valor da aceleração: 0 = unidades por seg2; 1 =% de aceleração máxima
(continuação)
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 83 Instrução:
Lógica Ladder:
MAH Posição Inicial do Eixo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAH(Axis,MotionControl);
A instrução MAH coloca o eixo na posição inicial
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 84 Instrução:
Lógica Ladder:
MAHD Diagnóstico de Teste da Aplicação de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAHD(Axis,MotionControl, DiagnosticTest, ObservedDirection);
A instrução MAHD aplica os resultados de uma instrução MRHD previamente executada para gerar um novo conjunto de polaridades de encoder e de servo com base na direção observada do posicionamento durante o teste.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Teste de diagnóstico
UDINT
imediato
teste para o módulo de posicionamento a ser executado: • 0 = teste de interligação de motor/encoder • 1 = teste de encoder • 2 = teste indicador de encoder
Direção observada
BOOL
imediato
direção do posicionamento do teste: 0 = forward; 1 = reverse
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 85 Instrução:
Lógica Ladder:
MAJ Jog do Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAJ(Axis,MotionControl, Direction,Speed,SpeedUnits, AccelRate,AccelUnits, DecelRate,DecelUnits, Profile,Merge,MergeSpeed);
A instrução MAJ inicia o perfil de um posicionamento de jog para o eixo especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Direção
UDINT
imediato tag
direção do jog: 0 = forward jog; 1 = reverse jog
Velocidade
REAL
imediato tag
velocidade para mover o eixo em % ou unidades de velocidade
Unidades de velocidade
UDINT
imediato
unidades de engenharia para o valor da velocidade: 0 = unidades por seg; 1 =% da velocidade máxima
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 86 Instrução:
Lógica Ladder:
MAJ Jog do Eixo de Posicionamento
Unidades de aceleração
UDINT
imediato
unidades de engenharia para o valor da aceleração: 0 = unidades por seg2; 1 =% de aceleração máxima
Taxa de aceleração
REAL
imediato tag
a taxa de aceleração do eixo em % ou unidades de aceleração
Taxa de desaceleração
REAL
imediato ou tag
a taxa de desaceleração do eixo em % ou unidades de desaceleração
Unidades de desaceleração
UDINT
imediato
unidades de engenharia para o valor de desaceleração: 0 = unidades por seg2; 1 =% de desaceleração máxima
Perfil
UDINT
imediato
selecione o perfil de velocidade para executar o jog: 0 = trapezoidal; 1 = S-curvo
Mescla
UDINT
imediato
instrui o controle de posicionamento a mudar todas as posições atuais dos eixos
Velocidade de mescla
UDINT
imediato
determina se a velocidade é o valor da velocidade especificado desta instrução ou da velocidade atual do eixo: • 0 = valor programado no campo velocidade • 1 = velocidade atual do eixo
(continuação)
Bloco de Funções:
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 87 Instrução:
Lógica Ladder:
MAM Movimento do Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAM(Axis,MotionControl, MoveType,Position,Speed, SpeedUnits,AccelRate, AccelUnits,DecelRate, DecelUnits,Profile,Merge, MergeSpeed);
A instrução MAM inicia o perfil de movimento para o eixo especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo de movimento
UDINT
imediato ou tag
tipo de operação de movimento: 0 = Absolute Move; 1 = Incremental Move; 2 = Rotary Shortest Path Move; 3 = Rotary Positive Move; 4 = Rotary Negative Move; 5 = Absolute Master Offset; 6 = Incremental Master Offset
Posição /Distância
REAL
imediato tag
valor da posição absoluta de comando para mover ou para movimento incremental, o valor da distância a ser percorrida a partir da posição de comando atual.
Velocidade
REAL
imediato tag
velocidade para mover o eixo em % ou unidades de velocidade
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 88 Instrução:
Lógica Ladder:
MAM Movimento do Eixo de Posicionamento
Unidades de velocidade
BOOL
imediato
unidades para o valor de Speed:0 =unidades por seg; 1 =% da velocidade máxima
Taxa de aceleração
REAL
imediato ou tag
a taxa de aceleração do eixo em % ou unidades de aceleração
Unidades de aceleração
BOOL
imediato
unidades para o valor de Accel: 0 = unidades por seg2; 1 =% de aceleração máxima
Taxa de desaceleração
REAL
imediato ou tag
a taxa de desaceleração do eixo em % ou unidades de desaceleração
Unidades de desaceleração
booleana
imediato
unidades para o valor de Deceleration: 0 = unidades por seg2; 1 =% de aceleração máxima
Perfil
UDINT
imediato
perfil de velocidade para executar o movimento: 0 = trapezoidal; 1 = S-curvo
Mescla
BOOL
imediato
instrui o controle de posicionamento a mudar todos os posicionamentos atuais dos eixos, independente das instruções de posicionamento atuais no processo, para um simples movimento governado por esta instrução
Velocidade de mescla
DINT
imediato
determina se a velocidade do perfil de movimento será o valor especificado de Speed desta instrução ou a velocidade atual do eixo • 0 = valor programado no campo velocidade • 1 = velocidade atual do eixo
(continuação)
Bloco de Funções:
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 89 Instrução:
Lógica Ladder:
MAOC Came de Saída do Braço de Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAOC(Axis,ExecutionTarget, MotionControl,Output,Input, OutputCam,CamStartPosition, CamEndPosition, OutputCompensation, ExecutionMode, ExecutionSchedule, AxisArmPosition, CamArmPosition,Reference);
A instrução MAOC configura e restaura bits de saída com base na posição do eixo.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_CONSUME D AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Alvo de execução
UNIT32
imediato tag
define o came de saída específico: • 0...8 – Cames de Saída executados no controlador Logix. • 9...31 – Reservado para uso futuro.
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 90 Instrução:
Lógica Ladder:
MAOC Came de Saída do Braço de Movimento
Saída
DINT
tag
32 bits de saída que são configurados ou restaurados com base no came de saída especificado
Entrada
DINT
tag
32 bits de entrada que podem ser usados como bits habilitados dependendo do came de saída especificado
Came de saída
OUTPUT_CAM
tag do vetor
vetor dos elementos OUTPUT_CAM
Posição inicial do came
SINT INT
DINT REAL
imediato tag
a posição inicial do came com a posição final do came definem os limites à direita e à esquerda da faixa do came de saída
Posição final do came
SINT INT
DINT REAL
imediato tag
a posição final do came com a posição inicial do came definem os limites à direita e à esquerda da faixa do came de saída
Compensação de saída
OUTPUT_ COMPENSATION
tag do vetor
vetor de 1 a 32 elementos OUTPUT_COMPENSATION
Modo de execução
UINT32
imediato
modo de execução: uma vez (0); contínua (1); persistente (2)
Cronograma de execução
UINT32
imediato
quando posicionar o braço do came de saída: 0 = imediato; 1 = pendente; 2 = somente à frente; 3 = somente reverso; 4 = bidirecional
Posição do braço do eixo
SINT INT
DINT REAL
imediato tag
posição do eixo onde o came de saída é armado quando o programa de execução é definido para somente para frente, somente reverso ou bidirecional e o eixo move-se na direção especificada
Posição do braço do came
SINT INT
DINT REAL
imediato tag
posição do came associada à posição do braço do eixo quando o came de saída está armado
Referência
UINT32
imediato
se o came de saída estiver conectado para 0 = posição atual, 1 = posição de comando
(continuação)
Bloco de Funções:
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 91 Instrução:
Lógica Ladder:
MAPC Came de Posição do Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAPC(SlaveAxis,MasterAxis, MotionControl,Direction, CamProfile,SlaveScaling, MasterScaling, ExecutionMode, ExecutionSchedule, MasterLockPosition, CamLockPosition, MasterReference, MasterDirection);
A instrução MAPC fornece o came eletrônico entre dois eixos de acordo com o perfil do came especificado.
Operando:
Tipo:
Formato:
Descrição:
Eixo escravo
AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Eixo mestre
AXIS_FEEDBACK AXIS_CONSUME AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
eixo que o eixo escravo segue de acordo com o perfil do came
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 92 Instrução:
Lógica Ladder:
MAPC Came de Posição do Eixo de Posicionamento
Direção
UINT32
imediato tag
direção relativa do eixo escravo: mesma, oposta, reversa ou inalterada
Perfil do came
CAM_PROFILE
vetor
vetor do perfil do came calculado usado para estabelecer o relacionamento de posicionamento mestre/escravo
Conversão em escala de escravo
REAL
imediato tag
converte a escala da distância total coberta pelo eixo escravo através do perfil do came
Conversão em escala de mestre
REAL
imediato tag
converte a escala da distância total coberta pelo eixo mestre através do perfil came
Modo de execução
UINT32
imediato
determina se o perfil do came é executado: 0 = uma vez, 1 = contínua, 2 = persistente
Cronograma de execução
UINT32
imediato
método para executar o perfil do came: 0 = imediato, 1 = pendente, 2 = somente à frente, 3 = somente reverso, 4 = bidirecional
Posição de trava do mestre
REAL
imediato tag
posição absoluta do eixo mestre onde o eixo escravo é travado com relação ao eixo mestre
Posição de trava do came
REAL
imediato tag
local inicial no perfil do came
Referência de mestre
UINT32
imediato
referência de posição mestre: 0 = posição real, 1 = posição de comando
Direção do mestre
UINT32
imediato
direção do eixo mestre que gera o posicionamento do escravo de acordo com o perfil do came: bidirecional (0), somente para frente (1), somente reverso (2)
(continuação)
Bloco de Funções:
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 93 Instrução:
Lógica Ladder:
MAR Registro do Braço de Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAR(Axis,MotionControl, TriggerCondition, WindowedRegistration, MinimumPosition, MaximumPosition, InputNumber);
A instrução MAR arma a verificação de evento do módulo servo para o eixo especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Condição do disparador
BOOL
imediato
disparo de transição de entrada de registro: 0 = na extremidade positiva, 1 = na extremidade negativa
Registro por janela
BOOL
imediato
se o registro será feito por janela significa que a posição de registro calculada deve cair dentro de limites de posição mínimos e máximos
Posição mínima
REAL
imediato ou tag
a posição de registro deve ser maior do que o limite de posição mínimo
Posição máxima
REAL
imediato ou tag
a posição de registro deve ser inferior ao limite de posição máximo
Número de entrada
UINT32
1 ou 2
entrada de registro: 1 = Posição de Registro 1, 2 = Posição de Registro 2
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 94 Instrução:
Lógica Ladder:
MAS Parada de Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAS(Axis,MotionControl, StopType,ChangeDecel, DecelRate,DecelUnits);
A instrução MAS inicia uma parada controlada de qualquer processo de posicionamento no eixo designado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Stop type
UNIT32
imediato
determina o processo de posicionamento: 0 = stop all motion; 1 = stop jogging; 2 = stop moving; 3 = stop gearing; 4 = stop homing; 5 = stop tuning; 6 = stop test; 7 = stop position camming; 8 = stop time camming; 9 = stop a Master Offset Move
Alterar desaceleração
BOOL
imediato
configurado para habilitar o uso do valor de desaceleração ao invés da taxa de desaceleração máxima atual
Taxa de desaceleração
REAL
imediato tag
a taxa de desaceleração do eixo em % ou unidades de desaceleração
Unidades de desaceleração
BOOL
imediato
unidades de engenharia para o valor de desaceleração: 0 = unidades por seg2; 1 =% do máximo
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 95 Instrução:
Lógica Ladder:
MASD Desligamento do Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MASD(Axis,MotionControl);
A instrução MASD força um eixo específico ao estado Desligado. O estado Desligado de um eixo é quando a saída do inversor está desabilitada, a servo de malha desativada e qualquer contato por relé de estado sólido OK associados ou disponíveis que estiver aberto. O eixo permanece no estado Desligado até que o Reset de Desligamento de um Eixo ou Grupo seja executado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 96 Instrução:
MASR Reset de Desligamento do Eixo de Posicionamento
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MASR(Axis,MotionControl);
A instrução MASR alterna um eixo de um estado Desligado existente para um estado de Eixo Pronto
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 97 Instrução:
Lógica Ladder:
MATC Came de Tempo do Eixo de Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MATC(Axis,MotionControl, Direction,CamProfile, DistanceScaling, TimeScaling, ExecutionMode, ExecutionSchedule);
A instrução MATC fornece um came eletrônico de um eixo como uma função de tempo, de acordo com o Perfil do Came especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Direção
UINT32
imediato tag
direção relativa do eixo escravo com relação o eixo mestre: mesma, oposta, reversa, inalterada
Perfil do came
CAM_PROFILE
vetor
vetor de perfil do came calculado
Conversão em escala da distância
REAL
imediato tag
converte a escala da distância total coberta pelo eixo através do perfil came
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 98 Instrução:
Lógica Ladder:
MATC Came de Tempo do Eixo de Posicionamento
Conversão em escala do tempo
REAL
imediato tag
converte a escala de intervalo de tempo coberto pelo perfil do came
Modo de execução
UINT32
imediato
como o posicionamento do came se comporta quando o tempo excede o ponto final do perfil do came: uma vez (0), contínuo (1)
Cronograma de execução
UNIT32
imediato
método para executar o perfil do came: 0 = imediato, 1 = pendente
(continuação)
Bloco de Funções:
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 99 Instrução:
Lógica Ladder:
MAVE Média de movimentação
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
MAVE(MAVE_tag,storage, weight);
A instrução MAVE calcula um valor médio de tempo para o sinal de In. Esta instrução suporta, opcionalmente, pesos especificados pelo usuário.
Operando:
Tipo:
Formato:
Descrição:
Tag MAVE
MOVING_ AVERAGE
estrutura
estrutura MAVE (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
armazenamento
REAL
vetor
retém as amostras de médias de movimentação; este vetor tem de ser pelo menos igual a NumberOfSamples
peso
REAL
vetor
(opcional) usado para médias ponderadas; este vetor tem de ser pelo menos igual a NumberOfSamples o elemento [0] é usado para a amostra mais recente; o elemento [n] é usado para a amostra mais antiga
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 100 Instrução:
Lógica Ladder:
MAW Observação do Braço de Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MAW(Axis,MotionControl, TriggerCondition,Position);
A instrução MAW arma a observação de posição da verificação de evento para o eixo especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Condição do disparador
BOOL
imediato
condição de disparo de observação de evento: 0 = forward; 1 = reverse
Posição
REAL
imediato tag
novo valor para a posição de observação
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 101 Instrução:
Lógica Ladder:
MAXC Captação Máxima
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
MAXC(MAXC_tag);
A instrução MAXC encontra o máximo do sinal In no período
Operando:
Tipo:
Formato:
Descrição:
Tag MAXC
MAXIMUM_ CAPTURE
estrutura
estrutura MAXC (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Reset
BOOL
solicita o reset do algorítmo de controle a instrução define Out = ResetValue desde de que o Reset esteja definido
ResetValue
REAL
valor de reset para a instrução a instrução define Out = ResetValue desde de que o Reset esteja definido
Out
REAL
saída calculada do algorítmo
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 102 Instrução:
Lógica Ladder:
MCCD Dinâmica de Alteração Coordenada de Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCCD(CoordinateSystem, MotionControl,MotionType, ChangeSpeed,Speed, SpeedUnits);
A instrução MCCD inicia uma mudança na dinâmica da trajetória para o movimento coordenado ativo no sistema de coordenadas especificado
Operando:
Tipo:
Formato:
Descrição:
Sistema de coordenadas
Sistema de coordenadas
tag
grupo de eixos coordenados
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo de movimento
SINT INT
DINT
imediato
1 = movimento coordenada
Alterar velocidade
SINT INT
DINT
imediato tag
se modificar a velocidade: 0 = não; 1 = sim
Velocidade
SINT INT
DINT REAL
imediato tag
unidades de coordenação
Unidades de velocidade
SINT INT
DINT
imediato
0 = unidades por segundo; 1 = % do máximo
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 103 Instrução:
Lógica Ladder:
MCCM Movimentação Circular Coordenada do Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCCM(CoordinateSystem, MotionControl,MotionType, Position);
A instrução MCCM inicia movimento coordenado circular bi ou tridimensional para os eixos específicos dentro do sistema coordenado.
Operando:
Tipo:
Formato:
Descrição:
Sistema de coordenadas
Sistema de coordenadas
tag
grupo de eixos coordenados
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo de movimento
SINT INT
imediato tag
tipo de movimento: 0 = absoluto; 1 = incremental
Posição
REAL
vetor
unidades de coordenação
DINT
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 104 Instrução:
Lógica Ladder:
MCCP Perfil do Came para Cálculo de Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCCP(MotionControl,Cam, Length,StartSlope,EndSlope, CamProfile);
A instrução MCCP calcula o perfil do came com base em um vetor dos pontos de came
Operando:
Tipo:
Formato:
Descrição:
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Came
CAM
vetor
vetor do came
Comprimento
UINT
imediato tag
número de elementos de came no vetor
Curvatura inicial
REAL
imediato tag
condição de limite para a curvatura inicial do perfil
Curvatura final
REAL
imediato tag
condição de limite para a curvatura final do perfil
Perfil do came
CAM_PROFILE
vetor
vetor de perfil do came calculado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 105 Instrução:
Lógica Ladder:
MCD Dinâmica de Alteração do Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCD(Axis,MotionControl, MotionType,ChangeSpeed, Speed,ChangeAccel, AccelRate,ChangeDecel, DecelRate,SpeedUnits, AccelUnits,DecelUnits);
A instrução MCD muda seletivamente a velocidade, a taxa de aceleração ou de desaceleração de um perfil em um processo
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo de movimento
UDINT
imediato
perfil de posicionamento a ser mudado: 0 = jog; 1 = mover
Change speed
BOOL
imediato
habilitar ou não uma mudança de velocidade
Velocidade
REAL
imediato tag
nova velocidade para mover o eixo em % ou unidades de velocidade
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 106 Instrução:
Lógica Ladder:
Bloco de Funções:
MCD Dinâmica de Alteração do Movimento
Alterar acel.
BOOL
imediato
habilitar ou não uma mudança de aceleração
Taxa de aceleração
REAL
imediato tag
a taxa de aceleração do eixo em % ou unidades de aceleração
(continuação)
Alterar desacel
BOOL
imediato
habilitar ou não uma mudança de desaceleração
Taxa de desaceleração
REAL
imediato tag
a taxa de desaceleração do eixo em % ou unidades de desaceleração
Unidades de velocidade
BOOL
imediato
unidades usadas para exibir o valor da velocidade: 0 = unidades por seg; 1 =% da velocidade máxima
Unidades de aceleração
BOOL
imediato
unidades usadas para exibir o valor da aceleração: 0 = unidades por seg2; 1 =% de aceleração máxima
Unidades de desaceleração
BOOL
imediato
unidades usadas para exibir o valor da desaceleração: 0 = unidades por seg2; 1 =% de aceleração máxima
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
11 - 107 Instrução:
Lógica Ladder:
MCLM Movimento Linear Coordenado do Movimento
Instrução:
MCR Reset de Controle do Mestre
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCLM(CoordinateSystem, MotionControl,MotionType, Position);
A instrução MCLM inicia movimento coordenado linear uni ou multidimensional para os eixos especificados dentro do sistema coordenado.
Operando:
Tipo:
Formato:
Descrição:
Sistema de coordenadas
Sistema de coordenadas
tag
grupo de eixos coordenados
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo de movimento
SINT INT
imediato tag
tipo de movimento: 0 = absoluto; 1 = incremental
Posição
REAL
vetor
unidades de coordenação
DINT
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução MCR, usada em pares, cria uma zona de programa que pode desabilitar todas as linhas dentro das instruções MCR.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 108 Instrução:
Lógica Ladder:
MCS Parada Coordenada do Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCS(CoordinateSystem, MotionControl,StopType);
A instrução MCS inicia uma parada controlada do perfil do movimento coordenado.
Operando:
Tipo:
Formato:
Descrição:
Sistema de coordenadas
Sistema de coordenadas
tag
grupo de eixos coordenados
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo de parada
SINT INT
imediato
tipo de parada: 2 = movimento coordenada
DINT
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 109 Instrução:
Lógica Ladder:
MCSD Encerramento Controlado do Movimento
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCSD(CoordinateSystem, MotionControl);
A instrução MCSD inicia um fechamento controladode todos os eixos no sistema de coordenadas específico.
Operando:
Tipo:
Formato:
Descrição:
Sistema de coordenadas
Sistema de coordenadas
tag
grupo de eixos coordenados
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCSR(CoordinateSystem, MotionControl);
A instrução restaura todos os eixos no sistema de coordenadas específico.
MCSR Reset de Encerramento Coordenado do Movimento Operando:
Tipo:
Formato:
Descrição:
Sistema de coordenadas
Sistema de coordenadas
tag
grupo de eixos coordenados
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 110 Instrução:
Lógica Ladder:
MCSV Valor de Escravo para Cálculo do Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MCSV(MotionControl, CamProfile,MasterValue, SlaveValue,SlopValue, SlopeDerivative
A instrução MCSV calcula o valor auxiliar, o valor da inclinação, e a derivada da inclinação para um dado perfil de came o valor principal. Como uma extensão para a posição e funcionalidade do ponto do came ele fornece os valores essenciais para a recuperação a partir dos erros durante as operações do came.
Operando:
Tipo:
Formato:
Descrição:
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Cam Profile
CAM_PROFILE
vetor
define o perfil do came utilizado para o cálculo dos valores auxiliares
Valor do mestre
SINT INT
imediato ou tag
Valor ao longo do eixo principal que é utilizado no cálculo dos valores auxiliares
Valor do escravo
REAL
tag
Valor ao longo do eixo auxiliar do perfil do came com o principal no valor principal específico
Valor da curvatura
REAL
tag
primeira derivada do valor ao longo do eixo auxiliar do perfil do came com o principal no valor principal específico
Derivada da curvatura
REAL
tag
segunda derivada do valor ao longo do eixo auxiliar do perfil do came com o principal no valor principal específico
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 111 Instrução:
Lógica Ladder:
MDF Inversor Direto do Movimento Desligado
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MDF(Axis,MotionControl);
A instrução MDF desativa o servodrive e define a tensão de saída do servo para a tensão offset de saída.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_SERVO
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 112 Instrução:
Lógica Ladder:
MDO Inversor Direto do Movimento Ligado
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MDO(Axis,MotionControl, DriveOutput,DriveUnits);
A instrução MDO trabalha em conjunto com os módulos de posicionamento que suportam uma interface de servodrive analógico externo. A instrução MDO ativa a Habilitação do Inversor do módulo, habilitando o servodrive externo e também define a tensão de saída do módulo do servodrive para o nível de tensão especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_SERVO
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Saída do inversor
REAL
tag
tensão para saída do limite de saída do servo em % ou em volts
Unidades do inversor
BOOL
tag
unidades para o valor de saída do inversor: 0 = volts, 1 = %
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 113 Instrução:
Lógica Ladder:
MDOC Came de Saída para o Desarme do Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MDOC(Axis,ExecutionTarget,M otionControl,DisarmType);
A instrução MDOC inicia o desarme de um ou mais cames de saída conectados ao eixo especificado
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_CONSUME AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Alvo de execução
SINT INT
imediato tag
came de saída do conjunto conectado ao eixo indicado: • 0...8 – Cames de Saída executados no controlador Logix. • 9...31 – Reservado para uso futuro.
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo de desarme
DINT
imediato
came(s) de saída(s) a ser(em) desarmado(s): 0 = todos, 1 = específico
DINT
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 114 Instrução:
Lógica Ladder:
MDR Registro de Desarme do Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MDR(Axis,MotionControl, InputNumber);
A instrução MDR desarma a verificação de evento de entrada de registro para o eixo especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Número de entrada
UINT32
1 ou 2
entrada de registro: 1 = Posição de Registro 1, 2 = Posição de Registro 2
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 115 Instrução:
Lógica Ladder:
MDW Observação de Desarme do Movimento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MDW(Axis,MotionControl);
A instrução MDW desarma a verificação de evento de observação de posição para um eixo.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 116 Instrução:
Lógica Ladder:
Bloco de Funções:
MEQ Com Máscara Igual a
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Origem
SINT INT
Mask
Texto Estruturado:
Descrição:
IF (Source AND Mask) = (Compare AND Mask) THEN ; END_IF;
A instrução MEQ passa os valores de Source e Compare através de uma Máscara e compara os resultados.
Formato:
Descrição:
DINT
imediato tag
valor para ser testado comparando-se a Compare
SINT INT
DINT
imediato tag
define que bits são bloqueados ou os que passam
Compare
SINT INT
DINT
imediato tag
valor a ser testado em relação a Source
Operando:
Tipo:
Formato:
Descrição:
Tag MEQ
FBD_MASK_ EQUAL
estrutura
estrutura MEQ (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Origem
DINT
valor para ser testado comparando-se a Compare
Mask
DINT
define quais bits bloquear (máscara)
Compare
DINT
compara valor
Dest
BOOL
resultado da instrução
11 - 117 Instrução:
Lógica Ladder:
MGS Parada de Grupo de Movimento
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MGS(Group,MotionControl, StopMode);
A instrução MGS inicia a parada de todo posicionamento em andamento em todos os eixos no grupo especificado por um método configurado, individualmente, para cada eixo ou como um grupo através do modo de parada da instrução MGS.
Operando:
Tipo:
Formato:
Descrição:
Grupo
MOTION_ GROUP
tag
grupo de eixos
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Modo de parada
UDINT
imediato
como os eixos no grupo são parados: 0 = programado, 1 = parada rápida, 2 = desabilitação rápida
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MGSD(Group,MotionControl);
A instrução MGSD força todos os eixos no grupo indicado a um estado Desligado
MGSD Encerramento de Grupo de Movimento Operando:
Tipo:
Formato:
Descrição:
Grupo
MOTION_ GROUP
tag
grupo de eixos
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 118 Instrução:
MGSP Posição de Pulsação do Grupo de Movimento
Instrução:
MGSR Reset de Encerramento de Grupo de Movimento
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MGSP(Group,MotionControl);
A instrução MGSP retém o comando e a posição atuais de todos os eixos no grupo especificado em um único ponto no período.
Operando:
Tipo:
Formato:
Descrição:
Grupo
MOTION_ GROUP
tag
grupo de eixos
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MGSR(Group,MotionControl);
A instrução MGSR alterna um grupo de eixos do estado de operação desligado para o estado de operação eixo pronto.
Operando:
Tipo:
Formato:
Descrição:
Grupo
MOTION_ GROUP
tag
grupo de eixos
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 119 Instrução:
Lógica Ladder:
MID grupo do Meio
Operando:
Tipo:
Origem
grupo
Quantidade
SINT INT
DINT
Início
SINT INT
DINT
Destino
grupo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MID(Source,Qty, Start,Dest);
A instrução MID copia um número específico de caracteres ASCII de um grupo e os armazena em outro grupo.
Formato:
Descrição:
tag
grupo do qual os caracteres são copiados
imediato tag
número de caracteres a copiar; Start e Quantity devem ser inferiores ou iguais ao tamanho de DATA de Source
imediato tag
posição do primeiro caractere a copiar; digite um número entre 1 e o tamanho de DATA de Source
tag
grupo para o qual os caracteres são copiados
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 51
O valor LEN do tag do grupo é maior que o tamanho de DATA da tag do grupo. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag do grupo. • se você inseriu o número de caracteres que o grupo contém no valor de LEN.
Tipo 4
Código 56
O valor de Start ou Quantity é inválido. Verifique: • se o valor de Start está entre 1 e o tamanho de DATA de Source. • se o valor de Start mais o valor de Quantity é menor ou igual ao tamanho de DATA de Source.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 120 Instrução:
Lógica Ladder:
MINC Captação Mínima
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
MINC(MINC_tag);
A instrução MINC encontra o mínimo do sinal In no período.
Operando:
Tipo:
Formato:
Descrição:
Tag MINC
MINIMUM_ CAPTURE
estrutura
estrutura MINC (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Reset
BOOL
solicita o reset do algorítmo de controle a instrução define Out = ResetValue desde de que o Reset esteja definido
ResetValue
REAL
valor de reset para a instrução a instrução define Out = ResetValue desde de que o Reset esteja definido
Out
REAL
saída calculada do algorítmo
11 - 121 Instrução:
Lógica Ladder:
Bloco de Funções:
MOD Módulo
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Origem A
SINT INT
Origem B
Texto Estruturado:
Descrição:
dest := sourceA MOD sourceB;
A instrução MOD divide Source A por Source B e coloca o resto em Destination
Formato:
Descrição:
DINT REAL
imediato tag
valor do dividendo
SINT INT
DINT REAL
imediato tag
valor do divisor
Destino
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag MOD
FBD_MATH
estrutura
estrutura MOD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor do dividendo
SourceB
REAL
valor do divisor
Dest
REAL
resultado da instrução matemática
Código 4
o divisor é 0.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 122 Instrução:
Lógica Ladder:
MOV Movimento
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
dest := source;
A instrução MOV copia Source em Destination. Source permanece inalterado.
Operando:
Tipo:
Formato:
Descrição:
Origem
SINT INT
DINT REAL
imediato tag
valor a ser movido (copiar)
Destino
SINT INT
DINT REAL
tag
uma expressão composta por tags e/ou valores imediatos separados por operadores
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MRAT(Axis,MotionControl);
A instrução MRAT comanda o módulo de posicionamento para executar o perfil de ajuste para um eixo específico.
MRAT Ajuste do Eixo de Execução do Posicionamento Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 123 Instrução:
Lógica Ladder:
MRHD Diagnóstico de Teste de Execução do Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MRHD(Axis,MotionControl, DiagnosticTest);
A instrução MRHD comanda o módulo de posicionamento para executar qualquer um dos três diagnósticos diferentes no eixo especificado.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Teste de diagnóstico
DINT
imediato
teste para o módulo de posicionamento a ser executado: • 0 = teste de interligação de motor/encoder • 1 = teste de encoder • 2 = teste indicador de encoder
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 124 Instrução:
Lógica Ladder:
MRP Posição de Redefinição do Posicionamento
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MRP(Axis,MotionControl, Type,PositionSelect, Position);
A instrução MRP muda o comando ou posição atual do eixo.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_FEEDBACK AXIS_VIRTUAL AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Tipo
BOOL
imediato
como a operação de redefinição deve operar: 0 = absoluto, 1 = relativo
Seleção de posição
BOOL
imediato
qual posição na qual desempenhar a redefinição de operação: 0 = posição real, 1 = posição de comando
Posição
REAL
imediato tag
valor a ser usado para mudar a posição do eixo ou fazer o offset para a posição atual
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 125 Instrução:
Lógica Ladder:
MSF Servo do Posicionamento Desligado
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MSF(Axis,MotionControl);
A instrução MSF desativa a saída do inversor para o eixo especificado e desativa a malha de servo do eixo. Se você executar uma instrução MSF enquanto o eixo estiver em movimento, o eixo parará por inércia de forma não controlada.
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MSG(MessageControl);
A instrução MSG realiza a leitura ou escreve de forma assíncrona em um bloco de dados para outro módulo em uma rede.
MSG Mensagem Operando:
Tipo:
Formato:
Descrição:
Controle de mensagem
Message
tag
estrutura de mensagem
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 126 Instrução:
Lógica Ladder:
MSO Servo do Posicionamento Ligado
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
MSO(Axis,MotionControl);
A instrução MSO ativa o amplificador do inversor para o eixo especificado e ativa a malha de controle do servo do eixo
Operando:
Tipo:
Formato:
Descrição:
AXIS
AXIS_GENERIC AXIS_SERVO AXIS_SERVO_ DRIVE
tag
nome do eixo
Controle de Posicionamento
MOTION_ INSTRUCTION
tag
estrutura de posicionamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 127 Instrução:
Lógica Ladder:
MSTD Mover Desvio Padrão
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
MSTD(MSTD_tag,storage);
A instrução MSTD calcula um desvio padrão de posicionamento e a média para o sinal In.
Operando:
Tipo:
Formato:
Descrição:
Tag MSTD
MOVING_STD_ DEV
estrutura
estrutura MSTD (parâmetros padrão):
armazenamento
REAL
vetor
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
SampleEnable
BOOL
habilita a coleta de uma amostra de In Quando definida, a instrução insere o valor de entrada no vetor de armazenagem e calcula um novo valor de Out e de Average. Quando removida e Inicializado é desenergizado, a instrução mantém os valores atuais de Out e de Average.
Out
REAL
saída calculada do algorítmo
retém as amostras In; este vetor tem de ser pelo menos igual a NumberOfSamples
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 128 Instrução:
Lógica Ladder:
Bloco de Funções:
MUL Multiplicar
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := sourceA * sourceB;
A instrução MUL multiplica Source A por Source B e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem A
SINT INT
DINT REAL
imediato tag
valor do multiplicando
Origem B
SINT INT
DINT REAL
imediato tag
valor do multiplicador
Destino
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag MUL
FBD_MATH
estrutura
estrutura MUL (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor do multiplicando
SourceB
REAL
valor do multiplicador
Dest
REAL
resultado da instrução matemática
11 - 129 Instrução:
Lógica Ladder:
MUX Multiplexador
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
A instrução MUX seleciona uma de oito entradas com base na entrada do seletor.
Operando:
Tipo:
Formato:
Descrição:
Tag MUX
Multiplexador
estrutura
estrutura MUX (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
Inx
REAL
entrada de sinal analógico para a instrução, onde x = 1-8
selector
DINT
entrada de seletor para a instrução
Out
REAL
saída selecionada do algorítmo
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 130 Instrução:
Lógica Ladder:
MVM Movimento com Máscara
Operando:
Tipo:
Origem
SINT INT
Mask Destino
Bloco de Funções:
Texto Estruturado:
Descrição:
veja MVMT
dest := (Dest AND NOT (Mask) OR (Source AND Mask);
A instrução MVM copia Source em Destination e permite que parte dos dados sejam mascarados.
Formato:
Descrição:
DINT
imediato tag
valor a ser movido
SINT INT
DINT
imediato tag
quais bits bloquear ou passar
SINT INT
DINT
tag
uma expressão composta por tags e/ou valores imediatos separados por operadores
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 131 Instrução:
Lógica Ladder:
MVMT Movimento com Máscara com Alvo
Veja MVM
Bloco de Funções:
Texto Estruturado:
Descrição:
MVMT(MVMT_tag);
A instrução MVMT copia o Target para Destination. Em seguida, a instrução compara Source mascarado com Destination e efetua as alterações solicitadas para Destination. Target e Source permanecem inalterados.
Operando:
Tipo:
Formato:
Descrição:
Tag MVMT
FBD_MASKED_ MOVE
estrutura
estrutura MVMT (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Parâmetro:
Tipo:
Descrição:
Origem
DINT
Insira o valor para movimentar para Destination baseado no valor de Mask.
Mask
DINT
máscara dos bits para se movimentar de Source para Dest. Todos os bits energizados para um faz com que os bits correspondentes se movimentem de Source para Dest. Todos os bits energizados como zero fazem com que os bits correspondentes se movimentem de Source para Dest.
Target
DINT
Insira valor para movimentar para Dest antes de mover os bits Source através de Mask.
Dest
DINT
Resultado da instrução de movimento mascarada.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 132 Instrução:
Lógica Ladder:
Bloco de Funções:
NEG Negação
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := -source;
A instrução NEG altera o sinal de Source e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem
SINT INT
DINT REAL
imediato tag
valor a ser transformado em negativo
Destino
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag NEG
FBD_MATH_ ADVANCED
estrutura
estrutura NEG (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Origem
REAL
valor a ser transformado em negativo
Dest
REAL
resultado da instrução matemática
11 - 133 Instrução:
Lógica Ladder:
Bloco de Funções:
NEQ Não Igual a
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
IF sourceA <> sourceB THEN ;
A instrução NEQ testa se Source A é diferente de Source B.
Operando:
Tipo:
Formato:
Descrição:
Origem A
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source B
Origem B
SINT INT DINT
REAL grupo
imediato tag
valor a ser testado em relação a Source A
Operando:
Tipo:
Formato:
Descrição:
Tag NEQ
FBD_COMPARE
estrutura
estrutura NEQ (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
NOP Sem Operação
não disponível Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor a ser testado em relação a SourceB
SourceB
REAL
valor a ser testado em relação a SourceA
Dest
BOOL
resultado da instrução
não disponível
A instrução NOP funciona como um espaço em branco
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 134 Instrução:
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
Instrução:
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
dest := NOT source
A instrução NOT realiza uma operação NOT usando os bits em Source e coloca o resultado em Destination.
NOT NÃO
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Formato:
Descrição:
Origem
SINT INT
DINT
imediato tag
valor para NOT
Destination
SINT INT
DINT
tag
tag para armazenar o resultado
Operando: Tag NOT
Tipo:
Formato:
Descrição:
FBD_LOGICAL
estrutura
estrutura NOT (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Origem
DINT
valor para NOT
Dest
DINT
resultado da instrução
11 - 135 Instrução:
Lógica Ladder:
NTCH FFiltro de Entalhe
não disponível
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
NTCH(NTCH_tag);
A instrução NTCH fornece um filtro para atenuar as freqüências de entrada que estejam na freqüência de entalhe.
Operando:
Tipo:
Formato:
Descrição:
Tag NTCH
FILTER_NOTCH
estrutura
estrutura NTCH (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
IF BOOL_expression AND NOT storage_bit THEN ; END_IF; storage_bit := BOOL_expression;
A instrução ONS habilita ou desabilita o resto da linha dependendo do status do bit de armazenamento.
ONS Mono Estável
Operando:
Tipo:
Formato:
Descrição:
bit de armazenamento
BOOL
tag
bit de armazenamento interno armazena a entrada da condição da linha desde a última vez que a instrução foi executada
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 136 Instrução:
Lógica Ladder:
Bloco de Funções:
OR OU
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := sourceA OR sourceB
A instrução OR realiza uma operação OR usando os bits em Source A e Source B e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem A
SINT INT
DINT
imediato tag
valor para OR com Source B
Origem B
SINT INT
DINT
imediato tag
valor para OR com Source A
Destination
SINT INT
DINT
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag OR
FBD_LOGICAL
estrutura
estrutura OR (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SourceA
DINT
valor para OR com Source B
SourceB
DINT
valor para OR com Source A
Dest
DINT
resultado da instrução
11 - 137 Instrução:
Lógica Ladder:
OSF Monoestável com Borda de Descida
Bloco de Funções:
Texto Estruturado:
Descrição:
veja OSFI
veja OSFI
A instrução OSF energiza ou desenergiza o bit de saída dependendo do status do bit de armazenamento.
Operando:
Tipo:
Formato:
Descrição:
bit de armazenamento
BOOL
tag
bit de armazenamento interno armazena a entrada da condição da linha desde a última vez que a instrução foi executada
bit de saída
BOOL
tag
bit a ser energizado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Instrução:
Lógica Ladder:
Bloco de Funções:
OSFI Monoestável com Borda de Descida com Entrada
Veja OSF
Texto Estruturado:
Descrição:
OSFI(OSFI_tag);
A instrução OSFI energiza o OutputBit para um ciclo de execução quando InputBit alternar de energizado para desenergizado.
Operando:
Tipo:
Formato:
Descrição:
Tag OSFI
FBD_ONESHOT
estrutura
estrutura OSFI (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Parâmetro:
Tipo:
Descrição:
InputBit
BOOL
bit de entrada.
OutputBit
BOOL
bit de saída
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 138 Instrução:
Lógica Ladder:
OSR Monoestável com Borda de Subida
Bloco de Funções:
Texto Estruturado:
Descrição:
veja OSRI
veja OSRI
A instrução OSR energiza ou desenergiza o bit de saída, dependendo do status do bit de armazenamento.
Operando:
Tipo:
Formato:
Descrição:
bit de armazenamento
BOOL
tag
bit de armazenamento interno armazena a entrada da condição da linha desde a última vez que a instrução foi executada
bit de saída
BOOL
tag
bit a ser energizado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Instrução:
Lógica Ladder:
Bloco de Funções:
OSRI Monoestável com Borda de Subida com Entrada
veja OSR
Texto Estruturado:
Descrição:
OSRI(OSRI_tag);
A instrução OSRI energiza o bit de saída para um ciclo de execução quando o bit de entrada alternar de desenergizado para energizado.
Operando:
Tipo:
Formato:
Descrição:
Tag OSRI
FBD_ONESHOT
estrutura
estrutura OSRI (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
InputBit
BOOL
bit de entrada.
OutputBit
BOOL
bit de saída
11 - 139 Instrução:
OTE Energização da Saída
Instrução:
OTL Energizar Saída com Retenção
Instrução:
OTU Desenergizado r de Saída com Retenção
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
data_bit [:=] BOOL_expression;
A instrução OTE energiza ou desenergiza o bit de dados.
Operando:
Tipo:
Formato:
Descrição:
bit de dados
BOOL
tag
bit a ser energizado ou desenergizado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
IF BOOL_expression THEN data_bit := 1; END_IF;
A instrução OTL energiza (retém) o bit de dados.
Operando:
Tipo:
Formato:
Descrição:
bit de dados
BOOL
tag
bit a ser energizado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
IF BOOL_expression THEN data_bit := 0; END_IF;
A instrução OTU desenergiza (não retém) o bit de dados.
Operando:
Tipo:
Formato:
Descrição:
bit de dados
BOOL
tag
bit a ser desenergizado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 140 Instrução:
Lógica Ladder:
PATT Conectar à Fase de Equipamento Lógica Ladder e Texto Estruturado
Instrução:
Texto Estruturado:
Descrição:
não disponível
PATT(Phase_Name, Result);
A instrução PATT permite que um programa obtenha a propriedade de uma fase de equipamento.
Operando:
Tipo:
Formato:
Descrição:
Nome de fase
fase
nome da fase de equipamento
Fase de equipamento que você deseja possuir
Resultado
DINT
imediato tag
Para permitir que a instrução retorne um código de retorno sobre seu sucesso/falha, digite um tag DINT onde armazenar o código do resultado. Do contrário, digite 0.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
PCLF(Phase_Name);
A instrução PCLF limpa o código de falha de uma fase de equipamento.
PCLF Limpar Falha de Fase do Equipamento Lógica Ladder e Texto Estruturado
Bloco de Funções:
Operando:
Tipo:
Formato:
Descrição:
Nome de fase
fase
nome da fase de equipamento
Fase de equipamento que você não mais quer possuir
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 141 Instrução:
Lógica Ladder:
PCMD Comando de Fase do Equipamento Lógica Ladder e Texto Estruturado
Instrução:
Texto Estruturado:
Descrição:
não disponível
PCMD(PhaseName, Command, Result);
A instrução PCMD faz a transição de uma fase de equipamento para o próximo estado ou sub-estado.
Operando:
Tipo:
Formato:
Descrição:
Nome de fase
fase
nome da fase de equipamento
Fase do equipamento que você quer alterar para um estado ou sub-estado diferente
Comando
comando
nome do comando
Comando que você quer enviar para a fase de equipamento para alterar seu estado
Resultado
DINT
imediato tag
Para permitir que a instrução retorne um código de retorno sobre seu sucesso/falha, digite um tag DINT onde armazenar o código do resultado. Do contrário, digite 0.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
PDET(Phase_Name);
Depois que um programa executa uma instrução PDET, ele não possui mais a fase do equipamento. Isso libera a fase do equipamento para se tornar propriedade de outro programa ou do software RSBizWare Batch. Use a instrução PDET somente se o programa anteriormente tiver se tornado proprietário de uma fase de equipamento através de uma instrução Attach to Equipment Phase (PATT).
PDET Separa de Fase de Equipamento
Lógica Ladder e Texto Estruturado
Bloco de Funções:
Operando:
Tipo:
Formato:
Descrição:
Nome de fase
fase
nome da fase de equipamento
Fase de equipamento que você não mais quer possuir
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 142 Instrução:
Lógica Ladder:
PFL Falha de Fase do Equipamento Lógica Ladder e Texto Estruturado
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
PFL(Failure_Code);
A instrução PFL ajusta o valor do código de falha de uma fase do equipamento. Use a instrução para indicar uma falha específica de uma fase de equipamento, como um determinado dispositivo com falha.
Operando:
Tipo:
Formato:
Descrição:
Failure_Code
DINT
imediato tag
valor para o qual deseja ajustar o código de falha da fase do equipamento
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 143 Instrução:
Lógica Ladder:
PI Proporcional + Integral
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
PI(PI_tag);
A instrução PI fornece dois métodos de operação. O primeiro método segue o algorítmo PI convencional em que os ganhos proporcionais e integrais permanecem constante em toda a faixa de sinal de entrada (erro). O segundo método usa um algorítimo não linear em que os ganhos proporcionais e integrais variam de acordo com a faixa do sinal de entrada. O sinal de entrada é o desvio entre o setpoint e a realimentação do processo.
Operando:
Tipo:
Formato:
Descrição:
Tag PI
PROP_INT
estrutura
estrutura PI (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada do sinal de erro do processo
Out
REAL
saída calculada do algorítmo PI
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 144 Instrução:
Lógica Ladder:
PID Proporcional, Integral, Derivada
Operando:
Tipo:
PID
PID
Variável de processo
SINT INT
DINT REAL
Tieback
SINT INT
Variável de controle
SINT INT
Malha mestre de PID
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
PID(PID, ProcessVariable,Tieback, ControlVariable, PIDMasterLoop, InholdBit, InHoldValue);
A instrução PID controla uma variável do processo como fluxo, pressão, temperatura ou nível.
Formato:
Descrição:
estrutura
estrutura PID
tag
valor que você quer controlar
DINT REAL
imediato tag
(opcional) saída de uma estação de hardware manual/automática que coloca em bypass a saída do controlador Insira 0 se não quiser usar este parâmetro.
DINT REAL
tag
valor que vai para o dispositivo final de controle (válvula, comporta, etc.) Se você estiver utilizando a zona morta, a variável Control deve ser REAL ou o operando será forçado para 0 quando o erro estiver dentro da zona morta.
PID
estrutura
(opcional) tag PID para o PID mestre Insira 0 se não quiser usar este parâmetro.
Bit Inhold
BOOL
tag
(opcional) o status atual do bit inhold a partir de um canal de saída analógica 1756 para auxílio de reinício ininterrupto Insira 0 se não quiser usar este parâmetro.
Valor Inhold
SINT INT
tag
(opcional) valor de readback dos dados a partir de um canal de saída analógica 1756 para o auxílio de reinício ininterrupto Insira 0 se não quiser usar este parâmetro.
DINT REAL
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 145 Instrução:
Lógica Ladder:
PID Proporcional, Integral, Derivada (continuação)
Valor de referência
na
Bloco de Funções: na
exibe o valor atual do setpoint
Texto Estruturado:
Variável de processo
na
na
exibe o valor atual da variável do processo redimensionada
% de saída
na
na
exibe o valor percentual atual da saída
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 35
.UPD =0
Tipo 4
Código 36
setpoint está fora da faixa
Descrição:
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 146 Instrução:
Lógica Ladder:
PIDE PID Aprimorado
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
PIDE(PIDE_tag);
A instrução PIDE fornece recursos aprimorados na instrução PID padrão. A instrução usa a forma de velocidade do algorítmo PID. Os termos de ganho são aplicados à mudança no valor de erro ou PV, não o valor de erro ou PV.
Operando:
Tipo:
Formato:
Descrição:
Tag PIDE
PIDE_ENHANCED
estrutura
estrutura PIDE (parâmetros padrão):
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
PV
REAL
entrada de variável de processo redimensionada
SPProg
REAL
valor de programa SP, redimensionado em unidades PV
SPCascade
REAL
valor em cascata SP, redimensionado em unidades PV
RatioProg
REAL
multiplicador da razão do programa.
CVProg
REAL
valor manual do programa CV
11 - 147 Instrução:
PIDE PID Aprimorado (continuação)
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
Parâmetro:
Tipo:
Descrição:
FF
REAL
valor de feedforward
HandFB
REAL
valor de alimentação manual CV
ProgProgReq
BOOL
solicitado pelo programa
ProgOperReq
BOOL
solicitado pelo operador do programa
ProgCasRatReq
BOOL
solicitação do modo cascata/razão do programa
ProgAutoReq
BOOL
solicitação do modo automático do programa
ProgManualReq
BOOL
solicitação do modo manual do programa
ProgOverrideReq
BOOL
solicitação do modo de supressão do programa
ProgHandReq
BOOL
solicitação do modo manual do programa
CVEU
REAL
saída de variável de controle redimensionada
SP
REAL
valor de setpoint atual
PVHHAlarm
BOOL
indicador de alarme alto-alto PV
PVHAlarm
BOOL
indicador de alarme alto PV
PVLAlarm
BOOL
indicador de alarme baixo PV
PVLLAlarm
BOOL
indicador de alarme baixo-baixo PV
PVROCPosAlarm
BOOL
indicador de alarme de taxa de alteração positiva PV
PVROCNegAlarm
BOOL
indicador de alarme de taxa de alteração negativo PV
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 148 Instrução:
Lógica Ladder:
Bloco de Funções:
PIDE PID Aprimorado (continuação)
auto-ajuste
PIDE_AUTOTUNE
estrutura
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro CVEU
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
Parâmetro:
Tipo:
Descrição:
DevHHAlarm
BOOL
indicador de alarme alto-alto de desvio
DevHAlarm
BOOL
indicador de alarme alto de desvio
DevLAlarm
BOOL
indicador de alarme baixo de desvio
DevLLAlarm
BOOL
indicador de alarme baixo-baixo de desvio
ProgOper
BOOL
indicador de controle de programação/operação ajustado em modo de programa; limpo em modo de operação
CasRat
BOOL
indicador do modo de razão cascata
Auto
BOOL
indicador de modo automático
Manual
BOOL
indicador de modo manual
Override
BOOL
indicador de modo supressão
Hand
BOOL
indicador de modo manual
(opcional) estrutura auto-ajuste (somente em blocos de funções)
11 - 149 Instrução:
Lógica Ladder:
PMUL Multiplicador de Pulso
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
PMUL(PMUL_tag);
A instrução PMUL fornece uma interface de um módulo de entrada de posição, como um módulo de realimentação de encoder ou resolver, para o sistema digital ao calcular a mudança na entrada de uma varredura ao próximo. Ao selecionar um tamanho específico de palavra, configura-se a instrução PMUL para diferenciar durante os limites de desenvolvimento em um modo contínuo e linear.
Operando:
Tipo:
Formato:
Descrição:
Tag PMUL
PULSE_ MULTIPLIER
estrutura
estrutura PMUL (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
DINT
entrada de sinal analógico para a instrução
MULTIPLIER
DINT
multiplicador; divida este valor por 100.000 para controlar a razão de In para Out
Out
REAL
saída da instrução
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 150 Instrução:
Lógica Ladder:
POSP Posição Proporcional
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
POSP(POSP_tag);
A instrução POSP abre ou fecha um dispositivo através do pulso de contatos abertos ou fechados em um tempo de ciclo definido pelo usuário com uma largura de pulso proporcional à diferença entre as posições desejada e real.
Operando:
Tipo:
Formato:
Descrição:
Tag POSP
POSITION_PROP
estrutura
estrutura POSP (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro PositionPercent
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
SP
REAL
valor de setpoint; devem ser usadas as mesmas unidades de engenharia que Position
Position
REAL
realimentação da posição
OpenedFB
BOOL
realimentação aberta; quando ajustado, a saída aberta não pode ser ligada
ClosedFB
BOOL
realimentação fechada; quando ajustado, a saída fechada não pode ser ligada
OpenOut
BOOL
a saída é pulsada para abrir o dispositivo
CloseOut
BOOL
a saída é pulsada para fechar o dispositivo
11 - 151 Instrução:
Lógica Ladder:
POVR Comando Override de Fase do Equipamento Lógica Ladder e Texto Estruturado
Instrução:
PPD Fase de Equipamento Pausada
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
POVR(PhaseName, Command, Result);
Fornece o comando de reter, parar ou abandonar para uma fase do equipamento. Revogar todos os proprietários da fase do equipamento. O comando funciona mesmo que o software RSLogix 5000, RSBizWare Batch ou outro programa já possua a fase do equipamento.
Operando:
Tipo:
Formato:
Descrição:
Nome de fase
fase
nome da fase de equipamento
Fase do equipamento que você quer alterar para um estado diferente
Comando
comando
nome do comando
Um desses comandos para a fase do equipamento: • Demora • parar • abandonar
Resultado
DINT
imediato tag
Para permitir que a instrução retorne um código de retorno sobre seu sucesso/falha, digite um tag DINT onde armazenar o código do resultado. Do contrário, digite 0.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
PPD( );
A instrução PPD permite que você pare a execução numa determinada etapa (breakpoint) para testar e localizar falhas na lógica.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 152 Instrução:
PRNP Novos Parâmetros de Fase de Equipamento Instrução:
PSC Estado de Fase Completo
Instrução:
Lógica Ladder:
Texto Estruturado:
Descrição:
não disponível
PRNP( );
A instrução PRNP limpa o bit NewInputParameters da fase do equipamento.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
PSC( );
A instrução PSC indica a conclusão de uma rotina de estado de fase.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
PXRQ(Phase_Instruction, External_Request, Data_Value);
A instrução PXRQ envia uma solicitação ao software RSBizWare Batch.
PXRQ Solicitação Externa de Fase de Equipamento Lógica Ladder e Texto Estruturado
Bloco de Funções:
Operando:
Tipo:
Formato:
Descrição:
Instrução de fase
PHASE_INSTRUC TION
tag
tag que controla a operação
Solicitação Externa
request
name
tipo de solicitação
Valor de dado
DINT
tag do vetor
parâmetros da solicitação
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 153 Instrução:
Lógica Ladder:
Bloco de Funções:
RAD Radianos
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := RAD(source);
A instrução RAD converte Source (em graus) para radianos e armazena o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem
SINT INT
DINT REAL
imediato tag
valor a ser convertido em radianos
Destination
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag RAD
FBD_MATH_ ADVANCED
estrutura
estrutura RAD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
RES Reset
Parâmetro:
Tipo:
Descrição:
Origem
REAL
entrada para a instrução de conversão
Dest
REAL
resultado da instrução de conversão
não disponível
não disponível
Operando:
Tipo:
Formato:
Descrição:
estrutura
TIMER Control COUNTER
tag
estrutura para reset
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
A instrução RES restaura uma estrutura TIMER, COUNTER ou CONTROL.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 154 Instrução:
Lógica Ladder:
RESD Reset de Dominante
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
RESD(RESD_tag);
A instrução RESD usa as entradas Set e Reset para controlar saídas retidas. A entrada Reset predomina com relação à entrada Set.
Operando:
Tipo:
Formato:
Descrição:
Tag RESD
DOMINANT_ Reset
estrutura
estrutura RESD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Set
BOOL
define a entrada para a instrução
Reset
BOOL
restaura a entrada para a instrução
Out
BOOL
saída da instrução
OutNot
BOOL
saída invertida da instrução.
11 - 155 Instrução:
Lógica Ladder:
Bloco de Funções:
RET Retorno
Texto Estruturado:
Descrição:
RET(ReturnPar);
A instrução RET é uma instrução opcional que compartilha dados com a instrução JSR.
Operando:
Tipo:
Formato:
Descrição:
Parâmetro Return
BOOL DINT SINT REAL INT estrutura
imediato tag tag do vetor
dados nesta rotina na qual você quer copiar o parâmetro de retorno correspondente na instrução JSR
Flags de Status Aritmético:
Falhas Graves:
afetado
4
31
4
0
• a instrução JSR tem menos parâmetros de entrada do que a instrução SBR • a instrução RET tem menos parâmetros de retorno do que a instrução JSR • a rotina principal contém uma instrução RET a instrução JSR salta para a rotina de falha
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 156 Instrução:
Lógica Ladder:
RLIM Limitador de Taxa
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
RLIM(RLIM_tag);
A instrução RLIM limita a quantidade de troca de um sinal em um período
Operando:
Tipo:
Formato:
Descrição:
Tag RLIM
RATE_LIMITER
estrutura
estrutura RLIM (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
ByPass
BOOL
solicitação para ignorar o algoritmo; quando ajustado, Out = In
Out
REAL
saída calculada do algorítmo
11 - 157 Instrução:
Lógica Ladder:
RMPS Rampa/ Patamar
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
RMPS(RMPS_tag,RampValue, SoakValue,SoakTime);
A instrução RMPS permite diversos segmentos de período de alternância de rampa e patamar
Operando:
Tipo:
Formato:
Descrição:
Tag RMPS
RAMP_SOAK
estrutura
estrutura RMPS (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
PV
REAL
entrada de sinal analógico de temperatura redimensionado para a instrução
CurrentSegProg
DINT
valor de programa de segmento atual
OutProg
REAL
valor de programa de saída
SoakTimeProg
REAL
valor de programa de tempo de patamar
ProgProgReq
BOOL
solicitado pelo programa
ProgOperReq
BOOL
solicitado pelo operador do programa
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 158 Instrução:
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
RMPS Rampa/ Patamar
Parâmetro:
Tipo:
Descrição:
ProgAutoReq
BOOL
solicitação do modo automático do programa
(continuação)
ProgManualReq
BOOL
solicitação do modo manual do programa
ProgHoldReq
BOOL
solicitação do modo de retenção do programa
Out
REAL
saída da instrução
CurrentSeg
DINT
número atual do segmento
SoakTimeLeft
REAL
tempo de patamar restante
GuarRampOn
BOOL
status de rampa garantido
GuarSoakOn
BOOL
status de patamar garantido
ProgOper
BOOL
indicador de controle de programação/operação
Auto
BOOL
indicador de modo automático
Manual
BOOL
indicador de modo manual
Demora
BOOL
indicador de modo de retenção
RampValue
REAL
vetor
vetor do valor de rampa; digite um valor de rampa (em minutos) para cada segmento (0 para NumberOfSegs-1)
Valor de patamar
REAL
vetor
vetor do valor de patamar; digite um valor de patamar para cada segmento (0 para NumberOfSegs-1); o vetor deve ser no mínimo tão grande quanto NumberOfSegs
Tempo de patamar
REAL
vetor
vetor do tempo de patamar; digite um tempo de patamar (em minutos) para cada segmento (0 para NumberOfSegs-1)
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 159 Instrução:
Lógica Ladder:
RTO Temporizador Retentivo Ligado
Bloco de Funções:
Texto Estruturado:
Descrição:
veja RTOR
veja RTOR
A instrução RTO é um temporizador retentivo que acumula tempo quando a instrução está habilitada.
Operando:
Tipo:
Formato:
Descrição:
Temporizador
TIMER
tag
estrutura do temporizador
Pré-selecionado
DINT
imediato
quanto tempo atrasar (tempo acumulado)
Acum
DINT
imediato
número de ms que o contador contou; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 34
• .PRE < 0 • .ACC < 0
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 160 Instrução:
Lógica Ladder:
RTOR Temporizador Retentivo Ligado com Reset
Veja RTO
Bloco de Funções:
Texto Estruturado:
Descrição:
RTOR(RTOR_tag);
A instrução RTOR é um temporizador retentivo que acumula tempos quando TimerEnable é energizado.
Operando:
Tipo:
Formato:
Descrição:
Tag RTOR
FBD_TIMER
estrutura
estrutura RTOR (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
TimerEnable
BOOL
se estiver desenergizado, habilita o temporizador a executar e acumular tempos.
PRE
DINT
valor pré-configurado do temporizador em unidades de 1 ms
Reset
BOOL
solicitação para restaurar o temporizador
ACC
BOOL
tempo acumulado em milissegundos.
DN
BOOL
saída de temporização executada. Indica quando o ACC ≥ PRE
11 - 161 Instrução:
Lógica Ladder:
RTOS REAL para grupo
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
RTOS(Source,Dest);
A instrução RTOS produz a representação ASCII de um valor REAL.
Operando:
Tipo:
Formato:
Descrição:
Origem
REAL
tag
tag que contém o valor REAL
Destination
grupo
tag
tag para armazenar o valor ASCII
Flags de Status Aritmético:
Falhas Graves:
não afetados
4
51
O valor LEN do tag do grupo é maior que o tamanho de DATA da tag do grupo. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag do grupo. • se você inseriu o número de caracteres que o grupo contém no valor de LEN.
4
52
O grupo de saída é maior que o destino. Crie um tipo de dados novo que seja grande o bastante para o grupo de saída. Use o novo tipo de dados grupo como o tipo de dados de destino.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 162 Instrução:
Lógica Ladder:
Bloco de Funções:
SBR Sub-rotina
Texto Estruturado:
Descrição:
SBR(InputPar);
A instrução SBR é uma instrução opcional que compartilha dados com a instrução JSR.
Operando:
Tipo:
Formato:
Descrição:
Parâmetro de entrada
BOOL DINT SINT REAL INT estrutura
tag tag do vetor
o tag nesta rotina na qual você quer copiar o parâmetro de entrada correspondente da instrução JSR
Flags de Status Aritmético:
Falhas Graves:
afetado
4
31
4
0
Publicação 1756-QR107C-PT-P - Junho 2005
• a instrução JSR tem menos parâmetros de entrada do que a instrução SBR • a instrução RET tem menos parâmetros de retorno do que a instrução JSR • a rotina principal contém uma instrução RET a instrução JSR salta para a rotina de falha
11 - 163 Instrução:
Lógica Ladder:
SCL Conversão em Escala
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
SCL(SCL_tag);
A instrução SCL converte um valor de entrada fora de escala em um valor de ponto flutuante em unidades de engenharia.
Operando:
Tipo:
Formato:
Descrição:
Tag SCL
Scale
estrutura
Estrutura SCL (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída que representa o valor em escala da entrada analógica
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 164 Instrução:
Lógica Ladder:
SCRV Curva-S
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
SCRV(SCRV_tag);
A instrução SCRV desempenha uma função de rampa com uma taxa de jerk adicional. A taxa de jerk é a taxa máxima de mudança da taxa usada para fazer a rampa de saída para entrada.
Operando:
Tipo:
Formato:
Descrição:
Tag SCRV
S_CURVE
estrutura
estrutura SCRV (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída da instrução
11 - 165 Instrução:
Lógica Ladder:
SEL Seletor
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
A instrução SEL usa uma entrada digital para selecionar uma de duas entradas.
Operando:
Tipo:
Formato:
Descrição:
Tag SEL
SELECT
estrutura
estrutura SEL (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In1
REAL
primeira entrada de sinal analógico para a instrução
In2
REAL
segunda entrada de sinal analógico para a instrução
SelectorIn
BOOL
entrada que seleciona entre In1 e In2
Out
REAL
saída calculada do algorítmo
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 166 Instrução:
Lógica Ladder:
SETD Ajustar Dominante
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
SETD(SETD_tag);
A instrução SETD usa as entradas Set e Reset para controlar saídas retidas. A entrada Set predomina com relação à entrada Reset.
Operando:
Tipo:
Formato:
Descrição:
Tag SETD
DOMINANT_SET
estrutura
estrutura SETD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Set
BOOL
define a entrada para a instrução
Reset
BOOL
restaura a entrada para a instrução
Out
BOOL
saída da instrução
OutNot
BOOL
saída invertida da instrução.
11 - 167 Instrução:
Lógica Ladder:
SFP Pausar SFC
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SFP(SFCRoutineName, TargetState);
A instrução SFP interrompe uma rotina SFC.
Operando:
Tipo:
Formato:
Descrição:
Nome de SFCRoutine
ROUTINE
name
rotina SFC para pausar
Estado alvo
DINT
imediato tag
seleciona em execução (insira 0) ou pausado (insira 1)
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SFR(SFCRoutineName StepName);
A instrução SFR rearma a execução de uma rotina SFC em uma etapa especificada.
SFR Reset SFC
Código 85
o tipo de rotina não é uma rotina SFC
Operando:
Tipo:
Formato:
Descrição:
Nome de SFCRoutine
ROUTINE
name
rotina SFC para rearmar
Nome de etapa
SFC_STEP
tag
etapa alvo quando recomeçar a execução
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 85
o tipo de rotina não é uma rotina SFC
Tipo 4
Código 89
a etapa alvo especificada não existe na rotina SFC
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 168 Instrução:
Lógica Ladder:
Bloco de Funções:
SIN Seno
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Origem
SINT INT
Destino
SINT INT
Operando: Tag SIN
Texto Estruturado:
Descrição:
dest := SIN(source);
A instrução SIN calcula o seno de Source (em radianos) e armazena o resultado em Destination.
Formato:
Descrição:
DINT REAL
imediato tag
encontre o seno deste valor.
DINT REAL
tag
tag para armazenar o resultado
Tipo:
Formato:
Descrição:
FBD_MATH_ ADVANCED
estrutura
estrutura SIN (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Origem
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática.
11 - 169 Instrução:
Lógica Ladder:
SIZE Tamanho em Elementos
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução SIZE encontra o tamanho de uma dimensão de um vetor.
Operando:
Tipo:
Formato:
Descrição:
Origem
SINT DINT INT REAL estrutura string
tag do vetor
vetor no qual a instrução é operar
Dimensão a variar
DINT
imediato (0, 1, 2)
a dimensão a ser usada insira 0 (primeira dimensão), 1 (segunda dimensão), ou 2 (terceira dimensão)
SIZE
SINT INT
tag
tag para armazenar o número de elementos na dimensão especificada do vetor
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 170 Instrução:
Lógica Ladder:
SNEG Negação Selecionada
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
SNEG(SNEG_tag);
A instrução SNEG usa uma entrada digital para selecionar entre o valor de entrada e o negativo do valor de entrada.
Operando:
Tipo:
Formato:
Descrição:
Tag SNEG
SELECTABLE_ NEGATE
estrutura
estrutura SNEG (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
NegateEnable
BOOL
quando NegateEnable está definido, a instrução define Out para o valor negativo de In
Out
REAL
saída calculada do algorítmo
11 - 171 Instrução:
Lógica Ladder:
SOC Controlador de Segunda Ordem
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
SOC(SOC_tag);
A instrução SOC é projetada para uso em sistema de controle de malha fechada de modo semelhante à instrução PI. A instrução SOC fornece um termo de ganho, um lag de primeira ordem e um lead de segunda ordem.
Operando:
Tipo:
Formato:
Descrição:
Tag SOC
SEC_ORDER_ CONTROLLER
estrutura
estrutura SOC (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
Out
REAL
saída calculada do algorítmo
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 172 Instrução:
Lógica Ladder:
SQI Entrada do Seqüenciador
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução SQI detecta quando uma etapa é concluída em um par de seqüência de instruções SQO/SQI.
Operando:
Tipo:
Formato:
Descrição:
Vetor
DINT
tag do vetor
vetor do seqüenciador; especifique o primeiro elemento do vetor do seqüenciador não use CONTROL.POS no subscrito
Máscara
SINT INT
DINT
tag imediato
quais bits bloquear ou passar
Origem
SINT INT
DINT
tag
dados de entrada para o vetor do seqüenciador
CONTROL
Control
tag
estrutura de controle para a operação; use normalmente o mesmo CONTROL que as instruções SQO e SQL
Comprimento
DINT
imediato
número de elementos no vetor (tabela do seqüenciador) para comparar
Posição
DINT
imediato
posição atual no vetor; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 173 Instrução:
Lógica Ladder:
SQL Carga do Seqüenciador
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução SQL carrega as condições de referência em um vetor do seqüenciador.
Operando:
Tipo:
Formato:
Descrição:
Vetor
DINT
tag do vetor
vetor do seqüenciador; especifique o primeiro elemento do vetor do seqüenciador não use CONTROL.POS no subscrito
Origem
SINT INT
tag imediato
dados de entrada para carregar no vetor do seqüenciador
CONTROL
Control
tag
estrutura de controle para a operação; use normalmente o mesmo CONTROL que as instruções SQI e SQO
Comprimento
DINT
imediato
número de elementos no vetor (tabela do seqüenciador) para carregar
Posição
DINT
imediato
posição atual no vetor; o valor inicial é normalmente 0
DINT
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 20
Comprimento > tamanho de vetor
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 174 Instrução:
Lógica Ladder:
SQO Saída do Seqüenciador
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução SQO define as condições de saída para a próxima etapa de um par de seqüência das instruções SQO/SQI.
Operando:
Tipo:
Formato:
Descrição:
Vetor
DINT
tag do vetor
vetor do seqüenciador; especifique o primeiro elemento do vetor do seqüenciador não use CONTROL.POS no subscrito
Máscara
SINT INT
tag imediato
quais bits bloquear ou passar
Destino
DINT
tag
dados de saída do vetor do seqüenciador
CONTROL
Control
tag
estrutura de controle para a operação; use normalmente o mesmo CONTROL que as instruções SQI e SQL
Comprimento
DINT
imediato
número de elementos no vetor (tabela do seqüenciador) para saída
Posição
DINT
imediato
posição atual no vetor; o valor inicial é normalmente 0
DINT
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 175 Instrução:
Lógica Ladder:
Bloco de Funções:
SQR Raiz Quadrada
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := SQRT(source);
A instrução SQR calcula a raiz quadrada de Source e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem
SINT INT
DINT REAL
imediato tag
calcula a raiz quadrada desse valor
Destino
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag SQR
FBD_MATH_ ADVANCED
estrutura
estrutura SQR (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Parâmetro:
Tipo:
Descrição:
Origem
REAL
calcula a raiz quadrada desse valor
Dest
REAL
resultado da instrução matemática.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 176 Instrução:
Lógica Ladder:
SRT Classificação de Arquivo
Operando:
Tipo:
Vetor
SINT INT
Dimensão a variar
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SRT(vetor,Dimtovary, Control);
A instrução SRT classifica um conjunto de valores em uma dimensão (Dim to vary) do vetor em ordem crescente.
Formato:
Descrição:
tag do vetor
vetor a classificar; especifique o primeiro elemento do grupo de elementos a ser classificado não use CONTROL.POS no subscrito
DINT
imediato (0, 1, 2)
a dimensão a ser usada a ordem é: vetor[dim_0,dim_1,dim_2] depois vetor[dim_0,dim_1] depois vetor[dim_0]
CONTROL
Control
tag
estrutura de controle para a operação
Comprimento
DINT
imediato
número de elementos do vetor para classificação
Posição
DINT
imediato
elemento atual no vetor; o valor inicial é normalmente 0
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Código 20
Tipo 4
Código 21
Publicação 1756-QR107C-PT-P - Junho 2005
• A instrução tenta acessar os dados localizados fora dos limites do vetor. • o operando Dimension to vary não existe para o vetor especificado .POS < 0 ou .LEN < 0
11 - 177 Instrução:
Lógica Ladder:
SRTP Dividir Faixa Proporcional
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
SRTP(SRTP_tag);
A instrução SRTP usa a saída 0-100% de uma malha PID e direciona os contatos de saída digital de aquecimento e resfriamento com um pulso periódico. Esta instrução controla aplicações como um cilindro de controle de temperatura em máquinas de extrusão.
Operando:
Tipo:
Formato:
Descrição:
Tag SRTP
SPLIT_RANGE
estrutura
estrutura SRTP (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
define os parâmetros HeatTimePercent e CoolTimePercent
nenhuma
Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico solicitando aquecimento ou resfriamento
HeatOut
BOOL
pulso de saída de aquecimento
CoolOut
BOOL
pulso de saída de resfriamento
HeatTimePercent
REAL
percentual calculado do ciclo atual no qual estará HeatOut
CoolTimePercent
REAL
percentual calculado do ciclo atual no qual estará CoolOut
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 178 Instrução:
Lógica Ladder:
SSUM Selected Summer
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
SSUM(SSUM_tag);
A instrução SSUM usa entrada booleanas para selecionar entradas reais a serem somadas.
Operando:
Tipo:
Formato:
Descrição:
Tag SSUM
SELECTABLE_ SUMMER
estrutura
estrutura SSUM (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Inx
REAL
entrada, onde x = 1-4
Selectx
BOOL
seletor de sinal para entrada associada, onde x = 1-4
Out
REAL
saída calculada do algorítmo
11 - 179 Instrução:
Lógica Ladder:
SSV Ajustar Valor do Sistema
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SSV(ClassName, InstanceName, AttributeName,Source);
As instruções GSV/SSV obtêm e definem os dados do sistema do controlador que estão armazenados nos objetos.
Operando:
Tipo:
Formato:
Descrição:
Nome de classe
na
name
nome do objeto
Nome da instância
na
name
nome do objeto específico, quando o objeto requisitar um nome
Nome do atributo
na
name
atributo de um objeto; o tipo de dados depende do atributo selecionado
Origem
SINT INT
tag
tag que contenha dados que você quer copiar para o atributo
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 5
Tipo 4
Código 6
Tipo 4
Código 7
endereço de objeto inválido • especificado um objeto que não suporta GSV/SSV • atributo inválido • informações suficientes não foram fornecidas para uma instrução SSV o destino GSV não era grande o suficiente para suportar os dados requisitados
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 180 Instrução:
Lógica Ladder:
STD Desvio Padrão
Operando:
Tipo:
Vetor
SINT INT
Dimensão a variar
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
não disponível
A instrução STD calcula o desvio padrão de um conjunto de um conjunto de valores em uma dimensão do vetor e armazena o resultado em Destination.
Formato:
Descrição:
tag do vetor
encontra o desvio padrão dos valores nesse vetor especifica o primeiro elemento do grupo de elementos a serem usados no cálculo do desvio padrão não use CONTROL.POS no subscrito
DINT
imediato (0, 1, 2)
a dimensão a ser usada a ordem é: vetor[dim_0,dim_1,dim_2] depois vetor[dim_0,dim_1] depois vetor[dim_0]
Destino
REAL
tag
resultado da operação
CONTROL
Control
tag
estrutura de controle para a operação
Comprimento
DINT
imediato
número de elementos do vetor a serem usados no cálculo do desvio padrão
Posição
DINT
imediato
elemento atual no vetor; o valor inicial é normalmente 0
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Código 20
o operando Dimension to vary não existe para o vetor especificado
Tipo 4
Código 21
.POS < 0 ou .LEN < 0
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 181 Instrução:
Lógica Ladder:
STOD String para DINT Operando:
Tipo:
Origem
string
Destino
SINT INT
DINT REAL
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
STOD(Source,Dest);
A instrução STOD converte a representação ASCII de um inteiro para um valor inteiro ou REAL.
Formato:
Descrição:
tag
tag que contém o valor em ASCII
tag
tag para armazenar o valor inteiro; se o valor de Source for um número de ponto flutuante, a instrução converte apenas a parte não fracionária do número, independentemente do tipo de dados de destino.
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Código 51
O valor LEN do tag da string é maior que o tamanho de DATA da tag da string. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag da string. • se você inseriu o número de caracteres que a string contém no valor de LEN.
Tipo 4
Código 53
O número de saída está além dos limites do tipo de dados de destino. Ou: • reduza o tamanho do valor de ASCII. • use um tipo de dados maior para Destination.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 182 Instrução:
Lógica Ladder:
STOR String para REAL
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
STOR(Source,Dest);
A instrução STOR converte a representação ASCII de um valor de ponto flutuante para um valor REAL.
Operando:
Tipo:
Formato:
Descrição:
Origem
string
tag
tag que contém o valor em ASCII
Destino
REAL
tag
tag para armazenar o valor REAL
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Código 51
O valor LEN do tag da string é maior que o tamanho de DATA da tag da string. Verifique: • se nenhuma instrução está escrevendo para o membro LEN do tag da string. • se você inseriu o número de caracteres que a string contém no valor de LEN.
Tipo 4
Código 53
O número de saída está além dos limites do tipo de dados de destino. Ou: • reduza o tamanho do valor de ASCII. • use um tipo de dados maior para Destination.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 183 Instrução:
Lógica Ladder:
Bloco de Funções:
SUB Subtração
Lógica Ladder e Texto Estruturado
Bloco de Funções
Operando:
Tipo:
Origem A
SINT INT
Origem B
Texto Estruturado:
Descrição:
dest := sourceA - sourceB;
A instrução SUB subtrai Source B de Source A e coloca o resultado em Destination
Formato:
Descrição:
DINT REAL
imediato tag
valor a partir do qual se subtrai Source B
SINT INT
DINT REAL
imediato tag
valor a ser subtraído de Source A
Destino
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag SUB
FBD_MATH
estrutura
estrutura SUB (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Parâmetro:
Tipo:
Descrição:
SourceA
REAL
valor a partir do qual se subtrai Source B
SourceB
REAL
valor a ser subtraído de Source A
Dest
REAL
resultado da instrução matemática.
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 184 Instrução:
Lógica Ladder:
SWPB Byte de Troca
Operando:
Tipo:
Origem
INT DINT
Modo de Solicitação
na
Destino
INT DINT
REAL
REAL
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
SWPB(Source,OrderMode, Dest);
A instrução SWPB reorganiza os bytes de um valor.
Formato:
Descrição:
tag
tag que contém os bytes que você quer reorganizar
REVERSE WORD HIGH/LOW
como deseja mudar a ordem dos bytes
tag
tag para armazenar os bytes em uma nova ordem
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 185 Instrução:
Lógica Ladder:
Bloco de Funções:
TAN Tangente
Lógica Ladder e Texto Estruturado
Bloco de Funções
Instrução:
TND Fim Temporário
Operando:
Tipo:
Origem
SINT INT
Destino
SINT INT
Operando: Tag TAN
Texto Estruturado:
Descrição:
dest := TAN(source);
A instrução TAN calcula a tangente de Source (em radianos) e armazena o resultado em Destination.
Formato:
Descrição:
DINT REAL
imediato tag
encontre a tangente deste valor
DINT REAL
tag
tag para armazenar o resultado
Tipo:
Formato:
Descrição:
FBD_MATH_ ADVANCED
estrutura
estrutura TAN (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
Origem
REAL
entrada para a instrução matemática
Dest
REAL
resultado da instrução matemática.
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
TND
A instrução TND atua como um limite.
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 186 Instrução:
Lógica Ladder:
Bloco de Funções:
TOD Converter em BCD Lógica Ladder
Bloco de Funções
Operando:
Tipo:
Origem
SINT INT
Destino
SINT INT
Operando: Tag TOD
Texto Estruturado:
Descrição:
não disponível
A instrução TOD converte um valor decimal (0 ≤ Source ≤ 99,999,999) em um valor BCD e armazena o resultado em Destination.
Formato:
Descrição:
DINT
imediato tag
valor a ser convertido
DINT
tag
tag para armazenar o resultado
Tipo:
Formato:
Descrição:
FBD_CONVERT
estrutura
estrutura TOD (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Origem
DINT
entrada para a instrução de conversão.
Dest
DINT
resultado da instrução de conversão
Código 4
Source < 0
11 - 187 Instrução:
Lógica Ladder:
TOF Timer Off Delay
Bloco de Funções:
Texto Estruturado:
Descrição:
veja TOFR
veja TOFR
A instrução TOF é um temporizador não retentivo que acumula tempo quando a instrução está habilitada (entrada da condição da linha é falsa).
Operando:
Tipo:
Formato:
Descrição:
Temporizador
TIMER
tag
estrutura do temporizador
Pré-selecionado
DINT
imediato
quanto tempo atrasar (tempo acumulado)
Acum
DINT
imediato
número de mseg que o contador contou; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 34
• .PRE < 0 • .ACC < 0
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 188 Instrução:
Lógica Ladder:
TOFR Atraso de Temporizador Desligado com Reset
Vetor TOF
Bloco de Funções:
Texto Estruturado:
Descrição:
TOFR(TOFR_tag);
A instrução TOFR é um temporizador retentivo que acumula tempos quando TimerEnable está desenergizado.
Operando:
Tipo:
Formato:
Descrição:
Tag TOFR
FBD_TIMER
estrutura
estrutura TOFR (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
TimerEnable
BOOL
se estiver desenergizado, habilita o temporizador a executar e acumular tempos
PRE
DINT
valor pré-configurado do temporizador em unidades de 1 ms
Reset
BOOL
solicitação para restaurar o temporizador
ACC
BOOL
tempo acumulado em milissegundos.
DN
BOOL
saída de temporização executada. Indica quando o ACC ≥ PRE
11 - 189 Instrução:
Lógica Ladder:
TON Temporizador Ligado com Retardo
Bloco de Funções:
Texto Estruturado:
Descrição:
veja TONR
veja TONR
A instrução TON é um temporizador não retentivo que acumula tempo quando a instrução está habilitada (entrada da condição da linha é verdadeira).
Operando:
Tipo:
Formato:
Descrição:
Temporizador
TIMER
tag
estrutura do temporizador
Pré-selecionado
DINT
imediato
quanto tempo atrasar (tempo acumulado)
Acum
DINT
imediato
número de mseg que o contador contou; o valor inicial é normalmente 0
Flags de Status Aritmético:
Falhas Graves:
não afetados
Tipo 4
Código 34
• .PRE < 0 • .ACC < 0
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 190 Instrução:
Lógica Ladder:
TONR Temporizador Ligado com Atraso com Retardo
Vetor TON
Bloco de Funções:
Texto Estruturado:
Descrição:
TONR(TONR_tag);
A instrução TONR é um temporizador retentivo que acumula tempos quando TimerEnable está energizado.
Operando:
Tipo:
Formato:
Descrição:
Tag TONR
FBD_TIMER
estrutura
estrutura TONR (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
TimerEnable
BOOL
se estiver desenergizado, habilita o temporizador a executar e acumular tempos.
PRE
DINT
valor pré-configurado do temporizador em unidades de 1 ms
Reset
BOOL
solicitação para restaurar o temporizador
ACC
BOOL
tempo acumulado em milissegundos.
DN
BOOL
saída de temporização executada. Indica quando o ACC ≥ PRE
11 - 191 Instrução:
Lógica Ladder:
TOT Totalizar
não disponível
Bloco de Funções:
Texto Estruturado:
Descrição:
TOT(TOT_tag);
A instrução TOT fornece um acúmulo em escala de tempo de um valor de entrada analógica
Operando:
Tipo:
Formato:
Descrição:
Tag TOT
TOTALIZER
estrutura
estrutura TOT (parâmetros padrão): Parâmetro:
Tipo:
Descrição:
In
REAL
entrada de sinal analógico para a instrução
ProgProgReq
BOOL
solicitado pelo programa
ProgOperReq
BOOL
solicitado pelo operador do programa
ProgStartReq
BOOL
solicitação de inicialização do programa
ProgStopRequest
BOOL
solicitação de parada do programa
ProgResetReq
BOOL
solicitação de reset do programa
continuação
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 192 Instrução:
Lógica Ladder:
Bloco de Funções:
TOT Totalizar (continuação)
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Total
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Texto Estruturado:
Descrição:
Parâmetro:
Tipo:
Descrição:
Total
REAL
o valor total de In
OldTotal
REAL
o valor do total antes da ocorrência de reset
ProgOper
BOOL
indicador de controle de programação/operação
RunStop
BOOL
o indicador do estado operacional do totalizador
ProgResetDone
BOOL
o indicador de que a instrução TOT concluiu uma solicitação de reset de programa
TargetFlag
BOOL
o flag de Total; ajuste quando Total ≥ Target
TargetDev1Flag
BOOL
o flag de TargetDev1; ajuste quando Total ≥ Target - TargetDev1
TargetDev2Flag
BOOL
o flag de TargetDev2; ajuste quando Total ≥ Target - TargetDev2
11 - 193 Instrução:
Lógica Ladder:
Bloco de Funções:
TRN Truncar
Lógica Ladder e Texto Estruturado
Bloco de Funções
Instrução:
Texto Estruturado:
Descrição:
dest := TRUNC(source);
A instrução TRN remove (trunca) a parte fracionária de Source e armazena o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem
REAL
imediato tag
valor a ser truncado
Destino
SINT INT
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag TRN
FBD_ TRUNCATE
estrutura
estrutura TRN (parâmetros padrão):
DINT REAL
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Lógica Ladder:
Bloco de Funções:
Parâmetro:
Tipo:
Descrição:
Origem
REAL
Entrada para a instrução de conversão.
Dest
DINT
Resultado da instrução matemática.
Texto Estruturado:
Descrição:
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 194 Instrução:
UID Desativar Interrupção do Usuário UIE Ativar Interrupção do Usuário UPDN Acumulador Cresc/Decresc
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
UID();
A instrução UID e a instrução UIE trabalham juntas para evitar que um número pequeno de linhas críticas sejam interrompidas por outras tarefas.
UIE
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
não disponível
A instrução UPDN adiciona ou subtrai duas entradas em um valor acumulado.
UPDN(UPDN_tag);
Operando:
Tipo:
Formato:
Descrição:
Tag UPDN
UP_DOWN_ Accum
estrutura
estrutura UPDN (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
ajuste para o parâmetro Out
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
InPlus
REAL
entrada adicionada ao acumulador
InMinus
REAL
entrada subtraída do acumulador
Out
REAL
saída da instrução
11 - 195 Instrução:
Lógica Ladder:
UPPER Maiúsculas
Instrução:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
UPPER(Source,Dest);
A instrução UPPER converte os caracteres alfabéticos em uma string para caracteres de letras maiúsculas.
Operando:
Tipo:
Formato:
Descrição:
Origem
string
tag
o tag que contém os caracteres que você quer converter em letras maiúsculas
Destino
string
tag
tag para armazenar os caracteres em letra maiúsculas
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Lógica Ladder:
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
IF data_bit THEN ; END_IF;
A instrução XIC examina o bit de dados para verificar se ele está energizado.
XIC Examinar se Fechado Operando:
Tipo:
Formato:
Descrição:
bit de dados
BOOL
tag
bit a ser testado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 196 Instrução:
Lógica Ladder:
XIO Examinar se Aberto
Bloco de Funções:
Texto Estruturado:
Descrição:
não disponível
IF NOT data_bit THEN ; END_IF;
A instrução XIO examina o bit de dados para verificar se ele está desenergizado.
Operando:
Tipo:
Formato:
Descrição:
bit de dados
BOOL
tag
bit a ser testado
Flags de Status Aritmético:
Falhas Graves:
não afetados
nenhuma
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 197 Instrução:
Lógica Ladder:
Bloco de Funções:
XOR OU Exclusivo Orientado por Bit Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := sourceA XOR sourceB
A instrução XOR realiza uma operação XOR usando os bits em Source A e Source B e coloca o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem A
SINT INT
DINT
imediato tag
valor para XOR com Source B
Origem B
SINT INT
DINT
imediato tag
valor para XOR com Source A
Destino
SINT INT
DINT
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag XOR
FBD_LOGICAL
estrutura
estrutura XOR (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
nenhuma
Parâmetro:
Tipo:
Descrição:
SourceA
DINT
valor para XOR com Source B
SourceB
DINT
valor para XOR com Source A
Dest
DINT
resultado da instrução
Publicação 1756-QR107C-PT-P - Junho 2005
11 - 198 Instrução:
Lógica Ladder:
Bloco de Funções:
XPY X à Potência de YY
Lógica Ladder e Texto Estruturado
Bloco de Funções
Texto Estruturado:
Descrição:
dest := sourceX ** sourceY;
A instrução XPY calcula Source A (X) para a alimentação de Source B (Y) e armazena o resultado em Destination.
Operando:
Tipo:
Formato:
Descrição:
Origem X
SINT INT
DINT REAL
imediato tag
valor de base
Origem Y
SINT INT
DINT REAL
imediato tag
expoente
Destino
SINT INT
DINT REAL
tag
tag para armazenar o resultado
Operando:
Tipo:
Formato:
Descrição:
Tag XPY
FBD_MATH
estrutura
estrutura LOXPY (parâmetros padrão):
Flags de Status Aritmético:
Falhas Graves:
afetado
Tipo 4
Publicação 1756-QR107C-PT-P - Junho 2005
Parâmetro:
Tipo:
Descrição:
Origem X
REAL
imediato tag
valor de base
Origem Y
REAL
imediato tag
expoente
Dest
REAL
tag
tag para armazenar o resultado
Código 4
Source X é negativo e Source Y não é um valor inteiro
Suporte da Rockwell Automation A Rockwell Automation fornece informações técnicas na web para auxiliá-lo a utilizar nossos produtos. No endereço http://support.rockwellautomation.com, é possível encontrar manuais técnicos, uma variedade de Perguntas Freqüentes (FAQs), notas técnicas e de aplicação, códigos de amostra e links para service packs de software, além do recurso MySupport que você pode personalizar para aproveitar ao máximo estas ferramentas. Para um nível adicional de suporte técnico por telefone para instalação, configuração e localização de falhas, oferecemos programas de Suporte TechConnect. Para mais informações, entre em contato com seu distribuidor local ou com um representante da Rockwell Automation, ou visite o site http://support.rockwellautomation.com.
Assistência para Instalação Se tiver problemas com um módulo de hardware em um período de 24 horas a partir da instalação, verifique as informações contidas neste manual. Você também pode entrar em contato através de um número especial de Suporte ao Cliente para obter assistência na instalação e operação de seu módulo: Estados Unidos
1.440.646.3223 Segunda a sexta-feira, 8h – 17h
Fora dos Estados Unidos
Entre em contato com seu representante Rockwell Automation local para qualquer questão de suporte técnico.
Publicação 1756-QR107C-PT-P - Junho 2005
Devolução por Satisfação com Novo Produto A Rockwell testa todos os nossos produtos para garantir que eles funcionem perfeitamente quando enviados às instalações industriais. Entretanto, se seu produto não estiver funcionando e necessitar ser devolvido: Estados Unidos
Entre em contato com seu distribuidor. É necessário fornecer um número de caso de Suporte ao Cliente (consulte o item acima para obter o número) ao seu distribuidor a fim de concluir o processo de devolução.
Fora dos Estados Unidos
Entre em contato com seu representante local da Rockwell Automation para verificar o procedimento de devolução.
Publicação 1756-QR107C-PT-P - Junho 2005 Substitui a publicação 1756-QR107B-PT-P - Junho de 2003
PN 957955-92 Copyright © 2005 Rockwell Automation. Todos os direitos reservados. Impresso nos E.U.A.