Olá bom dia...
Será que alguém consegue em ajudar, gostaria de repetir uma ação mais de uma vez ( "n" vezes), poderia ser com um laço for mas não consegui implementar essa ação. No exemplo abaixo gostaria de enviar o valor 254 ( "n" vezes)
se for falso ( nivel 0) e se for verdadeiro uma vez ...
if (source.value == false) return 254;
else return 255;
A entrada do point link é um botão ( 0 ou 1)
A saída do point link é um valor numérico que será enviado a um data point.
Quando clico no botão o valor é enviado normalmente, mas as vezes acontece de o valor não ser enviado, então se eu pudesse repetir esse valor tenho certeza que será enviado.
Estava pesquisando no forum e encontrei esse post: http://www.scadabr.com.br/?q=node/457
Me parece que o meu problema está relacionado com esse bug, mas com o reenvio de dados me resolve o problema.
Oi Paulo,
Sim, o Rafael tocou numa ferida que vamos ter que trabalhar. Falta muito para o Modbus4J ficar 100%, mas é um trabalho que precisa de tempo (matéria em falta ultimamente hehe). O Modbus4J do ScadaBR já não é o mesmo do Mango M2M, muitas coisas melhoramos e aprimoramos, mas nunca está pronto =]
Mas existem contornos para que você trabalhe confortavelmente com o ScadaBR na versão atual.
Eu nunca testei isso, e vou pedir um pouco de fé da sua parte - teste ai e nos avise se não funcionar, não tenho o seu ambiente para confirmar minha proposta.
Ao invés de enviar o comando uma vez (assíncrono), você precisa ficar repetidamente enviando o comando? se sim, você precisa ficar alternando este valor. Crie um data point virtual binário que fique alternando entre 0 e 1 na frequência que precisa e adicione isso na sua lógica (via Meta Data Point) para que o comando seja enviado n vezes.
O ScadaBR ainda não possui uma funcionalidade de forçar valores no mesmo período de aquisição do Data Source. Isso por que o ScadaBR foi implementado pensando em comandos assíncronos e aquisições síncronas. O que não impede no futuro uma configuração no Data Point para forçar valor em modo síncrono.
Vou adicionar essa melhoria no nosso TRAC.
Abraços,