Adicionar temporização no SCRIPT

Estamos desenvolvendo um projeto em que iremos controlar a temperatura de um forno virtual, atraves de um controlador de temperatura que já está “conversando” Modbus com o ScadaBR. Necessitamos criar uma curva de ascendência de temperatura e pretendemos alterar o setpoint (incrementar) no tempo, exemplo seria aumentar o SetPoint em 50 graus a cada 60 segundos até atingir 1230 oC. Pretendemos criar um SCRIPT com esta função. Quais são os comandos que inserem milisegundos, segundos e minutos dentro do SCRIPT? Tem outra forma de se fazer este processo? Se puderem, favor dar um exemplo de script para esta aplicação. Agradecemos pela atenção. Alunos SENAI CTAI.

Amigos.
Deixa eu ver se entendi, você quer que um valor virtual incremente de 50 em 50 a cada 60 segundos, até atingir o valor de 1230?
Se for isso é fácil, crie um “virtual data source”, com atualização no tempo desejado.
Adicione um virtual data point.
Selecione o tipo de dado como numérico
Selecione o tipo de alteração Increment
Digite o valor mínimo da temperatura do forno.
Digite o valor máximo da temperatura do forno.
Em change, digite o quanto quer variar, por atualização, pelo que entendi 50.
Digite um valor inicial.

Pronto você terá uma variavel alterando de 50 em 50 até 1230 a cada 60 segundos.
Agora você pode usar esse valor para ser enviado ao termostado por modbus, embora provavelmente para o termostato o valor da tempetura seja somente leitura, vocês precisariamm de um CLP para poder escrever o valor do data source e faze-lo tomar alguma decisão.

Companheiro, desculpe, mas não fui muito claro.
O SETPOINT que me refiro é um parâmetro dentro do controlador a qual estou conseguindo modificalo manualmente através do ScadaBR. Desejamos fazer esta operação automaticamente para criar uma curva ou rampa de incremento da temperatura no tempo.
Fico a disposição para esclarecimentos.
Obrigado pela atenção!

Este tipo de implementação é muito útil. Existem alguns controladores específicos para este processo, mas podemos definir algo parecido no ScadaBR com o auxílio de eventos agendados e tratadores de eventos, eventos limites de máximo e mínimo.

Tudo depende de como você pretendo implementar. Pode utilizar os Data points virtuais para criar contadores e associar eventos de máximo e mínimo, assim criando intervalos do processo. Durante eles, você pode usar valores estáticos ou rampas para as configurações do CLP.

Ou utilizando eventos agendados… fica a seu cargo. Mas o importante é verificar como usar os tratadores de eventos para modificar os valores de outros pontos. Talvez utilizando Point Links.

Qualquer dúvida, estamos ai.

Att.

Há também a possibilidade de se inserir essa funcionalidade no próprio script. Esse trecho de codigo abaixo implementa uma funçao ‘sleep’, que você poderá inserir no seu script do controlador. O valor 60000 é o tempo em milisegundos que essa função irá dormir.

var inicio = new Date().getTime();
var atual = new Date().getTime();

while((atual - inicio) < 60000)
{
atual = new Date().getTime();
}

Abraço
Eduardo