ControlLogix 1756, CompactLogix 1769, SoftLogix 1789,
FlexLogix 1794, PowerFlex 700S com DriveLogix
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.
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
Capítulo 1
Controladores Logix
Família Logix de Controladores. . . 1-1
Controladores ControlLogix (1756-L6x, L55Mxx) . . . 1-2
Controladores CompactLogix (1769-Lxx) . . . 1-4
Controladores FlexLogix (1794-L34) . . . 1-10
Controladores SoftLogix5800 (1789-L10, -L30, -L60) . . . 1-12
PowerFlex 700S com DriveLogix5720 . . . 1-14
PowerFlex 700S com DriveLogix5730 . . . 1-16
Comparação de Controlador . . . 1-18
Seleção do Modo de Operação do Controlador. . . . 1-21
Memória Não-Volátil . . . 1-22
Criação de um Projeto . . . 1-24
Organizador do Controlador . . . 1-25
Tarefas do Controlador. . . 1-26
Códigos de Acesso do Controlador . . . 1-30
Aliases . . . 1-33
Seleção de uma Linguagem de Programação . . . 1-34
Capítulo 2
Controle Seqüencial de Funções
Edição de um SFC . . . 2-4
Qualificadores . . . 2-10
Como Você Quer Usar a Ação? . . . 2-12
Configuração da Execução de um SFC . . . 2-13
Capítulo 3
Texto Estruturado
Sintaxe do Texto Estruturado . . . 3-1
Atributos . . . 3-4
Expressões. . . 3-6
Determinação da seqüência de execução . . . 3-12
Instruções . . . 3-13
Construções . . . 3-15
Comentários . . . 3-25
Capítulo 4
Diagrama de Blocos de Funções
Edição de um Diagrama de Blocos de Funções. . . . 4-2
Seqüência de Execução . . . 4-5
Determinação de uma Malha . . . 4-7
Determinação do Fluxo de Dados Entre Dois Blocos . . . 4-9
Criação de um Atraso de Varredura . . . 4-10
Resumo . . . 4-10
Definição do Controle de Programação/Operação . . . 4-11
Capítulo 5
Lógica Ladder
Lógica Ladder . . . 5-1
Edição de Lógica Ladder. . . 5-3
Condição de linha . . . 5-4
Capítulo 6
Acesso aos Valores de Sistema
Valores de Sistema Armazenados pelo Controlador . . . 6-1
Monitoração de Flags de Status. . . 6-2
Obtenção e Definição de Dados do
Sistema (Informações de Status) . . . 6-3
Informações de Status Disponíveis - Objetos GSV/SSV. . . 6-5
Determinação das Informações sobre a
Memória do Controlador . . . 6-26
Capítulo 7
Comunicação com Outros
Controladores
Opções de Comunicação . . . 7-1
Produção e Consumo de um Tag . . . 7-2
Envio de uma Mensagem . . . 7-9
Mapear os Endereços CLP/SLC . . . 7-13
Envie uma Mensagem para Dispositivos Múltiplos . . . 7-15
Capítulo 8
Forcing
O Que Pode ser Forçado . . . 8-1
Force de E/S . . . 8-4
Acompanhamento de uma Transição . . . 8-7
Force de um SFC . . . 8-7
Capítulo 9
Falhas do Controlador . . . 9-1
Falhas do Sistema
Falha Grave . . . 9-2
Códigos de Falhas Graves. . . 9-7
Falhas de Advertência . . . 9-10
Códigos de Falha de Advertência . . . 9-13
Falhas Definidas Pelo Usuário. . . 9-15
Capítulo 10
Estruturas de Dados
Estruturas Comuns . . . 10-1
Capítulo 11
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
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 ControlLogix
Plataforma de controle de alto desempenho e multi-processamento
SoftLogix5800
Controle de alto desempenho, baseado em microcomputador
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.
E/S 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.
FORCE 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.
RS232 desligado Não há atividade.
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.
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. 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.
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.
FORCE 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.
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.
E/S 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.
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. 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. DCH0
(RS-232) desligado As comunicações configuradas pelo usuário estão ativas. verde sólido A comunicação padrão está ativa.
Channel 1 (RS-232) (1769-L31, -L30 somente)
desligado Não há atividade.
verde sólido Dados sendo recebidos ou transmitidos.
Controladores CompactLogix (1769-L31, -L32E, -L35E, -L32C, -L35CR) - CompactFlash
Controladores CompactLogix (1769-L32E, -L35E) - EtherNet
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.
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
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.
EtherNet/IP LNK 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.
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
Indicador: Se os dois indicadores de canal estiverem:
Descrição:
ControlNet (1) desligado um canal está desabilitado. verde estável operação normal em andamento. verde
intermitente/desligado
ocorreram erros temporários de rede.
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:
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.
(1) 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
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.
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. 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. BATTERY desligado A bateria suporta a memória.
vermelho A bateria:
• não está instalada.
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.
local e LOCAL2
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.
RS232 desligado Não há atividade.
verde sólido Dados sendo recebidos ou transmitidos.
FORCE 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.
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.
E/S 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. FRC 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. RS232(1) 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.
BAT(1) desligado Operação normal.
âmbar intermitente O controlador está no modo de energização vermelho sólido Falha no armazenamento contínuo no controlador.
OK 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. 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.
(1) Observe que estas funções de LED diferem ligeiramente dos mesmos LEDs em um controlador ControlLogix.
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.
FORCE 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. 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.
E/S 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
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.
OK 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 Uma falha grave ocorreu. Para apagar a falha: novo - 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. 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.
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.
FORCE 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.
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.
E/S 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.
COM desligado Sem atividade no RS-232. verde intermitente Atividade no RS-232.
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 Uma falha grave ocorreu.
novo 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. 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.
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 750 Kbytes 1756-L55M13 1,5 Mbytes 1756-L55M14 3,5 Mbytes 1756-L55M16 7,5 Mbytes 1756-L55M22 750 Kbytes 1756-L55M23 1,5 Mbytes 1756-L55M24 3,5 Mbytes 1756-L61 2 Mbytes 1756-L62 4 Mbytes 1756-L63 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 512 Kbits 5720 256 Kbytes 768 Kbytes com memória de expansão 5730 1,5 Mbytes
memória não-volátil do usuário 1756-L55M12 nenhuma 1756-L55M13 nenhuma 1756-L55M14 nenhuma 1756-L55M16 nenhuma 1756-L55M22 sim 1756-L55M23 sim 1756-L55M24 sim 1756-L6x CompactFlash
CompactFlash nenhuma sim 5720 sim (memória
de expansão) 5730 CompactFlash
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
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 1794FLEX 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 painelGuia DIN incorporado
linguagens de programação • 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 •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
Características Comuns ControlLogix 1756 CompactLogix 1769 SoftLogix 1789 FlexLogix 1794 PowerFlex 700S com DriveLogix
Seleção do Modo de Operação do Controlador.
Use esta tabela para determinar o modo de operação do controlador:
Gire a chave no painel frontal do controlador para selecionar o modo.
Se você quiser: Selecione um destes modos:
Run Remote Program
Run Test Program
mudar as saídas para o estado comandado pela lógica do projeto X X
mudar as saídas para seus estados configurados para o modo Program X X X
executa (varredura) tarefas X X X
muda o modo do controlador através do software X X X
descarregar um projeto X X X X
programar uma rede ControlNet X X
enquanto estiver on-line, editar o projeto X X X X
enviar mensagens X X X
enviar e receber dados em resposta a uma mensagem de outro controlador X X X X X
Memória Não-Volátil
Estes controladores possuem memória não-volátil para armazenamento do projeto.
Tipo de Controlador: Código de Catálogo: Revisão de Firmware:
CompactLogix5332E 1769-L32E(1)
(1)
13.x ou superior
CompactLogix5335E 1769-L35E(1) 12.x ou superior
CompactLogix5331 1769-L31(1) 13.x ou superior CompactLogix5332C 1769-L32C(1) 13.x ou superior CompactLogix5335CR 1769-L35CR(1) 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(1) 12.x ou superior para série A
13.x ou superior para série B
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
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).
Criação de um Projeto
Organizador do Controlador
O software de programação usa o Organizador do Controlador para definir um projeto.
Tarefa Contínua Program Rotina Principal Rotina Tarefa Tarefa Periódica
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.
O número de tarefas suportadas depende do controlador:
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).
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
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 DriveLogix5720 X X X X DriveLogix5730 X X X X X SoftLogix5800 X(1)
(1) Requer um módulo de E/S 1756 ou um backplane virtual. X(2)
(2) Um controlador SoftLogix5800 produz e consome códigos de acesso somente em uma rede ControlNet.
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-IG16 1756-IT6I2 1789 Genérico 1789-MODULE
1756-IH16I, -IH16ISOE 1756 Especializado 1756-CFM/A
1756-IM16I 1756-HSC
1756-IN16 1756-PLS/B
1756-IV16/A 1756-IV32/A
Códigos de Acesso do Controlador
Os tipos de dados mais comuns são:
Para organizar seus dados:
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 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
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
Criação de um tipo de dados definidos pelo usuário
clique com o botão direito do mouse
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.
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 controle seqüencial de funções (SFC)
seqüências repetitivas de operações processo por batelada
controle de posicionamento usando texto estruturado operações de uma máquina de estado
operações matemáticas complexas texto estruturado vetor especializado ou tabela de processamento de malha
manipulação do grupo ASCII ou processamento de protocolo
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.
continuação
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.
Uma ramificação simultânea executa mais de 1 passo ao mesmo tempo.
INÍCIO
Exemplo de SFC continuação
continuação
Uma ramificação de seleção escolhe entre diferentes caminhos de execução.
Uma caixa de texto permite a adição de texto descritivo ou observações ao seu SFC.
INÍCIO
Exemplo de SFC continuação
Um comando stop permite parar e esperar por um comando para reiniciar. Um fio conecta um elemento a um outro
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 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.
ação booleana
divergência de ramificação de seleçã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.
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.
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.
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).
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.
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
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
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) desenergize (reset) uma ação armazenada:
• S Armazenado
• SL Armazenado e Tempo Limitado
• DS Com Atraso e Armazenado
• SD Armazenado e Tempo de Atraso
Estrutura SFC_STOP
Membro:
Tipo de
dados:
Detalhes:
X BOOL • 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.
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
Como Você Quer Usar a Ação?
Há dois tipos de ações:
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.
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
Configuração da Execução de um SFC
Em Controller Properties:
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.
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.
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.
function(tag1)
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.
instrução();
instrução(operando);
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
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
(*início de comentário , . . fim de comentário*) /*início de comentário . . . fim de comentário*/
Atributos
Use um atributo para alterar o valor armazenado em um tag. Um atributo possui essa sintaxe:
tag :
=
expression
;
Onde:
O tag retém o valor atribuído até que uma outra atribuição altere o valor.
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 DINT INT REAL
expressão numérica
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 DINT INT REAL
expressão numérica
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
.
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
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
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
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
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
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
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.
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;
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 continuar a fazer algo enquanto certas condições são verdadeiras WHILE…DO 3-21 continuar a fazer algo até que uma condição seja verdadeira REPEAT…UNTIL 3-23
IF...THEN
Use IF…THEN para fazer algo se ou quando as condições específicas ocorrerem. A sintaxe é:
IF bool_expression THEN<statement >; declarações a serem executadas quando
bool_expression1 for verdadeiro
. . .
opcional ELSIF bool_expression2 THEN
<statement >; declarações a serem executadas quando
bool_expression2 for verdadeiro
. . .
opcional ELSE
<statement>; declarações a serem executadas quando as expressões forem falsas
. . . END_IF;