LR_CTRL_RAK3172

Este bloco tem por função implementar a interface com o módulo de comunicação LORA RAK3172 da BreakBoard.

Bloco

               LR_CTRL_RAK3172
           +---------------------+
  BOOL ----|START       CONNECTED|---- BOOL
           |                     |
 USINT ----|COMM_SRC         R_EV|---- BOOL
           |                     |
 USINT ----|SEND           R_PORT|---- USINT
           |                     |
 USINT ----|LORA_MODE      R_CODE|---- INT
           |                     |
 USINT ----|S_PORT           S_EV|---- BOOL
           |                     |
           |                 S_ID|---- USINT
           |                     |
           |               S_CODE|---- INT
           |                     |
STRING ----|DEV_EUI ------------ |----
           |                     |
STRING ----|APP_EUI ------------ |----
           |                     |
STRING ----|APP_KEY ------------ |----
           |                     |
STRING ----|LORA_IMSG ---------- |----
           |                     |
STRING ----|LORA_OMSG ---------- |----
           +---------------------+

Possui as seguintes funções principais:

  • Estabelece conexão com o servidor LORA;

  • Gerencia eventuais quedas de conexão reconectando com servidor automaticamente;

  • Notifica uma conexão com sucesso com o servidor permitindo ao usuário iniciar iniciar a troca de dados;

  • Sinaliza a recepção de mensagens do servidor LORA disponibilizando o nome do tópico e a mensagem associada.

O processo é iniciado através da ativação da entrada START que deve permanecer ativa durante todo o tempo de execução.

Ao ser ativado o bloco inicia o processo de conexão com o LoRaWAN pelo socket ethernet especificado. Concluido o processo com sucesso a saída CONNECTED se torna ativa indicando que o servidor LORA esta conectado ao broker e funcional.

Quando o servidor enviar uma mensagem para o cliente, a saída R_EV irá gerar um pulso e neste momento as saídas R_PORT e LORA_IMSG possuem o nro da porta e a mensagem associada respectivamente.

Parâmetros

Nome

Classe

Tipo

Dim.

V. Ini.

Descrição

START

Entrada

BOOL

FALSE

Inicia o processo de gerencia de uma conexão MQTT com um broker (ativa na transição de subida)

COMM_SRC

Entrada

USINT

0

Canal de comunicação a ser utilizado

SEND

Entrada

USINT

0

Envia quando != 0 a veriavel do ID definido e o conteudo de LORA_OMSG para o servidor LORA conectado

LORA_MODE

Entrada

USINT

0

Modo de operação do Lora: OTAA[1] ou ABP[2]

S_PORT

Entrada

USINT

1

Porta de comunicacão associada a mensagem a ser enviada ao servidor LORA

DEV_EUI

Entrada/Saída

STRING

:16

Device EUI gerado pela application no LoraNertwork Server

APP_EUI

Entrada/Saída

STRING

:32

Application EUI gerado pela application no LoraNertwork Server

APP_KEY

Entrada/Saída

STRING

:32

App Key gerado pela application no LoraNertwork Server

LORA_IMSG

Entrada/Saída

STRING

Mensagem recebida do servidor LORA

LORA_OMSG

Entrada/Saída

STRING

Mensagem a ser enviada para o servidor LORA

CONNECTED

Saída

BOOL

FALSE

Conexão com o broker estabelecida com sucesso

R_EV

Saída

BOOL

FALSE

Gera um pulso ao receber uma mensagem do servidor LORA

R_PORT

Saída

USINT

0

Porta associada ao pacote recebido

R_CODE

Saída

INT

0

Último código de erro detectado no processo conexão ou recepção de mensagem do servidor LORA

S_EV

Saída

BOOL

FALSE

Gera um pulso ao completar qualquer processo com erro

S_ID

Saída

USINT

0

ID do item que foi transmitido

S_CODE

Saída

INT

0

Último código de erro detectado no processo de envio de uma mensagem ao servidor LORA

COMM_SRC

Identificador do socket ethernet a ser utilizado para acesso ao broker. Este do canal de comunicação utilizado é especificado por um identificador (valor númerico) conforme indicado na tabela a seguir:

ID

LABEL [3]

Tipo de canal de comunicação [4]

8

HILS.SOCK0_PORT_ID

Identificador do socket 0

9

HILS.SOCK1_PORT_ID

Identificador do socket 1

10

HILS.SOCK2_PORT_ID

Identificador do socket 2

11

HILS.SOCK3_PORT_ID

Identificador do socket 3

12

HILS.SOCK4_PORT_ID

Identificador do socket 4

13

HILS.SOCK5_PORT_ID

Identificador do socket 5

14

HILS.SOCK6_PORT_ID

Identificador do socket 6

15

HILS.SOCK7_PORT_ID

Identificador do socket 7

LORA_IMSG

Quando o servidor enviar uma mensagem para o equipaemnto, o saída R_EV irá gerar um pulso notificando a chegada da mensagem, e a saída R_CODE indicado o resultado do processo de recepção. Neste momento, o mensagem esta disponivel em LORA_IMSG. Note que este parâmetro deverá ser processado durante o evento de R_EV pois o mesmo poderá ser alterado nos ciclos seguintes.

Exemplo

Declaração de Variáveis

Nome

Clique aqui para baixar a tabela de variáveis

Código ST