Mensagens Não Solicitadas (MNS)

<< Clique para Mostrar o Sumário >>

 

Mensagens Não Solicitadas (MNS)

O uso das mensagens não solicitadas permite melhorar significativamente a performance de uma aplicação, pois não há necessidade de executar polling nas variáveis de um PLC o tempo todo, mesmo quando estas variáveis não sofrem alteração. Ao contrário, usando-se mensagens não solicitadas, toda vez que uma variável sofre alteração, o próprio PLC envia uma mensagem avisando este Driver sobre o novo valor que, por sua vez, altera a base de dados.

Uma aplicação, por sua vez, deve configurar os Tags PLC e Bloco de maneira muito semelhante àquela usada para Tags normais, por polling, mudando-se apenas o parâmetro N1 ou B1 para 9999. Este número indica a este Driver que os valores destes Tags devem ser lidos não de um PLC, mas diretamente da base de dados deste Driver, atualizada pelas MNS. Os Tags de uma aplicação, portanto, continuam funcionando por polling, exceto que a leitura é direta de uma memória imagem contida neste Driver, que não gera comunicação com um PLC. Como esta operação é extremamente rápida, sugere-se usar um período de scan muito curto, da ordem de milissegundos, o que permite uma atualização imediata dos Tags em caso de alteração do valor por mensagens não solicitadas. A leitura de mensagens não solicitadas só está habilitada neste Driver para os operandos do tipo Memória, Tabela de Memória, Auxiliar e Octeto.

 

Exemplo de Tag PLC para Mensagens Não Solicitadas

N1: 101 (Rede igual a um e PLC igual a um)

N2: 0 (zero, Memória)

N3: 1 (um, Memória M1)

N4: 0 (zero, não usado neste caso)

Scan: 500 (500 milissegundos)

 

Para passar este Tag PLC para leitura diretamente da memória imagem deste Driver, altere o parâmetro N1 para 9999. Uma vez que a operação neste caso é bem mais rápida do que por polling, pode-se alterar também o período de scan para apenas alguns milissegundos. A nova configuração é a seguinte:

N1: 9999 (Leitura da Memória Imagem)

N2: 0 (zero, Memória)

N3: 1 (um, Memória M1)

N4: 0 (zero, não usado neste caso)

Scan: 10 (10 milissegundos)

Esta página foi útil?