Modbus Server

O MHO Keeper pode ser configurado como um Modbus Server
, que responde a requisições de um dispositivo Modbus Client. Nesse modo o equipamento serve como uma ponte de configuração e monitoramento remoto. Quando o Keeper opera no modo server, o client que está requisitando os dados deverá interpretar os registros da seguinte forma:
base 0
: Os endereços são interpretados como início em 0. Caso o dispositivo Client interprete de outra forma, pode ser necessário deslocar os endereços no client;Dados no modo big-endian
: Caso o dispositivo Client trabalhe em outra formatação é necessário ativar modos de manipulação de dados no dispositivo client como Word-Swap, byte-swap entre outros.
Os dados são escritos da seguinte forma:
Código (DEC) | Função | Descrição |
---|---|---|
02 | Read discrete Inputs | Ler DIs; Ler parâmetros booleanos recebidos do servidor. |
01 | Read Coils | Ler DO; Ler parâmetro de envio ao servidor. |
05 | Write single coils | Alterar status DO; (*) Alterar parâmetro booleano de envio ao servidor. |
15 | Write multiple Coils | Alterar status DOs; (*) Alterar parâmetros booleanos de envio ao servidor. |
04 | Read input Register | Ler AIs; Ler parâmetros inteiros recebidos do servidor. |
03 | Read hold Register | Ler parâmetros de envio ao servidor. |
06 | Write single Register | (*) Alterar parâmetro de envio ao servidor. |
16 | Write multiple Register | (*) Alterar parâmetro de envio ao servidor. |
Configuração de comunicação
Para realizar a configuração dos parâmetros de comunicação serial, é utilizado o webserver do equipamento, siga as instruções contida na base de conhecimento para acessar o webserver primeiros passos.
Tabelas de endereços
O endereçamento Modbus sofre modificações conforme o modelo de equipamento e quantidade de endereços solicitados, segue abaixo o tipo do equipamento a ser especificado:
Função | Qt. de Memórias | Uso |
---|---|---|
Coils | 500 | Enviar dados binários para o servidor |
Discrete Inputs | 500 | Receber dados binários do servidor |
Holding registers | 500 | Enviar dados numéricos para o servidor |
Input registers | 500 | Receber dados numéricos do servidor |
As seguintes funções estão disponíveis:
Código (DEC) | Função |
---|---|
02 | Read discrete Inputs |
01 | Read Coils |
05 | Write single coils |
15 | Write multiple Coils |
04 | Read input Register |
03 | Read hold Register |
06 | Write single Register |
16 | Write multiple Register |
Coils (MB)
Enviar valores binários ao servidor e ler/comandar DOs
Memória | Função | Notas |
---|---|---|
1-1000 | Disponível para telemetria | - |
1001-5000 | Reservado | - |
5001 | DO1 | true ativo, false inativo |
5002 | DO2 | true ativo, false inativo |
5003 | DO3 | true ativo, false inativo |
5004 | DO4 | true ativo, false inativo |
5005 | DO5 | true ativo, false inativo |
5006 | DO6 | true ativo, false inativo |
5007 | DO7 | true ativo, false inativo |
5008 | DO8 | true ativo, false inativo |
5009 | DO9 | true ativo, false inativo |
5010 | DO10 | true ativo, false inativo |
5011 | DO11 | true ativo, false inativo |
5012 | DO12 | true ativo, false inativo |
5013 | DO13 | true ativo, false inativo |
5014 | DO14 | true ativo, false inativo |
5015 | DO15 | true ativo, false inativo |
5016 | DO16 | true ativo, false inativo |
Discrete inputs (DIN)
Receber valores binários ao servidor e ler DIs
Memória | Função | Notas |
---|---|---|
1-1000 | Disponível para telemetria | - |
1001-5000 | Reservado | - |
5001 | DI1 | true ativo, false inativo |
5002 | DI2 | true ativo, false inativo |
5003 | DI3 | true ativo, false inativo |
5004 | DI4 | true ativo, false inativo |
5005 | DI5 | true ativo, false inativo |
5006 | DI6 | true ativo, false inativo |
5007 | DI7 | true ativo, false inativo |
5008 | DI8 | true ativo, false inativo |
5009 | DI9 | true ativo, false inativo |
5010 | DI10 | true ativo, false inativo |
5011 | DI11 | true ativo, false inativo |
5012 | DI12 | true ativo, false inativo |
5013 | DI13 | true ativo, false inativo |
5014 | DI14 | true ativo, false inativo |
5015 | DI15 | true ativo, false inativo |
5016 | DI16 | true ativo, false inativo |
Holding register (MI)
Enviar valores 16 bits ao servidor
Memória | Função | Notas |
---|---|---|
1-1000 | Disp. telemetria | - |
1001-5000 | Reservado | - |
Input register (IR)
Receber valores 16 bits do servidor e ler AIs
Memória | Função | Notas |
---|---|---|
1-1000 | Disponível para telemetria | - |
1001-5000 | Reservado | - |
5001 | AI1 | int16 - Valor de leitura do conversor AD |
5002 | AI2 | int16 - Valor de leitura do conversor AD |
5003 | AI3 | int16 - Valor de leitura do conversor AD |
5004 | AI4 | int16 - Valor de leitura do conversor AD |
5005 | AI5 | int16 - Valor de leitura do conversor AD |
5006 | AI6 | int16 - Valor de leitura do conversor AD |
5101 ~ 5104 | DI1p | uint64 - Contador de pulsos |
5201 ~ 5204 | DI1hm0 | uint64 - Horímetro de nível baixo da DI, em segundos |
5301 ~ 5304 | DI1hm1 | uint64 - Horímetro de nível alto da DI, em segundos |