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