Exemplo – Leitura de Discrete Inputs
Este exemplo demonstra como realizar a leitura de Discrete Inputs (entradas digitais somente leitura) utilizando a biblioteca pyModbusTCPtools de forma segura.
Discrete Inputs são normalmente utilizados para leitura de sensores digitais, chaves de fim de curso, botões e sinais de estado que não podem ser escritos pelo cliente Modbus.
Cenário típico
- Leitura de sensores digitais
- Monitoramento de fim de curso
- Verificação de estados de segurança
- Leitura de entradas físicas de CLPs e módulos remotos
Neste exemplo, será realizada a leitura de Discrete Inputs a partir do endereço 0.
Importações
1 | |
Criação do cliente
1 2 3 4 5 6 | |
Leitura de Discrete Inputs
Leitura de uma entrada digital
1 2 3 4 5 6 7 | |
Leitura de múltiplas entradas digitais
1 2 3 4 5 6 7 | |
Comportamento do método
O método read_discrete_inputs_safe possui o seguinte comportamento:
- Retorna uma lista de valores booleanos em caso de sucesso
- Retorna
Noneem caso de falha - Realiza reconexão automática se necessário
- Aplica backoff exponencial em falhas consecutivas
- Registra logs detalhados
Observações importantes
- O endereçamento é zero-based
- Discrete Inputs são somente leitura
- Sempre valide o retorno antes de acessar os valores
- Não assuma que o endereço da entrada existe no dispositivo
- Em ambientes industriais, falhas de leitura devem ser tratadas como eventos normais
Encerrando a conexão
Após finalizar as leituras, a conexão pode ser encerrada explicitamente:
1 | |