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.