TCP_DISCONNECT

A função deste bloco é fechar uma conexão TCP em um socket especificado.

Bloco

           TCP_DISCONNECT
          +--------------+
 BOOL ----|START      EVT|---- BOOL
          |              |
USINT ----|SOCK    RESULT|---- UINT
          +--------------+

Parâmetros

Nome

Classe

Tipo

Dim.

V. Ini.

Descrição

START

Entrada

BOOL

FALSE

Inicia a tentativa de conexão com o IP e porta destino

SOCK

Entrada

USINT

9

Socket a ser utilizado para tentativa de conexão

EVT

Saída

BOOL

FALSE

Pulso de processo concluído

RESULT

Saída

UINT

0

Resultado da operação

ID

LABEL [4]

Tipo de canal de comunicação [5]

9

SOCK1_PORT_ID

Identificador do socket 1

10

SOCK2_PORT_ID

Identificador do socket 2

11

SOCK3_PORT_ID

Identificador do socket 3

12

SOCK4_PORT_ID

Identificador do socket 4

13

SOCK5_PORT_ID

Identificador do socket 5

14

SOCK6_PORT_ID

Identificador do socket 6

15

SOCK7_PORT_ID

Identificador do socket 7

Essa tabela considera até 7 sockets TCP para o canal Ethernet, mas deve-se verificar no equipamento utilizado os canais de comunicação efetivamente disponíveis para conexão TCP/IP.

RESULT

Tipo Dado

Descrição

INT

Código de retorno na execução da função, do tipo RET_CODE, onde:

  • Se for igual a 0: Função executada com sucesso - código HILS.SUCCESS

  • Se for diferente de 0: Falha na execução da função indica o respectivo código de erro. [6]

Exemplo

Declaração de Variáveis

Nome

Classe

Tipo

Valor Inicial

TCP_DISCONN

Local

TCP_DISCONNECT

DISCONN_START

Local

BOOL

FALSE

DISC_RET

Local

UINT

0

DISC_COUNT

Local

UINT

0

Clique aqui para baixar a tabela de variáveis

Código ST

// Fecha a conexao
TCP_DISCONN(
  START  := DISCONN_START,
  SOCK   := SOCK7_PORT_ID
  );

// Aguarda evento
IF (TCP_DISCONN.EVT) THEN
  IF (TCP_DISCONN.RESULT = SUCCESS) THEN
    // desconexao realizada com sucesso
  END_IF;
END_IF;