Loading
Enviar dados entre controladores com sequência de reconhecimento | CMX | Studio 5000

Enviar dados entre controladores com reconhecimento no Studio 5000

A sequência de buffer de dados e reconhecimento é definida para aplicações que exigem o envio e o recebimento de dados com um bit de validação para o envio e o recebimento dos mesmos. - [Tempo de implantação: 30 minutos]
Um painel elétrico exibindo vários fios e chaves, enfatizando a integração de um CLP para operações eficientes.
Nesta página:
  • Para que serve isso?
  • Guia de implementação
Início do Innovation Center
 

Para que serve?

Às vezes, é necessário enviar dados de um controlador para outro e ter certeza de que os dados enviados/recebidos são precisos e não uma combinação de dados antigos e novos. Esta observação de aplicação mostra como enviar um pacote (500 byte) de dados em buffer usando uma conexão Produzir/Consumir (Classe 1) por EtherNet/IP.

 

Recursos gerais

  • Buffer de dados
  • Reconhecimento

 

Vantagens: Esta sequência facilita a implementação e a configuração rápida quando é necessário enviar um pacote de dados em buffer usando uma conexão Produzir/Consumir (Classe 1) por EtherNet/IP, sem nenhum outro hardware.

Limitações/Desvantagens: Esta sequência está disponível para controladores CompactLogix/ControlLogix.

Downloads

Observe: Você precisará concordar com os Termos & Condições para cada download.

Baixar arquivos ›
Aviso legal Aceitação. A ROCKWELL AUTOMATION FORNECERÁ ACESSO AOS PRODUTOS ROCKWELL (MELHORES PRÁTICAS, APLICAÇÕES E CONHECIMENTOS) SOB A CONDIÇÃO DE QUE VOCÊ ACEITE E CUMPRA OS SEGUINTES TERMOS E CONDIÇÕES. VOCÊ ACEITA E CONCORDA EM FICAR VINCULADO AOS TERMOS DESTE ACORDO AO FAZER O DOWNLOAD, INSTALAR, COPIAR OU DE OUTRA FORMA USAR OS PRODUTOS. SE VOCÊ ESTIVER ACEITANDO ESTES TERMOS EM NOME DE OUTRA PESSOA, EMPRESA OU OUTRA ENTIDADE JURÍDICA, VOCÊ DECLARA E GARANTE QUE TEM PLENA AUTORIDADE PARA VINCULAR ESSA PESSOA, EMPRESA OU ENTIDADE JURÍDICA A ESTES TERMOS. SE VOCÊ NÃO CONCORDAR COM ESTES TERMOS, NÃO FAÇA O DOWNLOAD, NÃO INSTALE, NÃO COPIE, NÃO ACESSE OU NÃO USE OS PRODUTOS, SOFTWARE E/OU SERVIÇOS DE NUVEM. 1. A Rockwell Automation mantém a propriedade e o título completos de todos os Produtos e documentação relacionada. Nenhum direito ou licença é concedido além daqueles estabelecidos neste Acordo. A Empresa concede à Rockwell Automation uma licença não exclusiva, mundial, livre de royalties, perpétua e irrevogável para usar qualquer feedback que a Empresa forneça em relação aos Produtos, mesmo que a Empresa tenha designado o feedback como confidencial. A Rockwell Automation terá o direito de usar o feedback sem restrição ou compensação à Empresa. 2. A Empresa não pode alugar, sublocar, ceder, licenciar, sublicenciar ou de outra forma transferir qualquer um dos Produtos sem o consentimento prévio por escrito da Rockwell Automation. A Empresa não pode ceder ou de outra forma transferir direitos de acesso aos Produtos sem o consentimento prévio por escrito da Rockwell Automation. Qualquer montagem reversa, engenharia reversa, descompilação e criação de trabalhos derivados com base nos Produtos pela Empresa é proibida. 3. A Empresa reconhece que os Produtos fornecidos sob este Acordo são Informações Confidenciais da Rockwell Automation e são cobertos por direitos autorais, patentes, marcas comerciais e/ou segredos comerciais efetivos ou pendentes da Rockwell Automation, e a Empresa concorda em manter a confidencialidade não divulgando os Produtos ou a documentação a terceiros sem o consentimento prévio por escrito da Rockwell Automation e em proteger a confidencialidade dos Produtos como se fossem as próprias informações confidenciais da Empresa. A Empresa concorda que sua obrigação de confidencialidade sob este parágrafo sobreviverá à expiração ou rescisão deste Acordo. 4. A Empresa concorda que os Produtos fornecidos sob este Acordo são protótipos e exemplos e sua aplicação e resultados podem variar dependendo de cada cliente e condições do projeto. A Rockwell Automation não garante os mesmos resultados. Este Acordo não deve ser interpretado de forma alguma como um compromisso da Rockwell Automation a qualquer momento de fabricar e/ou oferecer Produtos para venda. Não há nenhum acordo do nível de serviço explícito ou implícito associado ao uso dos Produtos. A Rockwell Automation não garante que as funções contidas nos Produtos atenderão aos requisitos da Empresa. A Empresa concorda em usar todos os Produtos apenas de acordo com as instruções e apenas para os usos pretendidos identificados na documentação. 5. EXCLUSÃO DE GARANTIAS E LIMITAÇÃO DE RESPONSABILIDADE. OS PRODUTOS SÃO FORNECIDOS "NO ESTADO EM QUE SE ENCONTRAM". A ROCKWELL AUTOMATION RENUNCIA A TODAS E QUAISQUER GARANTIAS, EXPRESSAS, IMPLÍCITAS OU LEGAIS, INCLUINDO, SEM LIMITAÇÃO, QUAISQUER GARANTIAS DE COMERCIALIZAÇÃO OU ADEQUAÇÃO A UM PROPÓSITO PARTICULAR. A ROCKWELL AUTOMATION RENUNCIA EXPLICITAMENTE A TODAS AS GARANTIAS DE NÃO INFRAÇÃO E EXPRESSAMENTE NÃO GARANTE QUE OS PRODUTOS, NO TODO OU EM PARTE, ESTARÃO LIVRES DE ERROS OU DE VULNERABILIDADES DE SEGURANÇA. EM NENHUM CASO A ROCKWELL AUTOMATION SERÁ RESPONSÁVEL POR (i) LUCROS CESSANTES, ECONOMIAS PERDIDAS, TEMPO DE PARADA, DANOS ESPECIAIS, INDIRETOS OU CONSEQUENCIAIS DE QUALQUER TIPO, OU (ii) QUALQUER LESÃO PESSOAL, DANOS À PROPRIEDADE OU DANOS AMBIENTAIS DECORRENTES OU EM CONEXÃO COM ESTE ACORDO, SEJA EM UMA AÇÃO DE CONTRATO, RESPONSABILIDADE ESTRITA OU EM RESPONSABILIDADE CIVIL, INCLUINDO NEGLIGÊNCIA. 6. A EMPRESA CONCORDA EM INDENIZAR E MANTER A ROCKWELL AUTOMATION ISENTA DE TODOS OS CUSTOS, PRÊMIOS, DANOS, DESPESAS E HONORÁRIOS (INCLUINDO HONORÁRIOS ADVOCATÍCIOS) RESULTANTES OU RELACIONADOS A QUALQUER REIVINDICAÇÃO DE TERCEIROS (INCLUINDO FUNCIONÁRIOS E AGENTES DA EMPRESA) CONTRA A ROCKWELL AUTOMATION, SEUS DISTRIBUIDORES, AGENTES, DIRETORES OU FUNCIONÁRIOS POR LESÃO PESSOAL (INCLUINDO MORTE), DANOS À PROPRIEDADE OU DANOS AMBIENTAIS RELACIONADOS OU RESULTANTES DO USO DOS PRODUTOS. 7. No caso de um Produto ser exportado, a Empresa concorda em cumprir todas as Leis e Regulamentações de Controle de Exportação dos Estados Unidos aplicáveis e as leis de controle de exportação aplicáveis de outros países. Este Acordo será regido pelas leis do estado de Wisconsin. Este Acordo é o acordo completo e exclusivo entre a Rockwell Automation e a Empresa, e substitui todos os acordos anteriores, sejam escritos ou orais, relacionados aos Produtos.

Precisa de ajuda?

Se precisar de ajuda com uma aplicação ou tiver feedback do Centro de Inovação, entre em contato conosco.

Isso é útil?
Este código é definido para aplicações quando é necessário enviar um pacote de dados em buffer por EtherNet/IP.


Áreas de aplicação: Alimentos, fabricação, bebidas

 

Como posso fazer isso funcionar?

  • Hardware
    • Computador pessoal com uma porta USB disponível
    • Controlador CompactLogix, ControlLogix 
  • Software
    • Studio 5000, versão 21 ou posterior
  • Conhecimento prévio:
    • Conhecimento intermediário de programação e configuração no ambiente Studio 5000: linguagem Ladder (LD)
 
 
 

Guia de implementação 

 
 
  • Etapa 01

     

    As próximas etapas oferecem uma explicação sobre o código e como armazenar em buffer os dados antes de enviá-los para outro controlador e usar números de reconhecimento (#) para indicar quando um novo pacote de dados chegou.

     
     

    Armazenamento em buffer de dados: Uma razão para armazenar dados em buffer seria manter uma lista em execução de dados antes de transferi-los, caso haja uma falha de comunicação. Outra razão seria garantir que o pacote de dados que você está criando esteja completo. Neste exemplo, estou armazenando em buffer 10 pacotes de 492 bytes em uma ordem de primeiro a entrar/primeiro a sair. Se isso for muito armazenamento em buffer de dados, isso pode ser personalizado para sua aplicação.

     

    O reconhecimento é usado para indicar quando há um novo pacote de dados sendo enviado/recebido. Algumas aplicações usam o que é chamado de número de rodapé no final do pacote, outras aplicações usam um número de cabeçalho no início do pacote. Neste exemplo, estou usando tanto um número de cabeçalho quanto de rodapé. A operação básica disso é a seguinte: toda vez que um novo pacote de dados estiver pronto para ser enviado, os números de cabeçalho e rodapé incrementados são anexados ao início e ao final do pacote de dados de 492 bytes, tornando-o um pacote completo de produção/consumo de 500 bytes. Quando o outro controlador vê que há uma diferença entre o número de cabeçalho/rodapé antigo e o número de cabeçalho/rodapé novo, ele sabe que este é um novo pacote de dados e o armazena em sua memória. Este novo número de cabeçalho/rodapé é armazenado para ser verificado posteriormente quando um novo pacote for enviado novamente. Isso é levado um passo adiante ao introduzir um método de reconhecimento bidirecional. Isso significa que estou enviando o número de cabeçalho ou rodapé de volta ao produtor dos dados como um disparador para enviar outro pacote.

    send-data-between-controllers-with-handshake-in-studio-5000_Step 1-Image1.jpg

    enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa 1-Imagem1

     
     

    Há dois programas ControlLogix, um programa produz dados e o outro programa consome dados. O programa que está produzindo dados é chamado CLX1_producing_ data_with_handshaking_ and_Buffering1. O programa que consome dados é chamado CLX2_consuming_data_with_handshaking. Eles serão referenciados como programa CLX1_Produce e CLX2_Consume.

     

    Os dados devem ser coletados e armazenados em buffer antes de enviá-los ao tag produzido.

     

    Consulte as linhas 7, 8 e 9 do programa CLX1_produced.

     

    Linha 7.Os dados são coletados e armazenados em buffer de maneira FIFO (primeiro a entrar, primeiro a sair). Neste exemplo, estou armazenando em buffer 10 (123dint) blocos de dados (1–10). Se não houver dados no 10º bloco de dados armazenado em buffer, adicione 123 ao indicador de dados armazenados em buffer; se houver dados, pare de preencher o registrador armazenado em buffer.

     

    Linha 8.Quando os dados aparecem no 10º registrador de dados armazenados em buffer (123dint), a área de registrador armazenado em buffer está cheia e definirá a saída Buffer full.

     

    Linha 9.Se a saída Buffer full estiver definida, desloque os blocos de dados armazenados em buffer 2–10 para cima por (123dints). Em seguida, preencha o 10º bloco de dados armazenado em buffer com zeros.

     
  • Etapa 02

     

    Agora que temos dados em buffer, comece a produzir esses dados na rede Ethernet. Consulte CLX1_produced program Rungs 10, 11. 

     

    Rung 10. Copiará o primeiro bloco de dados do buffer para o tag produzido.

     

    Rung 11. Atribuirá um número de ID de cabeçalho e rodapé. Esses números variarão de 0–100. Esses IDs também serão usados como os números de reconhecimento entre os dois processadores CLX. A próxima varredura através dos IDs será aumentada em 1.

     

    Neste ponto, o pacote é formado e fica assim:

     

    • Producing_data_to_CLX1
      • [0] = Header ID#
      • [1]–[123] = Dados
      • [124] = Footer ID#
    send-data-between-controllers-with-handshake-in-studio-5000_Step2-Image1.jpg

    send-data-between-controllers-with-handshake-in-studio-5000_Step2-Image1

  • Etapa 03

     
     

    Os dados estão sendo consumidos por outro processador CLX2 pela Ethernet. O tag consumido se parece com isto:

     
    • Consumed_data_from_CLX1
      • [0] = Header ID#
      • [1] – [123] = Data
      • [124] = Footer ID#

     

    Consulte o programa CLX2_consumed em Rung 1.

     

    Rung 1.Compara os novos ID’s atribuídos na Step 2 Rung 11 com os ID’s antigos armazenados em buffer na Step 6 Rung 6. Se os ID’s forem diferentes, sabe-se que está lendo um novo pacote de dados.

    send-data-between-controllers-with-handshake-in-studio-5000_Step3-Image1.jpg

    send-data-between-controllers-with-handshake-in-studio-5000_Step3-Image1

  • Step 04

     
     

    Se as comunicações pararem, o controle precisa estar ciente disso, consulte o programa CLX2_consumed, Rung 2, 3 e 4.

     

    Rung 2. Toda vez que houver uma diferença nos IDs, o contador conta 1 + 1.

     

    Rung 3. Se o contador não for concluído em 5 s, o temporizador retentivo expira.

     

    Rung 4. Se o temporizador retentivo for concluído, não houve comunicações por mais de 5 s e a saída sem comunicações entre clx1 e clx2 é definida. Isso pode ser usado como um bit de alarme.

     
    send-data-between-controllers-with-handshake-in-studio-5000_Step4-Image1.jpg

    send-data-between-controllers-with-handshake-in-studio-5000_Step4-Image1

  • Etapa 05

     
     

    Verifique novamente se os IDs de cabeçalho e rodapé não mudaram. Consulte a linha 5 do programa CLX2_consumed.

     
    send-data-between-controllers-with-handshake-in-studio-5000_Step5-Image1.jpg

    send-data-between-controllers-with-handshake-in-studio-5000_Step5-Image1

  • Step 06

     
     

    Agora é hora de copiar os dados do tag de consumo para um registrador diferente no CLX2, para ser usado em seu programa.

     

    Em seguida, mova os números de ID de cabeçalho e rodapé atuais para o registrador de ID antigo para serem comparados posteriormente quando o próximo pacote de novos dados for enviado. Agora para a parte de reconhecimento do programa.

     

    O número de ID de rodapé é enviado de volta ao CLX1, em um tag produzido, para atuar como a peça de dados de reconhecimento, que será comparada no CLX1, como você verá na Step 8. Consulte o programa CLX2_consumed, Rung 6 a 8.

     
    send-data-between-controllers-with-handshake-in-studio-5000_Step6-Image1.jpg

    send-data-between-controllers-with-handshake-in-studio-5000_Step6-Image1

  • Etapa 07

     
     

    Mais uma vez, se as comunicações pararem, o controle precisa estar ciente disso. Consulte o programa CLX1_produced em Rung 2, 3 e 4.

     

    Rung 2. Toda vez que houver uma diferença nos ID’s, o contador conta 1 + 1

     

    Rung 3. Se o contador não for concluído em 5 s, o temporizador retentivo expira.

     

    Rung 4. Se o temporizador retentivo for concluído, não houve comunicações por mais de 5 s e a saída de ausência de comunicação entre clx1 e clx2 é ativada. Isso pode ser usado como um bit de alarme.

     
    send-data-between-controllers-with-handshake-in-studio-5000_Step7-Image1.jpg

    send-data-between-controllers-with-handshake-in-studio-5000_Step7-Image1

  • Step 08

     
     

    Referindo-se à Step6, o footer ID # está sendo produzido pelo CLX2 e agora será consumido pelo CLX1. Se o ID # inicial produzido corresponder ao ID # agora consumido, ainda há comunicação, o reconhecimento está completo e o CLX1 agora está pronto para produzir um novo pacote de dados.

     

    Mas, antes de produzir um novo pacote de dados, devemos verificar se nosso ID # atingiu 100; se sim, redefina para 0 e comece a contar até 100 novamente. Consulte CLX1_produced program Rung 5 e 6.

     
    send-data-between-controllers-with-handshake-in-studio-5000_Step8-Image1.jpg

    send-data-between-controllers-with-handshake-in-studio-5000_Step8-Image1

 
enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa 1-Imagem1.jpg

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa 1-Imagem1

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa2-Imagem1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step2-Image1

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa3-Imagem1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step3-Image1

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa4-Imagem1.jpg

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa3-Imagem1

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa5-Imagem1.jpg

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa5-Imagem1

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa6-Imagem1.jpg

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa6-Imagem1

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa7-Imagem1.jpg

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa7-Imagem1

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa8-Imagem1.jpg

enviar-dados-entre-controladores-com-reconhecimento-no-studio-5000_Etapa8-Imagem1

 
 
 
 
 

Envio de dados entre controladores com reconhecimento no Studio 5000

Versão 1.0 - Novembro de 2024

Inscreva-se!

Receba novos lançamentos de aplicações e outras notícias do Innovation Center diretamente em sua caixa de entrada.

Quero me inscrever
  1. Chevron LeftChevron Left Página inicial da Rockwell Automation
  2. Chevron LeftChevron Left Sup...
  3. Chevron LeftChevron Left Pro...
  4. Chevron LeftChevron Left Downloads
  5. Chevron LeftChevron Left Innovation Center
  6. Chevron LeftChevron Left Enviar dados entre controladores com reconhecimento no Studio 5000
O conteúdo deste site foi traduzido usando inteligência artificial (IA) sem revisão nem edição humana. O conteúdo pode conter erros ou imprecisões e é fornecido “da forma como está” sem nenhum tipo de garantia. O texto oficial é a versão em inglês.
Atualize suas preferências de cookies para continuar.
Este recurso requer cookies para melhorar sua experiência. Atualize suas preferências para permitir esses cookies:
  • Cookies de Redes Sociais
  • Cookies Funcionais
  • Cookies de Desempenho
  • Cookies de Marketing
  • Todos os Cookies
Você pode atualizar suas preferências a qualquer momento. Para mais informações, consulte nosso {0} Política de Privacidade
CloseClose