Pular para o conteúdo principal

io (inputs & outputs)

io

Função global utilizada para realizar leitura e controle das IOs (DIs, DOs, AIs e AOs).

io.readDI

Retorna o status booleano da entrada digital solicitada.

io.readDI(DI);

Resposta: true/false

Exemplo

Saber o status booleano na entrada digital 2 (DI2):

io.readDI(2);

Resposta: true (nível lógico alto / em 1) ou false (nível lógico baixo / em 0) .


io.readDO

Retorna o status booleano da saída digital solicitada. Caso precise ler o status da saída de erro, o valor -1 corresponde a saída de erro 1 e o valor -2 a saída de erro 2.

io.readDO(DO);

Resposta: true/false

Exemplo

Saber o status booleano na saída digital 3 (DO3):

io.readDO(3);

Resposta: true (nível lógico alto / em 1) ou false (nível lógico baixo / em 0) .


io.setDO

Seta o status booleano da saída digital solicitada. Caso precise comandar a saída de erro, o valor -1 corresponde a saída de erro 1 e o valor -2 a saída de erro 2.

io.setDO(DO, value);

Resposta: true/false

Exemplo

Comutar a saída digital 4 (DO4) para nível lógico alto (em 1):

io.setDO(4, true);

Resposta: Responde se o comando foi aceito (true) ou o comando foi recusado (false) devido a presença da variável de controle das DOs.


io.readAI

Retorna o valor lido na entrada digital solicitada na escala de real já interpolada, de acordo com o tipo de sinal de entrada.

io.readAI(AI, mode, y0, y1);
modeDescrição
"i"entrada de corrente 4-20 mA
"i1"entrada de corrente 0-20 mA
"v"entrada de tensão 0-10 V
"v1"entrada de tensão 2-10 V
"v2"entrada de tensão 0-5 V
"v3"entrada de tensão 1-5 V
"v4"entrada de tensão 0-3.3 V

Resposta: float em escala real de acordo com os parâmetros de entrada configurados para interpolação linear.

Exemplo

Saber o valor em escala real para um sensor conectado na entrada analógica 1 (AI1).

Características do sensor Modo: corrente 4-20 mA; Escala: conversão 0 a 10 unidades reais (exemplo 0 a 10 metros).

io.readAI(1, 'i', 0, 10);

Resposta: float interpolado para escala do sensor.


io.readAIraw

Retorna o valor lido na entrada digital solicitada na escala de engenharia.

io.readAIraw(AI);

Resposta: int em escala de engenharia (8 bits ou 12 bits conforme modelo)

Para mais informações sobre a escala de engenharia consultar guia de escala das variáveis analógicas


io.do_lastchange

Retorna o tempo em segundos desde a última mudança do status da entrada digital solicitada.

io.do_lastchange(DO, status = any);

Resposta: int tempo em segundos desde a última mudança.

O parâmetro status é um parâmetro booleano opcional para indicar qual o status deve ser retornado. Por exemplo, se o interesse for só pelo status de tempo da saída digital em true, o parâmetro só vai retornar o tempo desde a última mudança se a saída digital estiver em true.

Exemplo 1

Saber o tempo desde que a saída digital foi comutada, sem se importar se o status atual dela é true/false.

io.do_lastchange(1);

Resposta: int tempo desde que a saída digital foi comutada.

Exemplo 2

Saber o tempo desde que a saída digital foi comutada, mas somente se a respectiva saída digital estiver em true.

io.do_lastchange(1, true);

Resposta: int caso a saída digital esteja em false será retornado 0. Caso a saída digital esteja em true será retornado o tempo desde que a saída digital foi comutada (nesse caso de false para true).


di

Função global utilizada para realizar leitura de dados obtidos através da entradas digitais (DIs).

di.setDIcicles

Seta o número de ticks do processador para considerar uma mudança de status da entrada digital. O mesmo parâmetro definido em webserver. Essa função deve ser chamada na inicialização do programa.

di.setDIcicles(ticks);

di.lastchange

Retorna o tempo em segundos desde a última mudança do status da entrada digital solicitada.

di.lastchange(DI, status = any);

Resposta: int tempo em segundos desde a última mudança.

O parâmetro status é um parâmetro booleano opcional para indicar qual o status deve ser retornado. Por exemplo, se o interesse for só pelo status de tempo da entrada digital em true, o parâmetro só vai retornar o tempo desde a última mudança se a entrada digital estiver em true.

Exemplo 1

Saber o tempo desde que a entrada digital foi comutada, sem se importar se o status atual dela é true/false.

di.lastchange(1);

Resposta: int tempo desde que a entrada digital foi comutada.

Exemplo 2

Saber o tempo desde que a entrada digital foi comutada, mas somente se a respectiva entrada digital estiver em true.

di.lastchange(1, true);

Resposta: int caso a entrada digital esteja em false será retornado 0. Caso a entrada digital esteja em true será retornado o tempo desde que a entrada digital foi comutada (nesse caso de false para true).


di.timer

Retorna o horímetro em segundos desde o último reset do contador da respectiva entrada digital. Tanto o contador de nível alto quanto o de nível baixo registram o tempo considerando o tempo que o equipamento ficou ligado, desconsiderando o tempo que o equipamento não esteve energizado.

di.timer(DI, status = true);

Resposta: int tempo em segundos desde o último reset do contador.

Exemplo 1

Retornar o tempo do horímetro em nível alto na entrada digital 1.

di.timer(1, true);

Resposta: int tempo em segundos que a entrada digital 1 ficou em high desde o último reset.

Exemplo 2

Retornar o tempo do horímetro em nível baixo na entrada digital 1.

di.timer(1, false);

Resposta: int tempo em segundos que a entrada digital 1 ficou em low desde o último reset.


di.timer_m

Retorna o horímetro em minutos, basicamente a mesma função di.timer divido por 60 para a resposta ser em minutos.

di.timer_m(DI, status = true);

Resposta: double tempo em minutos desde o último reset do contador.

Exemplo 1

Retornar o tempo do horímetro em nível alto na entrada digital 1.

di.timer_m(1, true);

Resposta: double tempo em minutos que a entrada digital 1 ficou em high desde o último reset.

Exemplo 2

Retornar o tempo do horímetro em nível baixo na entrada digital 1.

di.timer_m(1, false);

Resposta: double tempo em minutos que a entrada digital 1 ficou em low desde o último reset.


di.timer_h

Retorna o horímetro em horas, basicamente a mesma função di.timer divido por 3600 para a resposta ser em minutos.

di.timer_h(DI, status = true);

Resposta: double tempo em horas desde o último reset do contador.

Exemplo 1

Retornar o tempo do horímetro em nível alto na entrada digital 1.

di.timer_h(1, true);

Resposta: double tempo em horas que a entrada digital 1 ficou em high desde o último reset.

Exemplo 2

Retornar o tempo do horímetro em nível baixo na entrada digital 1.

di.timer_h(1, false);

Resposta: double tempo em horas que a entrada digital 1 ficou em low desde o último reset.


di.timer_adjust

Altera o valor salvo no registrador do horímetro em segundos.

Atenção

Essa função escreve na memória retentiva do equipamento, não utilize ela em escritas repetidas exaustivas pois isso afeta a vida útil da memória retentiva.

di.timer_adjust(DI, value, status = true);

Resposta: true/false.

Exemplo 1

Ajustar o tempo do horímetro em nível alto na entrada digital 1 para o valor 0.

di.timer_adjust(1, 0, true);

Resposta: true/false.

Exemplo 2

Ajustar o tempo do horímetro em nível baixo na entrada digital 1 para o valor 0.

di.timer_adjust(1, 0, false);

Resposta: true/false.


di.pulse

Retorna a contagem de pulsos acumulados desde o último reset do contador da respectiva entrada digital solicitada.

di.pulse(DI);

Resposta: int contagem de pulsos desde o último reset do contador.

Exemplo

Verificar a contagem de pulsos do contador na DI1.

di.pulse(1);

Resposta: int contagem de pulsos desde o último reset do contador.


di.pulse_adjust

Altera o valor salvo no registrador do contador de pulsos.

Atenção

Essa função escreve na memória retentiva do equipamento, não utilize ela em escritas repetidas exaustivas pois isso afeta a vida útil da memória retentiva.

di.pulse_adjust(DI, value);

Resposta: true/false.

Exemplo 1

Ajustar o contador de pulsos da entrada digital 1 para o valor 0.

di.pulse_adjust(1, 0);

Resposta: true/false.