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);
mode | Descriçã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.
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.
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
.