Tags Reportados por Eventos

<< Clique para Mostrar o Sumário >>

 

Tags Reportados por Eventos

Tags reportados por eventos podem retornar mais de um valor a cada leitura ou então não retornar valor algum.

Os Tags reportados por eventos são destinados à leitura de dados sob demanda, geralmente armazenados no Driver até serem lidos em uma operação de leitura. São normalmente utilizados para a leitura de eventos, dados de memória de massa e mensagens não solicitadas recebidas do equipamento.

A documentação do Driver deve especificar quais Tags de Comunicação disponíveis para a aplicação são reportados a eventos.

A utilização mais comum é para a coleta de Sequência de Eventos (SOE, ou Sequence Of Events). Por exemplo, em equipamentos que armazenem em memória sequências muito rápidas de variações de Tags digitais ou que armazenem dados de telemetria em tabelas na memória, os dados podem ser armazenados na memória em tabelas, como demonstrado nas figuras a seguir.

Tabela com três eventos e apenas um campo de dados

Tabela com três eventos e apenas um campo de dados

Tabela com três eventos e seis campos de dados

Tabela com três eventos e seis campos de dados

Para o primeiro exemplo, é necessário um Tag de Comunicação para ler o valor A. O campo Tempo é retornado na propriedade TimeStamp deste Tag de Comunicação. Já para o segundo exemplo é necessário um Bloco de Comunicação com seis Elementos de Bloco de Comunicação (de A até F), com o campo Tempo mais uma vez retornado na propriedade TimeStamp do Bloco de Comunicação.

Em Tags de Comunicação comuns, não reportados por eventos, pode-se configurar um tempo de varredura (scan) que determina o período em que o valor do Tag de Comunicação é lido. A cada operação de leitura, o Tag retorna um valor ou Tag de Comunicação, um bloco de valores ou Bloco de Comunicação, ou então pode retornar erro. Para ler as tabelas descritas anteriormente, neste caso, são necessárias três operações de leitura em cada tabela para poder ler os três eventos, ou seja, as três linhas da tabela.

Os Tags de Comunicação reportados por eventos também permitem configurar um tempo de varredura. Para estes Tags de Comunicação, entretanto, cada operação de leitura pode retornar uma série de valores ou blocos de valores, com qualidades e estampas de tempo próprios, ou seja, no caso de utilizar Tags de Comunicação reportados por eventos para ler as tabelas anteriores, é possível obter os três eventos, ou seja, os dados das três linhas de cada tabela, de uma vez só em uma única operação de leitura ou um único scan.

A leitura dos valores retornados por Tags de Comunicação reportados por eventos é realizada através do evento OnRead do Tag de Comunicação. A cada operação de leitura que retorne valores, a aplicação dispara uma sucessão de eventos OnRead. Para cada valor ou evento retornado, a aplicação preenche as propriedades do Tag de Comunicação (valor, estampa de tempo e qualidade) com os valores do evento específico e então dispara o evento OnRead.

Caso o Driver não possua eventos ou valores a retornar, a operação de leitura reportada a eventos, ao contrário do que ocorre com os Tags de Comunicação comuns, pode não retornar dado algum e nem gerar erros, como se a operação de leitura não houvesse ocorrido.

O tempo de varredura ou scan de Tags de Comunicação reportados por eventos geralmente pode ser configurado com um valor bem baixo, pois o consumo de CPU, caso não existam valores a retornar, é geralmente desprezível.

A propriedade TimeStamp destes Tags de Comunicação em geral contém um valor fornecido pelo próprio equipamento.

 

NOTA

Os Tags de Comunicação reportados por eventos devem ser configurados com a propriedade EnableDeadBand desabilitada. Isto evita que eventos com valores muito próximos sejam desprezados pela aplicação.

Esta página foi útil?