MODEM_CONN

Envia a sequência de comandos AT de um modem 3G ou NBIOT para abrir uma conexão com um IP/(Host name) e porta especificados pela rede celular; requer que o modem já esteja com acesso à rede celular disponível e previamente configurado. É um bloco de função (mantém estado entre scans; requer instância).

Biblioteca: HI_STD · Namespace: HILS · Tipo: bloco de função

Bloco de função

                MODEM_CONN
           +-------------------+
  BOOL ----|START      DONE_EVT|---- BOOL
           |                   |
  BOOL ----|AUTH         RESULT|---- INT
           |                   |
 USINT ----|COMM_SRC      READY|---- BOOL
           |                   |
           |             CLOSED|---- BOOL
           |                   |
           |            NET_QLT|---- SINT
           |                   |
STRING ----|IP_HN ------------ |----
           |                   |
STRING ----|PORT ------------- |----
           +-------------------+

Após o bloco ser habilitado pela entrada EN, ele aguarda uma transição de subida em START; quando essa ocorre, o bloco configura o modem e, se o procedimento for executado com sucesso, ativa a saída READY. A entrada START deve permanecer ativa durante toda a execução do bloco.

Nota

Para utilização deste bloco, o modem deverá estar com o acesso à rede 3G ou NBIOT disponível. Devem ser utilizados os blocos RNB_CFG (modem NBIOT) ou U3G_CFG (modem 3G) para a configuração inicial do modem. O MODEM_CONN deve ser ativado apenas após o bloco de configuração indicar que esse processo terminou corretamente.

AUTH — quando ativada, ao final de uma conexão bem-sucedida com o IP destino o bloco monta e envia um pacote de autenticação para o destino da conexão. Nesse caso o servidor que recebe a conexão deve ser o portal de telemetria da HI Tecnologia. O pacote autentica o equipamento no portal no padrão V1 e só é enviado se a porta destino for 16800 (MODBUS-TCP) ou 16810 (MODBUS-RTU).

IP_HN e PORT — strings preenchidas pelo usuário para a execução do bloco. Se esses parâmetros forem modificados, um novo pulso em START deve ser gerado.

READY — indica que o modem foi configurado e a conexão TCP foi estabelecida com o endereço destino. Vai para zero se houver transição de descida em START, se o acesso à rede ficar indisponível ou se a conexão TCP for fechada. Neste último caso, se START se mantiver habilitado, o bloco tenta abrir a conexão novamente.

DONE_EVT — pulso que indica que algum evento do bloco foi gerado, podendo ser um erro durante o processo ou a finalização do bloco. Sempre que DONE_EVT estiver ativa, RESULT indica se o processo foi realizado com sucesso (RESULT = 0) ou não.

CLOSED — indica que o processo de fechamento da conexão TCP com o IP e porta destino na rede celular foi finalizado. O usuário só deve habilitar START para tentar uma nova conexão se essa variável estiver em TRUE.

Parâmetros

Nome

Direção

Tipo

Dimensão

Padrão

Faixa / Unidade

Descrição

START

IN

BOOL

—

FALSE

—

Habilita o início da configuração; deve permanecer ativa durante a execução.

AUTH

IN

BOOL

—

FALSE

—

Se TRUE, autentica (padrão V1) no portal de telemetria da HI Tecnologia ao conectar.

COMM_SRC

IN

USINT

—

0

Canal de comunicação

Canal de comunicação a ser utilizado (ver Canais de comunicação).

IP_HN

IN_OUT

STRING

:40

—

—

IP destino ou nome do host.

PORT

IN_OUT

STRING

:6

—

—

Porta destino.

DONE_EVT

OUT

BOOL

—

FALSE

—

Pulso que sinaliza a ocorrência de um evento que mudou o estado do bloco; RESULT é válido nesse instante.

RESULT

OUT

INT

—

0

Ver códigos

Resultado da operação (válido quando DONE_EVT está ativo).

READY

OUT

BOOL

—

FALSE

—

Indica que o modem foi configurado e a conexão TCP foi estabelecida.

CLOSED

OUT

BOOL

—

TRUE

—

Sinaliza que a conexão foi fechada no lado do modem.

NET_QLT

OUT

SINT

—

0

0 .. 100 %

Qualidade do sinal da rede celular.

Canais de comunicação

O canal (COMM_SRC) é identificado por um valor numérico, com namespace HILS:

Identificador

Valor

Meio físico

COM1_PORT_ID .. COM8_PORT_ID

0 .. 7

Portas seriais

SOCK0_PORT_ID .. SOCK7_PORT_ID

8 .. 15

Sockets Ethernet 1

ETH2_SOCK0_PORT_ID .. ETH2_SOCK7_PORT_ID

16 .. 23

Sockets Ethernet 2

Códigos de retorno

A saída RESULT é válida quando DONE_EVT está ativo e assume os seguintes valores:

Código

Significado

0

Processo executado com sucesso.

-10

Erro na abertura do socket (não foi possível adquirir um socket disponível no modem).

-20

Erro na conexão com o IP e porta especificados.

-99

Erro de timeout (preso em algum estado aguardando um evento; provavelmente o modem não respondeu a um comando).

Pré-condições

  • O modem deve estar com acesso à rede 3G ou NBIOT disponível.

  • O modem deve ter sido previamente configurado por RNB_CFG (NBIOT) ou U3G_CFG (3G), com o processo de configuração concluído com sucesso.

  • IP_HN e PORT devem estar preenchidos antes do pulso de subida em START.

  • Para tentar uma nova conexão, CLOSED deve estar em TRUE.

Observações

  • A autenticação por AUTH só é enviada quando a porta destino é 16800 (MODBUS-TCP) ou 16810 (MODBUS-RTU).

  • Alterar IP_HN ou PORT exige um novo pulso em START.

Ver também

RNB_CFG, U3G_CFG