TCP_DISCONNECT
Fecha uma conexão TCP em um socket especificado, encerrando o canal de comunicação Ethernet associado. É 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
TCP_DISCONNECT
+--------------+
BOOL ----|START EVT|---- BOOL
| |
USINT ----|SOCK RESULT|---- UINT
+--------------+
A desconexão é iniciada pela transição de START para TRUE. Ao concluir o processo,
a saída EVT emite um pulso e RESULT indica o estado da operação
(HILS.SUCCESS = 0 quando a conexão foi fechada com sucesso). A entrada SOCK
seleciona qual socket TCP terá a conexão encerrada.
Nota
O socket é indicado por um identificador do tipo COMM_CHAN_ID (por exemplo,
HILS.SOCK1_PORT_ID .. HILS.SOCK7_PORT_ID). Cada equipamento disponibiliza
um subconjunto dos sockets TCP/IP; consulte o manual do equipamento para saber
quais canais estão efetivamente disponíveis.
Parâmetros
Nome |
Direção |
Tipo |
Padrão |
Faixa / Unidade |
Descrição |
|---|---|---|---|---|---|
START |
IN |
BOOL |
FALSE |
— |
Avaliado por transição: inicia o fechamento da conexão TCP no socket indicado. |
SOCK |
IN |
USINT |
9 |
COMM_CHAN_ID |
Socket cuja conexão TCP será encerrada (ex.: |
EVT |
OUT |
BOOL |
FALSE |
— |
Pulso indicando que o processo de desconexão foi concluído. |
RESULT |
OUT |
UINT |
0 |
RET_CODE |
Código de retorno da operação (ver Códigos de retorno). |
Códigos de retorno
RESULT é do tipo RET_CODE. Use os identificadores com o namespace HILS
(ex.: HILS.CO_SOCK_ERR). Códigos mais comuns deste bloco:
Código |
Identificador |
Significado |
|---|---|---|
0 |
SUCCESS |
Conexão TCP encerrada com sucesso. |
63 |
CO_CONEX_FAIL |
Falha no processo de conexão/desconexão. |
67 |
CO_SOCK_ERR |
Erro de socket (não foi possível acessar/usar o socket). |
72 |
CO_CHA_CLO |
Canal de comunicação já fechado (inativo). |
74 |
CO_INV_CHA |
Canal de comunicação inválido. |
10 |
GL_CMD_TMO |
Timeout na execução do comando. |
Lista completa dos códigos de retorno: RET_CODE - Códigos de retorno do firmware G5.
Pré-condições
O socket indicado em
SOCKdeve estar disponível no equipamento e configurado para operação TCP/IP.
Observações
EVTfica ativo por um único scan, no instante em que o processo termina; avalieRESULTnesse mesmo scan.Fechar um socket que já esteja inativo retorna
HILS.CO_CHA_CLO.
Ver também
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
TCP_DISCONN : HILS.TCP_DISCONNECT;
DISCONN_START : BOOL := FALSE;
DISC_RET : UINT := 0;
END_VAR
(* Fecha a conexao no socket 7 *)
TCP_DISCONN(
START := DISCONN_START,
SOCK := HILS.SOCK7_PORT_ID
);
(* Aguarda o evento de conclusao *)
IF (TCP_DISCONN.EVT) THEN
DISC_RET := TCP_DISCONN.RESULT;
IF (TCP_DISCONN.RESULT = HILS.SUCCESS) THEN
(* desconexao realizada com sucesso *)
END_IF;
END_IF;