KB-28634: Desabilitando os tags de um driver que perdeu a comunicação.

Descrição:

Em uma rede serial de CLPs que comunicam com o Elipse SCADA, um dos CLPs foi desligado para manutenção. Por consequência, o driver apresenta uma mensagem de erro e pergunta se desejo abortar o driver – o que faz com que a comunicação com todos os CLPs seja perdida. O que é possível fazer para contornar esta situação e manter a comunicação com os outros CLPs?

Solução:

Para isso, uma possível solução é desabilitar a opção Abortar em Erro; entretanto, ao perder a comunicação com o driver, os tags entram em timeout.

Com isso, é necessário aplicar um filtro nos drivers através de um script no evento OnCommError utilizando a função AddFilter() do driver, que permite desabilitar a leitura ou escrita nos Tags PLC ou Bloco que possuam os mesmos parâmetros especificados no filtro.

Exemplo de script:

// Filtra todos tags N1/B1 do último erro
DIM strFilter

strFilter = Str(ModBus.GetErrorInfo(1))
Driver1.RemoveFilter(strFilter)  // Evita adicionar o mesmo filtro mais de uma vez removendo o filtro anterior para o mesmo PLC
Driver1.AddFilter(strFilter)

Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 0 / 5. Count: 0

Leave a Reply

Your email address will not be published.Required fields are marked *