Exemplo – Escrita de Inteiros de 16 Bits
Este exemplo demonstra como realizar a escrita de valores inteiros de 16 bits utilizando a biblioteca pyModbusTCPtools, contemplando valores sem sinal (UINT16) e valores com sinal (INT16).
A escrita de inteiros de 16 bits é comum em aplicações industriais para envio de setpoints, parâmetros e comandos numéricos simples.
Cenário típico
- Escrita de setpoints
- Escrita de parâmetros de configuração
- Envio de comandos numéricos inteiros
- Ajuste de variáveis internas de CLPs
Neste exemplo, será realizada a escrita em Holding Registers a partir do endereço 600.
Importações
1 2 3 4 | |
Criação do cliente
1 2 3 4 5 6 | |
Escrita de inteiro de 16 bits sem sinal (UINT16)
1 2 3 4 5 6 7 8 9 10 | |
Escrita de inteiro de 16 bits com sinal (INT16)
1 2 3 4 5 6 7 8 9 10 | |
Diferença entre INT16 e UINT16
UINT16aceita valores no intervalo de 0 a 65535INT16aceita valores no intervalo de -32768 a 32767- A biblioteca valida automaticamente o range
- Valores fora do range geram erro de conversão
Comportamento dos métodos
Os métodos de escrita tipada:
- Retornam
Trueem caso de sucesso - Retornam
Falseem caso de falha - Validam tipo e faixa de valores
- Realizam reconexão automática se necessário
- Aplicam backoff exponencial
- Registram logs detalhados
Observações importantes
- O endereçamento é zero-based
- Utilize o tipo correto (com ou sem sinal)
- Não escreva valores fora do range permitido
- Sempre verifique o retorno do método
Encerrando a conexão
Após finalizar as escritas, a conexão pode ser encerrada explicitamente:
1 | |