Habilitar o Ciclo de Atualização dos Dados de Entrada e de Saída da Rede INTERBUS

Bloco de Controle Padrão
Função Habilitar o Ciclo de Atualização dos Dados de Entrada e de Saída da Rede INTERBUS
Código 060
Caminho Programa/Editor Ladder/Elementos/Especiais/Bloco de controle Padrão
Grupo Especiais
Ícone ico
Tabela de compatibilidade de firmwares
Geração de Firmware GI, GII

A função deste bloco é viabilizar a Leitura/Escrita de dados de/na rede INTERBUS.

Nota

A execução deste comando pode levar vários ciclos de scan para ser concluído. Portanto, verifique a condição da saída do bloco para certificar-se que o processo está terminado e, avalie o valor para parâmetro P4 para identificar possíveis falhas.

Para utilizar o elemento no programa deve-se posicionar o cursor do editor ladder na posição onde o elemento será inserido, selecionar no menu à esquerda o grupo Bloco de Controle Padrão e clicar no botão associado ico .

Ler um registro de dados da FIFO da Data-Flash e transferi-lo para a base de dados do PLC.
Parâmetros Tipos Valores Descrição
P1 K Max(K) Função do bloco SCB de acesso à Leitura/Escrita de dados de/na rede INTERBUS. Deve ser uma constante inteira cujo valor deve ser 60.
P2 M M[x + 0] Quantidade de memórias M a serem lidas da rede INTERBUS. Cada memória M é composta por 16 bits de dados de “input” da rede INTERBUS, e a quantidade deve estar entre 1..15 memórias M. Os dados de “input” lidos da rede INTERBUS serão retornados nas memórias subsequentes a esta “Memória x + 0”. Por exemplo, se P2 = M10, e o conteúdo de M10 = 5, especifica a leitura de 5 memórias M, ou seja, leitura de 80 bits (5 M * 16 bits = 80 bits) de dados de “input” da rede INTERBUS. Estes 80 bits serão retornados nas 5 memórias subsequentes a esta memória M10, ou seja, em M11, M12, M13, M14 e M15. Assim, deve-se, na aplicação ladder, reservar um buffer de “recepção” dos dados de “input” da rede INTERBUS com a quantidade de memórias M especificadas neste parâmetro. Note-se que esse buffer deve ser subsequente à memória “Memória x + 0”.
M[x + 1] 1ª memória M para armazenamento dos bits 0..15 lidos da rede INTERBUS
M[x + 2] 2ª memória M para armazenamento dos bits 16..31 lidos da rede INTERBUS
M[x + 3] 3ª memória M para armazenamento dos bits 32..47 lidos da rede INTERBUS
M[x + 4] 4ª memória M para armazenamento dos bits 48..63 lidos da rede INTERBUS
M[x + 5] 5ª memória M para armazenamento dos bits 64..79 lidos da rede INTERBUS
M[x + 6] 6ª memória M para armazenamento dos bits 80..95 lidos da rede INTERBUS
M[x + 7] 7ª memória M para armazenamento dos bits 96..111 lidos da rede INTERBUS
M[x + 8] 8ª memória M para armazenamento dos bits 112..127 lidos da rede INTERBUS
M[x + 9] 9ª memória M para armazenamento dos bits 128..143 lidos da rede INTERBUS
M[x + 10] 10ª memória M para armazenamento dos bits 144..159 lidos da rede INTERBUS
M[x + 11] 11ª memória M para armazenamento dos bits 160..175 lidos da rede INTERBUS
M[x + 12] 12ª memória M para armazenamento dos bits 176..191 lidos da rede INTERBUS
M[x + 13] 13ª memória M para armazenamento dos bits 192..207 lidos da rede INTERBUS
M[x + 14] 14ª memória M para armazenamento dos bits 208..223 lidos da rede INTERBUS
M[x + 15] 15ª memória M para armazenamento dos bits 224..239 lidos da rede INTERBUS
P3 M M[y + 0] Quantidade de memórias M a serem escritas na rede INTERBUS. Cada memória M é composta por 16 bits de dados de “output” da rede INTERBUS, e a quantidade deve estar entre 1..15 memórias M. Os dados de “output” a serem enviados para a rede INTERBUS serão obtidos nas memórias subsequentes a esta “Memória y + 0”. Por exemplo, se P3 = M20, e o conteúdo de M20 = 3, especificando a escrita de 3 memórias M, ou seja, escrita de 48 bits (3 M * 16 bits = 48 bits) de dados de “output” na rede INTERBUS. Estes 48 bits serão obtidos das 3 memórias M subsequentes a esta memória M20, ou seja, em M21, M22 e M23. Assim, deve-se, na aplicação Ladder, reservar um buffer de “transmissão” dos dados de “output” para a rede INTERBUS com a quantidade de memórias M especificadas neste parâmetro. Note-se que este buffer deve ser subsequente à memória “Memória y + 0”.
M[y + 1] 1ª memória M para armazenamento dos bits 0..15 lidos da rede INTERBUS
M[y + 2] 2ª memória M para armazenamento dos bits 16..31 lidos da rede INTERBUS
M[Y + 3] 3ª memória M para armazenamento dos bits 32..47 lidos da rede INTERBUS
M[Y + 4] 4ª memória M para armazenamento dos bits 48..63 lidos da rede INTERBUS
M[Y + 5] 5ª memória M para armazenamento dos bits 64..79 lidos da rede INTERBUS
M[Y + 6] 6ª memória M para armazenamento dos bits 80..95 lidos da rede INTERBUS
M[Y + 7] 7ª memória M para armazenamento dos bits 96..111 lidos da rede INTERBUS
M[Y + 8] 8ª memória M para armazenamento dos bits 112..127 lidos da rede INTERBUS
M[Y + 9] 9ª memória M para armazenamento dos bits 128..143 lidos da rede INTERBUS
M[Y + 10] 10ª memória M para armazenamento dos bits 144..159 lidos da rede INTERBUS
M[Y + 11] 11ª memória M para armazenamento dos bits 160..175 lidos da rede INTERBUS
M[Y + 12] 12ª memória M para armazenamento dos bits 176..191 lidos da rede INTERBUS
M[Y + 13] 13ª memória M para armazenamento dos bits 192..207 lidos da rede INTERBUS
M[Y + 14] 14ª memória M para armazenamento dos bits 208..223 lidos da rede INTERBUS
M[Y + 15] 15ª memória M para armazenamento dos bits 224..239 lidos da rede INTERBUS
P4 M M[Z + 0] Código de retorno da execução da função, onde: Igual a 0 - Indica função executada com sucesso. Diferente de 0 - Indica condição de falha. Vide Tabela de códigos de retorno do controlador .
M[z + 1] Subcódigo de retorno da própria rede INTERBUS OBS: Este subcódigo de erro somente deve ser analisado quando o código de retorno obtido na “Memória z + 0” for igual a 241. Ou seja, quando o controlador sinalizar código de erro 241, indica existência de uma falha operacional na rede INTERBUS, e para identificar o código da falha da própria rede INTERBUS, deve-se, então, analisar este subcódigo de retorno. A descrição destes subcódigos de erros encontra-se no anexo deste documento.

Códigos de erro de P4

Códigos de Erro de P4
Código de erro Descrição
0 Função executada com sucesso. Nenhuma falha identificada no processo.
4 Não foi detectado módulo de expansão ITB-600 ou ITB520 conectado ao controlador para habilitar o acesso à rede INTERBUS.
5 Parâmetros inválidos na ativação de um bloco SCB de acesso à rede INTERBUS. Exemplo: Solicitar o diagnóstico de um módulo da rede INTERBUS fora da posição permitida, no caso, na escala de (0..30).
6 A placa ITB600 ou ITB520 recebeu um comando inválido ou não reconhecido.
180 Erro na execução do comando. Sub-Código de retorno da própria rede INTERBUS possui detalhes do erro.
181 A máquina de estados da placa ITB600 ou ITB520 não pode executar o comando requisitado.
182 Já existe um comando sendo executado pela ITB600 ou ITB520.
183 Comando enviado não representa um comando para o INTERBUS.
184 Posição do módulo selecionado não é válida.
238 Módulo de expansão detectado no controlador incompatível. Exemplo: Ou módulo de expansão especificado na configuração de hardware do controlador NÃO é uma ITB-600 ou ITB520, ou o módulo de expansão existente no controlador NÃO é uma ITB-600 ou ITB520.
239 Parâmetros da base de OUTPUT inválidos. Exemplo: No bloco SCB de acesso aos I/O da rede INTERBUS, a quantidade de memórias M para serem escritas na rede INTERBUS (que foi especificada na primeira memória do buffer de OUTPUT do parâmetro P3 do bloco SCB) está fora da escala 1-15, ou seja, a quantidade de dados a serem escritos na rede INTERBUS está fora dos limites de 15M * 16bits = 240 bits.
240 Falha de acesso com o módulo de expansão Exemplo: No bloco SCB de acesso aos I/O da rede INTERBUS, houve erro de acesso com o módulo ITB-600 ou ITB520.
241 Erro operacional na rede INTERBUS. Exemplo: No bloco SCB de acesso aos I/O da rede INTERBUS, foi detectado um erro operacional na rede INTERBUS. Para identificar a falha da rede INTERBUS, deve-se analisar o subcódigo de retorno deste bloco SCB.
245 Módulo de expansão detectado no controlador incompatível. Exemplo: Ou módulo de expansão especificado na configuração de hardware do controlador NÃO é uma ITB-600 ou ITB520, ou o módulo de expansão existente no controlador. NÃO é uma ITB-600 ou ITB520.

Entradas

Descrição das Entradas
Entrada Função Estado Descrição
A1 Ativação Inativo Neste estado o bloco não executa nenhuma ação, repassando apenas o estado inativo para a saída B1.
Ativo Neste estado o bloco executa a funcionalidade associada ao mesmo. Cabe ressaltarque, para o bloco SCB, esta entrada opera por transição ou seja, o bloco é executado apenas quando a entrada A1 muda do estado inativo para o estado ativo. Uma vez ativada, a entrada A1 deverá permanecer ativa até o término da execução da função que é sinalizado através da ativação da saída B1 do bloco.

Saída

Descrição das Saídas
Saída Função Estado Descrição
B1 Ativação/Falha Inativo A saída B1 sempre estará inativa se a entrada A1 estiver inativa. Quando a entrada A1 for ativada a saída B1 permanecerá inativa enquando o bloco estiver executando o comando associado indicando que o processo ainda não terminou.
Ativo Indica fim de execução do processo associado ao bloco. Para identificar se a função foi executada com sucesso é necessário examinar o parâmetro P4, que contém o código indicando o resultado da execução do processo associado. Para mais informações sobre os códigos disponíveis para esta função consulte a Códigos de erro de P4 .

Observações:

  1. O tamanho do buffer onde serão armazenados todos os dados de input lidos da rede INTERBUS corresponde à quantidade de memórias M, especificadas no parâmetro Memória x + 0 deste parâmetro P2. Assim, se serão lidos dados mapeados em 5 memórias M, basta reservar as memórias Memória x + 1 até a Memória x + 5 como buffer de dados.
  2. O tamanho do buffer onde serão lidos todos os dados de “output” a serem enviados para a rede INTERBUS, corresponde à quantidade de memórias M especificadas no parâmetro Memória y + 0 deste parâmetro P3. Assim, se serão escritos dados mapeados em 3 memórias M, basta reservar as memórias Memória y + 1 até a Memória y + 3 como buffer de dados.
  3. Se a quantidade de memórias a serem lidas da rede INTERBUS (parâmetro P2) for igual a 0 (zero), não será realizada nenhuma leitura dos dados de input da rede INTERBUS.
  4. Se a quantidade de memórias a serem escritas na rede INTERBUS (parâmetro P3) for igual a 0 (zero), não será realizada nenhuma escrita dos dados de output na rede INTERBUS.
  5. Caso seja necessário testar algum I/O da rede INTERBUS na sub-rotina T0 do programa ladder, deve-se, necessariamente, alocar um bloco SCB (Kn) na sub-rotina T0, e ativá-lo antes dos efetivos testes de I/O desejados.

Tamanho dos Dados de I/O

Os dados de “input” e de “output” da rede INTERBUS são armazenados em memórias M do controlador. No caso, são permitidas leituras e escritas de até 15 memórias M com dados de “input” e até 15 memórias de dados de “output”, ou seja, a quantidade de dados a serem lidos e escritos da rede INTERBUS está restrita a 240 bits (15M * 16bits = 240 bits).

Programando a configuração da Rede

Como estratégia de garantir a integridade do sistema, o firmware de controle presente na placa ITB600 ou ITB520 necessita conhecer antecipadamente a configuração desejada para a rede INTERBUS. O ambiente de programação gerencia essa configuração, além de fornecer mecanismos de análise da rede. Para garantir essa ligação, uma base de dados contendo a configuração da rede é associada com cada programa criado pelo ambiente de programação. Para utilizar esse recurso, o usuário deve proceder conforme esta sequência:

  • Incluir o módulo ITB600 ou ITB520 na janela “Configuração do Controlador “ ativada;
  • Ativar a apresentação do menu de comandos, através de click com o botão direito do mouse, sobre a placa ITB600 ou ITB520 que se deseja configurar;
  • Selecionar a opção de propriedades do módulo para abrir a janela “Especificação dos Módulos da Rede”, que apresentará uma tabela com as seguintes colunas:
  • Nro: posição do módulo na rede INTERBUS. Este valor não pode ser alterado pelo usuário;
  • Ident: INTERBUS Identification Code associado ao módulo presente nesta posição;
  • Bits: número de bits ocupados pelo módulo num ciclo INTERBUS;
  • In (M): deslocamento a partir da memória M utilizada como parâmetro nos comandos de leitura de dados da rede. Além do offset também é apresentado um caractere (L ou H) que determina se os dados do módulo iniciam no LSB (Least Significant Byte) ou MSB (Most Signficant Byte) da memória M. Este valor não pode ser alterado pelo usuário.
  • Out (M): deslocamento a partir da memória M utilizada como parâmetro nos comandos de escrita de dados da rede. Além do offset, também é apresentado um caractere (L ou H) que determina se os dados do módulo iniciam na LSB (Least Significant Byte) ou MSB (Most Signficant Byte) da memória M. Este valor não pode ser alterado pelo usuário.
  • Em Falha: Determina o comportamento dos dados de leitura na ocorrência de falha na rede. O usuário pode selecionar entre duas estratégias: na primeira, o módulo ITB600 ou ITB520 fornece na leitura o último dado válido recebido da rede (opção X->). Na segunda, o módulo ITB600 ou ITB520 fornece sempre o valor zero em comandos de leitura (opção 0->). Este valor pode ser configurado somente em módulos que possuam dados de leitura.
../_images/config_mod_rede.png

Após configurar o sistema, o usuário pode salvar a configuração através do botão “Salva Configuração” ou abandonar as mudanças, utilizando diretamente o botão “Fechar”. A alteração das posições dos módulos, bem como sua remoção, pode ser ativada através dos botões presentes à esquerda da tabela.

Salvando Configuração no Módulo ITB600

Com o objetivo de garantir a integridade do sistema, a configuração associada ao programa ladder é também armazenada no módulo ITB600 ou ITB520. Durante a execução do programa, essa configuração é constantemente verificada e, em caso de incompatibilidade, a troca de dados é interrompida, sendo gerada uma falha para sinalizar o problema. Nesse contexto, o ambiente de programação fornece recursos para configurar, obter configuração e clonar configurações físicas do INTERBUS. Note que esses recursos são acessíveis somente quando não existe programa em execução no CLP.

Configuração do Módulo ITB600

A tela que controla o acesso ao módulo ITB600 ou ITB520 é acessada através de Módulos de Hardware, iniciada no menu do Ambiente de programação.

../_images/especif_mod_rede.png

A apresentação desta tela está condicionada as seguintes condições:

  1. O CLP deve estar ligado e conectado à plataforma que está executando o ambiente de programação.
  2. Caso exista um projeto aberto no ambiente de programação, a configuração definida para esse projeto deve ser idêntica à existente no módulo ITB600 ou ITB520 conectado. Caso essa condição não seja atendida, o usuário será questionado se deseja igualar as configurações. Em caso de resposta afirmativa, a configuração presente no módulo ITB600 ou ITB520 será sobreposta pela configuração definida no projeto corrente. Em caso negativo, nenhuma ação é tomada, mas a tela não será aberta. Essa situação será informada ao usuário, que pode fechar o projeto corrente para observar a configuração presente no módulo ITB600 ou ITB520.

O botão Salva Configuração realiza simultaneamente a gravação da configuração no projeto e no módulo ITB600 ou ITB520.

Obtendo Configuração Física

Eventualmente, pode ser interessante acessar a configuração física presente na rede INTERBUS para verificar possíveis inconsistências na instalação do sistema realizada em campo. A figura, a seguir,ressalta informações pertinentes a essa funcionalidade.

A ativação do botão “Atualiza Info” presente na janela “Especificação dos módulos da rede” atualiza as seguintes colunas presentes nesta janela:

  • Ident: Esta coluna, posicionada mais à esquerda, apresenta o INTERBUS Identification Code associado ao módulo fisicamente presente nesta posição.
  • Bits: Esta coluna, posicionada mais à esquerda, apresenta o número de bits ocupados pelo módulo num ciclo INTERBUS. Este valor não pode ser alterado pelo usuário.
  • Status: Esta coluna ressalta a situação existente entre a configuração lógica presente no módulo ITB600 ou ITB520 e a rede

A tabela abaixo apresenta o significado dos ícones presentes nesta coluna:

Significado dos Símbolos
Símbolo Significado
a Não existe módulo definido na configuração lógica nem presente fisicamente na rede INTERBUS.
b Módulo presente somente na rede física do INTERBUS.
c Módulo definido na configuração lógica difere do encontrado na configuração física da rede INTERBUS.
d Módulo presente somente configuração lógica definida para o projeto.
e Módulos idênticos na configuração lógica e na configuração física da rede INTERBUS.

Clonando a Rede Física do INTERBUS

Eventualmente, pode ser interessante clonar a configuração física da rede INTERBUS para a rede lógica gravada no módulo ITB600 ou ITB520 e associada ao projeto do ambiente de programação. Para atender à essa necessidade, o usuário deve ativar o botão “Clona Rede” presente na janela Especificação do Módulos na Rede. Naturalmente, após a clonagem, a configuração deve ser salva através da ativação do botão Salva Configuração. Essa ativação leva a uma situação de igualdade de configurações lógica e física, conforme pode ser observado na figura acima.

Enviando e Recebendo Dados da Rede

Os dados de I/O a serem trocados com a rede INTERBUS serão manipulados via variáveis do tipo M (16 bits) do controlador. Os dados de “input” da rede INTERBUS são armazenados em memórias M do controlador. No caso, são permitidas leituras de até 15 memórias M com dados de “input”, ou seja, a quantidade de dados a serem lidos da rede INTERBUS está restrita a 240 bits (15M * 16bits = 240 bits). De maneira semelhante aos dados de “input”, os dados de “output” da rede INTERBUS são armazenadas em memórias M do controlador. Também são permitidas escritas de até 15 memórias M com os dados de “output”, ou seja, a quantidade de dados a serem escritos na rede INTERBUS está restrita a 240 bits (15M * 16bits = 240 bits).

O ambiente de programação disponibiliza operações para envio e recepção de dados da rede INTERBUS. Essas operações estão presentes na janela Especificações dos módulos da rede, ativada através da sequência de comandos do menu do ambiente de programação. A ativação do tab Base de Dados ativa a tela apresentada na figura a seguir.

../_images/envia_recebe_dados.png

Esta opção oferece dois botões de comandos ao usuário:

  • Atualiza Configuração da Rede - Inicialmente, as colunas Seq, Pos e Ident, presentes nas tabelas desta janela, possuem como valor inicial “??”. Ao ativar este botão, a configuração presente na rede INTERBUS é recuperada e os valores destas colunas são atualizados.
  • Atualiza Dados da Rede - A ativação deste botão faz com que os dados presentes na tabela Base de saída (bytes) sejam enviados aos módulos do INTERBUS. Além disso, a tabela Base de Entrada(bytes) recebe os dados de entrada presentes no protocolo INTERBUS.

Para o acesso à rede INTERBUS, são necessários os seguintes itens:

  • Ambiente de programação, versão 1.4.05 ou superior
  • Firmware especial do controlador versão 1.37 ou superior. Este firmware especial é identificado pelo prefixo “CT91” e deve ser solicitado ao fabricante, sem custo adicional.
  • Módulo de expansão ITB-600 ou ITB520 para controlador, sendo o ITB600 para
  • equipamentos GI e o ITB520 para equipamentos GII .