S3B_SET_PREAMBLE

Configura o parâmetro de preâmbulo (Hopping) do módulo de comunicação wireless S3B (rádio XBee), usado para criar subredes independentes em um conjunto de rádios — apenas os rádios com o mesmo valor de preâmbulo trocam informações entre si. É executado a cada transição da entrada START e interrompe a comunicação transparente do canal durante a configuração. É 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

          S3B_SET_PREAMBLE
         +-----------------+
 BOOL ---|START        DONE|--- BOOL
         |                 |
USINT ---|COMM_SRC   RESULT|--- INT
         |                 |
USINT ---|X_HP             |
         +-----------------+

O bloco é executado apenas a cada transição da entrada START. Ao finalizar o processo, DONE é acionada (= TRUE) e RESULT indica se a configuração foi concluída com sucesso. O canal de comunicação de interface com o XBee é informado em COMM_SRC e o valor do preâmbulo (0 a 7) em X_HP; valores fora dessa faixa resultam em erro de parâmetro inválido.

Atenção

Ao ser ativado, o rádio XBee sai do modo transparente e entra no modo de comando AT. Se o canal estiver em comunicação no momento da ativação do bloco, a comunicação será interrompida até que o processo de configuração seja concluído.

Parâmetros

Nome

Direção

Tipo

Padrão

Faixa / Unidade

Descrição

START

IN

BOOL

FALSE

—

Habilita a operação do bloco; avaliado por transição.

COMM_SRC

IN

USINT

0

COM1_PORT_ID .. ETH2_SOCK7_PORT_ID

Canal de comunicação de interface com o XBee (ver tabela abaixo).

X_HP

IN

USINT

0

0 .. 7

Valor do preâmbulo (Hopping) a ser configurado no módulo XBee.

DONE

OUT

BOOL

FALSE

—

Sinaliza o fim do processo de configuração.

RESULT

OUT

INT

0

RET_CODE

Código de retorno do processo (ver Códigos de retorno).

Identificadores de canal aceitos em COMM_SRC (namespace HILS):

Identificador

Valor

Meio

COM1_PORT_ID .. COM8_PORT_ID

0 .. 7

Seriais

SOCK0_PORT_ID .. SOCK7_PORT_ID

8 .. 15

Ethernet 1

ETH2_SOCK0_PORT_ID .. ETH2_SOCK7_PORT_ID

16 .. 23

Ethernet 2

Códigos de retorno

RESULT é do tipo RET_CODE. Use os identificadores com o namespace HILS (ex.: HILS.GL_INV_PAR). Códigos possíveis para este bloco:

Código

Identificador

Significado

0

SUCCESS

Processo executado com sucesso.

5

GL_INV_PAR

Parâmetro inválido (valor de X_HP maior que 7).

10

GL_CMD_TMO

Timeout na resposta do equipamento (sem resposta do XBee aos comandos de configuração).

13

GL_FUNC_FAIL

Falha na execução (comandos de configuração enviados ao XBee não foram executados com sucesso).

Lista completa dos códigos de retorno: RET_CODE - Códigos de retorno do firmware G5.

Pré-condições

  • O canal indicado em COMM_SRC deve estar configurado para interface com o módulo XBee S3B.

  • X_HP deve estar na faixa 0 .. 7.

Observações

  • O bloco é disparado por transição de START; mantenha START estável até DONE ser acionada.

  • Consulte RESULT somente quando DONE estiver ativo.

Exemplo

Clique aqui para baixar a tabela de variáveis

Código ST

VAR
    START  : BOOL;
    HP_NUM : USINT := 1;
    XB_CFG : HILS.S3B_SET_PREAMBLE;
END_VAR

XB_CFG(  // S3B_SET_PREAMBLE
  START    := START,             // [BOOL] Habilita operação do bloco
  COMM_SRC := HILS.COM1_PORT_ID, // [USINT] Canal de comunicação de interface com XBee
  X_HP     := HP_NUM             // [USINT] Valor do preâmbulo (0..7)
  //DONE     => ,  // [BOOL] Sinaliza o fim do processo
  //RESULT   =>    // [INT] Código de retorno do processo
  );

IF XB_CFG.DONE THEN
  START := FALSE;
  IF XB_CFG.RESULT <> HILS.SUCCESS THEN
    // Trata condição de falha no processo

  END_IF;
END_IF;