<< Clique para Mostrar o Sumário >>
Forçamento Local |
O aplicativo a qualquer momento pode forçar um valor específico para cada Tag. Independente de outros valores escritos posteriormente no mesmo Tag, o Driver reporta para o Mestre sempre o valor forçado, até o momento em que o aplicativo limpar o forçamento.
Para ativar o forçamento local em um Tag, escreva um array de dois elementos no Tag de Escrita de Eventos na Memória Cache. O primeiro elemento do array deve conter o texto "FORCE" e o segundo elemento deve conter o valor a ser forçado. Exemplo:
'Força o valor 1 no tag001
tag001.WriteEx Array("FORCE", 1)
O valor forçado é enviado para o Mestre utilizando o mesmo método dos valores normais do Tag (apenas na Interrogação Geral, com prioridade alta, com prioridade baixa), com o flag SB ligado e com a estampa de tempo atual do computador.
Enquanto um Tag está com seu valor forçado, ele continua aceitando escritas de outros valores não forçados. Neste caso, o Driver armazena o último valor enviado para o Tag e, quando o forçamento é cancelado, este último valor é enviado para o Mestre.
É possível sobrescrever um valor forçado com outro valor forçado.
Para limpar um valor forçado, escreva um array com dois elementos, contendo o texto "CLEAR" no primeiro elemento. O segundo elemento do array é ignorado, pode ter qualquer valor. Exemplo:
'Limpa o valor que está forçado no tag001
tag001.WriteEx Array("CLEAR", 0)
Quando o forçamento é cancelado, o último valor não forçado escrito no Driver é reenviado para o Mestre. Se nenhum valor estiver disponível, então é enviado um valor inválido com a estampa de tempo atual do computador.