MDB_MDB_CEL_BRIDGE

Este bloco tem a função de executar uma bridge MODBUS-MODBUS entre um canal ou mais canais de comunicação e o módulo 3G ou NBIOT dos equipamentos da HI Tecnologia com a rede de telefonia celular.

Após o bloco ser habilitado pela entrada EN, ficará aguardando uma transição de subida em START; quando esta ocorrer, o bloco irá configurar o modem e posteriormente abrir conexão com o endereço IP especificado (utilizando o bloco MODEM_RNB_U3G). Quando esta conexão é estabelecida o equipamento se mantêm conectado com o IP operando com protocolo MODBUS-TCP ou MODBUS-RTU.

Adicionalmente habilita o bloco de MDB_GATEWAY para leitura e escrita dos dados referenciados no Mapeamento de dados MODBUS

Após a configuração do modem celular o valor da qualidade do sinal de rede é salva na variável de sistema 930 e pode ser acessada externamente pelo programa ou por dispositivos externos MODBUS.

Por fim, o bloco chama uma rotina que controla o led vermelho do equipamento na qual sinaliza os seguintes estados:

  • Led Vermelho ACESO: Equipamento configurando rede celular ou bloco desabilitado.

  • Led Vermelho PISCANDO: Equipamento em processo de abertura de conexão TCP.

  • Led Vermelho APAGADO: Equipamento operando, trocando dados com sucesso.

OBS: Este bloco é somente válido quando conectado a um Modem 3G/NB-IoT na ITF B do equipamento.

A entrada START deve permanecer em nível alto durante a execução do bloco. Os itens a seguir detalham o funcionamento do bloco.

Bloco

                MDB_MDB_CEL_BRIDGE
           +---------------------------+
  BOOL ----|START                BRT_EV|---- INT
           |                           |
  BOOL ----|EN_SCAN             END_CYC|---- INT
           |                           |
  BOOL ----|SKIP_RD               RD_EV|---- BOOL
           |                           |
 USINT ----|COMM_SRC             RD_CHG|---- BOOL
           |                           |
 USINT ----|DMAP_ID               RD_ID|---- INT
           |                           |
  TIME ----|POLL_TME             RD_CID|---- INT
           |                           |
  TIME ----|PACK_TME            RD_CODE|---- INT
           |                           |
   INT ----|MODEM_TMO             WR_EV|---- BOOL
           |                           |
  UINT ----|MODEM_AUTH            WR_ID|---- INT
           |                           |
  BOOL ----|MODEM_SIMSTK         WR_CID|---- INT
           |                           |
           |                    WR_CODE|---- INT
           |                           |
           |               MODEM_RESULT|---- INT
           |                           |
  BOOL ----|CACHE -------------------- |----
           |                           |
STRING ----|MODEM_PIN ---------------- |----
           |                           |
STRING ----|MODEM_APN ---------------- |----
           |                           |
STRING ----|MODEM_USER --------------- |----
           |                           |
STRING ----|MODEM_PASSW -------------- |----
           |                           |
STRING ----|MODEM_IP ----------------- |----
           |                           |
STRING ----|MODEM_PORT --------------- |----
           +---------------------------+

Para utilização deste bloco, o usuário deverá inicialmente, utilizando o recurso de Mapeamento de dados criar um canal de mapeamento e associá-lo ao protocolo MODBUS. Em seguida, no canal de mapeamento criado, definir os itens a serem obtidos remotamente e os itens a serem enviados. Note que todos os itens criados devem estar associados a variáveis globais exportadas.

Na lista das variáveis a serem lidas, agrupe as variáveis por endereço de comunicação. Desta forma, quando o correr um erro de comunicação na leitura de uma determinada variável, as variáveis subsequentes que possuírem o mesmo endereço de comunicação serão descartadas no ciclo de aquisição corrente, evitando uma demora no processo gerada pelo timeout de falha em cada processo de leitura.

Importante

Para a utilização desse bloco, os canais de comunicação utilizados para acesso aos equipamentos devem possuir as seguintes configurações:

  • O protocolo de aplicação deve estar configurado como MODBUS-TCP ou MODBUS-RTU em função do equipamento remoto a ser acessado.

  • Se o canal for ethernet o socket associado deve estar configurado como cliente TCP/IP e com auto conexão desativada.

  • Se o canal for serial os parâmetros de baudrate, data bits, stop bits e paridade devem ser compatíveis com as configurações dos equipamentos a serem acessados.

Caso possua dúvidas sobre como configurar o socket assista ao tutorial: Configurando recursos de conectividade do equipamento.

Parâmetros

Nome

Classe

Tipo

Dim.

V. Ini.

Descrição

START

Entrada

BOOL

FALSE

Habilita operação do bloco

EN_SCAN

Entrada

BOOL

TRUE

Habilita o polling de dados do equipamento remoto

SKIP_RD

Entrada

BOOL

FALSE

Quando habilitada imediatamente após um evento BRT_EV cancela a transação de leitura corrente

COMM_SRC

Entrada

USINT

0

Canal de comunicação utilizado para acesso equipamento Modbus (ex: COM1_PORT_ID)

DMAP_ID

Entrada

USINT

0

Id do mapeamento de dados associado aos canais de acesso aos equipaemntos remotos

POLL_TME

Entrada

TIME

T#40ms

Tempo entre um ciclo de comunicação

PACK_TME

Entrada

TIME

T#20ms

Tempo entre pacotes de comunicação

CACHE

Entrada/Saída

INT

[*]

0

Cache de items a serem enviados ao equipamento remoto (deve ser fornecido um vetor de tipos INT)

MODEM_TMO

Entrada

UINT

180

Tempo em seg para timeout de desconexão com end destino (tempo para fechar a conexão com rede celular na por falta de troca de

MODEM_AUTH

Entrada

BOOL

FALSE

Flag se autentica (V1) no portal de telemetria da HI Tecnologia ao se conectar

MODEM_SIMSTK

Entrada

BOOL

FALSE

Chip Multioperadora: habilita SIM ToolKit (default: false)

MODEM_PIN

Entrada/Saída

STRING

:*

PIN do SIM CARD

MODEM_APN

Entrada/Saída

STRING

:*

APN da operadora do chip de rede celular

MODEM_USER

Entrada/Saída

STRING

:*

Usuário da operadora de rede celular

MODEM_PASSW

Entrada/Saída

STRING

:*

Senha da operadora de rede celular

MODEM_IP

Entrada/Saída

STRING

:*

Endereço IP remoto a ser acessado

MODEM_PORT

Entrada/Saída

STRING

:*

Porta de escuta remota

BRT_EV

Saída

INT

0

Quando ativo, indica que uma nova transação de leitura do gateway modbus será iniciada.

END_CYC

Saída

INT

0

Quando ativo, indica que terminou um ciclo de aquisição de items nos equipamentos remotos

RD_EV

Saída

BOOL

FALSE

Indica fim do processo de aquisição de um item no equipamento remoto (MODBUS)

RD_CHG

Saída

BOOL

FALSE

Indica que a variavel adquirida é diferente do valor anterior presente na base global (MODBUS)

RD_ID

Saída

INT

-1

Id do item da última aquisição do equipamento remoto (MODBUS)

RD_CID

Saída

INT

-1

Id de comunicação da última leitura no equipamento remoto

RD_CODE

Saída

INT

0

Código de retorno da ultima recepção remota (MODBUS)

WR_EV

Saída

BOOL

FALSE

Indica fim do processo de escrita de um item no equipamento remoto (MODBUS)

WR_ID

Saída

INT

-1

Id do item da última escrita no equipamento remoto (MODBUS)

WR_CID

Saída

INT

-1

Id de comunicação da última escrita no equipamento remoto

WR_CODE

Saída

INT

0

Código de retorno da ultima escrita no equipamento remoto (MODBUS)

MODEM_RESULT

Saída

INT

0

Resultado da operação do bloco de conexão via rede celular

Entradas

EN_SCAN

Parâmetro de entrada associado ao bloco de função MDB_GATEWAY:EN_SCAN.

SKIP_RD

Parâmetro de entrada associado ao bloco de função MDB_GATEWAY:SKIP_RD.

DMAP_ID

Parâmetro de entrada associado ao bloco de função MDB_GATEWAYD:MAP_ID.

COMM_SRC

Parâmetro de entrada associado ao bloco de função MDB_GATEWAY:COMM_SRC.

POLL_TME

Parâmetro de entrada associado ao bloco de função MDB_GATEWAY:IPOLL_TME.

PACK_TME

Parâmetro de entrada associado ao bloco de função MDB_GATEWAY:IPACK_TME.

CACHE

Parâmetro de entrada/saída associado ou bloco de função MDB_GATEWAY:W_CACHE.

MODEM_TMO

Tempo em segundos para desconexão com o endereço de destino se não ouver troca de dados.

MODEM_SIMSTK

Parâmetro de entrada associado ao bloco de função MODEM_RNB_U3G:SIM_STK.

MODEM_PIN

Parâmetro de entrada associado ao bloco de função MODEM_RNB_U3G:PIN.

MODEM_APN

Parâmetro de entrada associado ao bloco de função MODEM_RNB_U3G:APN.

MODEM_USER

Parâmetro de entrada associado ao bloco de função MODEM_RNB_U3G:USER.

MODEM_PASSW

Parâmetro de entrada associado ao bloco de função MODEM_RNB_U3G:PASSW.

MODEM_IP

Parâmetro de entrada associado ao bloco de função MODEM_RNB_U3G:IP.

MODEM_PORT

Parâmetro de entrada associado ao bloco de função MODEM_RNB_U3G:PORT.

Saídas

BRT_EV

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:BRT_EV.

END_CYC

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:END_CYC.

RD_EV

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:RD_EV.

RD_CHG

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:RD_CHG.

RD_ID

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:RD_ID.

RD_CID

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:RD_ID.

RD_CODE

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:RD_CODE.

WR_EV

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:WR_EV.

WR_ID

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:WR_ID.

WR_CID

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:WR_ID.

WR_CODE

Parâmetro de saída associado ao bloco de função MDB_GATEWAY:WR_CODE.

MODEM_RESULT

Se diferente de zero, indica o código de erro obtido no processo de configuração ou conexão do modem celular.

Exemplo

Declaração de variáveis

Nome

Classe

Tipo

Dimensão

Valor Inicial

Descrição

START

Local

BOOL

FALSE

Start do bloco BRIDGE_CEL_MDB

EN_SCAN

Local

BOOL

TRUE

Habilita o polling de dados do equipamento remoto modbus

MODEM_PIN

Local

STRING

:4

‘’

PIN do SIM Card da rede celular

MODEM_APN

Local

STRING

:31

‘apn.com’

APN do SIM Card da rede celular

MODEM_USER

Local

STRING

:15

‘user’

Usuário do SIM Card da rede celular

MODEM_PASSW

Local

STRING

:10

‘passw’

Senha do SIM Card da rede celular

MODEM_IP

Local

STRING

:40

‘54.227.237.88’

Endereço IP Portal de telemetria HI Tecnologia

MODEM_PORT

Local

STRING

:6

‘16795’

Porta do portal de telemetria da HI Tecnologia

DEVS_CACHE

Local

INT

[0..49]

0

Cache de items a serem enviados ao equipamento remoto

BRIDGE_CEL_MDB

Local

HILS.MDB_MDB_CEL_BRIDGE

Instancia do bloco MDB_MDB_CEL_BRIDGE

Clique aqui para baixar a tabela de variáveis

Código ST

BRIDGE_CEL_MDB(  // MDB_MDB_CEL_BRIDGE
  START        := START,             // [BOOL] Habilita operação do bloco
  EN_SCAN      := EN_SCAN,           // [BOOL] Habilita o polling de dados do equipamento remoto
  SKIP_RD      := FALSE,             // [BOOL] Quando habilitada imediatamente após um evento BRT_EV cancela a transação  de leitura corrente
  COMM_SRC     := HILS.COM1_PORT_ID, // [USINT] Canal de comunicação utilizado para acesso equipamento Modbus  (ex: COM1_PORT_ID)
  DMAP_ID      := 1,            // [USINT] Id do mapeamento de dados associado aos canais de acesso aos equipaemntos remotos
  POLL_TME     := T#500ms,      // [TIME] Tempo entre um ciclo de comunicação
  PACK_TME     := T#2s,         // [TIME] Tempo entre pacotes de comunicação
  CACHE        := DEVS_CACHE,   // [INT] Cache de items a serem enviados ao equipamento remoto (deve ser fornecido um vetor de tipos INT)
  MODEM_TMO    := 60,           // [INT] Tempo em seg para timeout de desconexão com end destino (tempo para fechar a conexão com rede celular na por falta de troca de
  MODEM_SIMSTK := FALSE,        // [BOOL] Chip Multioperadora: habilita SIM ToolKit  (default: false)
  MODEM_PIN    := MODEM_PIN,    // [STRING] PIN do SIM CARD
  MODEM_APN    := MODEM_APN,    // [STRING] APN da operadora do chip de rede celular
  MODEM_USER   := MODEM_USER,   // [STRING] Usuário da operadora de rede celular
  MODEM_PASSW  := MODEM_PASSW,  // [STRING] Senha da operadora de rede celular
  MODEM_IP     := MODEM_IP,     // [STRING] Endereço IP remoto a ser acessado
  MODEM_PORT   := MODEM_PORT    // [STRING] Porta de escuta remota
  );