Recurso de mapeamento de dados

O mapeamento de dados é um recurso disponível no HIstudio para permitir ao usuário especificar uma base de dados em um equipamento ou servidor externo a ser obtida e atualizada de forma automática pelos blocos de Gateways de comunicação e Bridges de comunicação disponíveis.

Utilizando este recurso, é possível criar Canais de mapeamento para os protocolos Modbus, MQTT e LoRa e mapear os dados a serem lidos e enviados para cada dispositivo.

Atenção

Lembre-se de configurar o Setup de comunicação do equipamento. Quando usar o canal de comunicação Ethernet deve-se configurar o Modo de Roteamento do socket como CLIENT.

Gateways de comunicação

Na Figura F1 está o esquema de funcionamento de um bloco gateway geral, cuja função é realizar a comunicação entre equipamentos em um determinado protocolo X (Modbus, MQTT ou LoRa). Para realizar essa comunicação são usados os Canais de mapeamento.

../_images/gateway1.png

Fig. 50 F1 - Esquema de funcionamento do bloco gateway.

Neste esquema temos um controlador HI com um programa de aplicação utilizando o Bloco Gateway e o recurso de canal de mapeamento que permite mapear as variáveis globais exportadas que serão enviadas através do Gateway para um servidor ou equipamento remoto e também mapear as variáveis globais exportadas que serão recebidas de um servidor ou equipamento remoto através do Gateway.

Nota

Estão disponíveis no HIstudio os seguintes gateways de comunicação para acesso a leitura e escrita de dados:

Bridges de comunicação

Na Figura F2 está o esquema de funcionamento de um bloco bridge geral, cuja função é realizar a comunicação entre equipamentos com protocolos de comunicação diferentes, protocolo X e protocolo Y (Modbus, MQTT ou LoRa). Para realizar essa comunicação são usados os Canais de mapeamento.

../_images/bridge1.png

Fig. 51 F2 - Esquema de funcionamento do bloco bridge.

Neste esquema temos um controlador HI com um programa de aplicação utilizando o Bloco Bridge e o recurso de canal de mapeamento. Diferente do Bloco Gateway, neste caso são necessários 2 canais de mapeamento (A e B), um para cada protocolo utilizado (protocolo X e protocolo Y), o que permite mapear as variáveis globais exportadas que serão enviadas e/ou recebidas por cada servidor ou equipamento remoto.

Nota

Estão disponíveis no HIstudio as seguintes bridges de comunicação para troca de dados entre dispositivos remotos:


Canais de mapeamento

Através dos Canais de mapeamento é possível mapear as variáveis globais exportadas com as variáveis ou tópicos do servidor ou equipamento remoto.

Pode ser criado mais de um canal de mapeamento como visto na figura a seguir:

../_images/data_mapping.png

Fig. 52 F3 - Tela dos Canais de mapeamento.

Cada canal de mapeamento possui sua própria identificação (Id. da estrutura de mapeamento) e pode ser configurado com um dos 3 protocolos disponíveis:

Para utilizar os Canais de mapeamento deve-se primeiro criar as variáveis globais exportadas, conforme a figura a seguir:

../_images/export_global_variables.png

Fig. 53 F4 - Tela com destaque as variáveis globais exportadas.

Modbus

Para utilizar o canal de mapeamento com o protocolo Modbus basta configurar o campo Protocolo associado ao mapeamento em MODBUS e o campo Id. da estrutura de mapeamento.

../_images/modbus.png

Fig. 54 F5 - Tela de propriedades do canal de mapeamento em Modbus.

Na configuração do canal de mapeamento existem 3 abas para serem configuradas:

Dados recebidos

../_images/receive_modbus.png

Fig. 55 F6 - Tela de configuração Modbus dos dados recebidos.

Cada variável especificada irá possuir um ID, que pode ser utilizado em blocos e funções para referenciar um dado recebido específico do canal de mapeamento.

Campo

Descrição

Índice

Quando é usada variável do tipo VETOR esse campo representa o índice da variável que será recebida, quando é usada variável do tipo ESCALAR esse campo deve ser 0 (zero).

Quant.

Quando é usada variável do tipo VETOR esse campo representa a quantidade de variáveis a partir do campo Índice que serão recebidas, quando é usada variável do tipo ESCALAR esse campo não é utilizado.

Com. Id

ID Modbus de comunicação.

Endereço remoto

Endereço Modbus da variável do equipamento remoto que está sendo mapeada.

Acesso TCP/IP

Quando usando canal de comunicação Ethernet esse campo representa o IP e Porta do equipamento remoto, quando usado canal de comunicação Serial esse campo não é utilizado.

Descrição

Texto obtido da descrição das variáveis globais.

Dados enviados

Cada variável especificada irá possuir um ID, que pode ser utilizado em blocos e funções para referenciar um dado enviado específico do canal de mapeamento.

../_images/send_modbus.png

Fig. 56 F7 - Tela de configuração Modbus dos dados enviados.

Campo

Descrição

Índice

Quando é usada variável do tipo VETOR esse campo representa o índice da variável que será enviada, quando é usada variável do tipo ESCALAR esse campo deve ser 0 (zero).

Na Inic.

Opção de enviar a variável mapeada ao inicializar o bloco Gateways de comunicação ou Bridges de comunicação através do parâmetro START dos blocos.

Na Alteração

Opção de enviar a variável mapeada quando a variável é alterada. Usado somente no bloco Bridges de comunicação.

Por tempo

Opção de enviar a variável mapeada a cada intervalo de tempo configurado pelo campo Tempo.

Tempo

Valor de tempo configurado para enviar a variável mapeada.

Quant.

Quando é usada variável do tipo VETOR esse campo representa a quantidade de variáveis a partir do campo Índice que serão enviadas, quando é usada variável do tipo ESCALAR esse campo não é utilizado.

Com. Id

ID Modbus de comunicação.

Endereço remoto

Endereço Modbus da variável do equipamento remoto que está sendo mapeada.

Acesso TCP/IP

Quando usando canal de comunicação Ethernet esse campo representa o IP e Porta do equipamento remoto, quando usado canal de comunicação Serial esse campo não é utilizado.

Descrição

Texto obtido da descrição das variáveis globais.


Endereço remoto

As variáveis exportadas são especificadas utilizando endereços MODBUS nos seguintes formatos:

%Mnx - Este formato permite a leitura e escrita da memória associada ao endereço.

%

caractere que denota um endereço

M

caractere que indica que este endereço referencia uma memória interna do equipamento

n

identificador do tamanho do tipo de dado da variável associada ao endereço

x

número que identifica a variável associada

Por exemplo: %MW25 (Endereçamento de memória interna de tamanho igual a 16 bits e endereço 25).

%Inx - Este formato permite a leitura da entrada associada ao endereço.

%

caractere que denota um endereço

I

caractere que indica que este endereço referencia uma entrada do equipamento

n

identificador do tamanho do tipo de dado da variável associada ao endereço

x

número que identifica a variável associada

Por exemplo: %IX25 (Endereçamento de entrada digital de tamanho igual a 1 bit e endereço 25).

Nota

A partir da versão 2.2.12 do HIstudio é possível especificar um Endereço no formato Hexadecimal.

O valor 50 em decimal é equivalente ao valor 32 em hexadecimal. Dessa forma, para representar o endereço %MW50 em hexadecimal devemos especificar da seguinte forma: %MW16#32

../_images/end_hexadecimal.png

Acesso ethernet

../_images/ethernet_modbus.png

Fig. 57 F8 - Tela de configuração Modbus do acesso ethernet.

Campo

Descrição

IP remoto

Quando usando canal de comunicação Ethernet esse campo representa o IP do equipamento remoto, quando usado canal de comunicação Serial esse campo não é utilizado.

Porta Ethernet

Quando usando canal de comunicação Ethernet esse campo representa a porta do equipamento remoto, quando usado canal de comunicação Serial esse campo não é utilizado.


MQTT

Para utilizar o canal de mapeamento com o protocolo MQTT basta configurar o campo Protocolo associado ao mapeamento em MQTT-CLIENT e o campo Id. da estrutura de mapeamento. Além disso é possível configurar o Prefixo global dos tópicos subscritos e Prefixo global dos tópicos publicados (Ex.: Casa/Quarto/Aquario/).

../_images/mqtt.png

Fig. 58 F9 - Tela de propriedades do canal de mapeamento em MQTT.

Na configuração do canal de mapeamento existem 2 abas para serem configuradas: Tópicos subscritos e Tópicos publicados.

../_images/subscribe_mqtt.png

Fig. 59 F10 - Tela de configuração MQTT dos tópicos subscritos.

Campo

Descrição

Índice

Quando é usada variável do tipo VETOR esse campo representa o índice da variável que será subscrita, quando é usada variável do tipo ESCALAR esse campo deve ser 0 (zero).

Tópico

Nome do Definição de Tópicos MQTT que será subscrito (Assinatura de tópicos). Limite 80 caracteres.

QOS:

Nível de Qualidade de serviço - QoS que define a garantia de entrega de uma mensagem específica.

Subs.

Opção de subscrição, quando habilitado subscreve no tópico mapeado.

Descrição

Obtida da descrição das variáveis globais.

../_images/subs.png

Fig. 60 F11 - Exemplo de subscrição utilizando Curingas (Wildcards).

Quando o tópico utiliza Curingas (Wildcards) deve-se subscrever apenas o tópico com o Wildcard, os demais tópicos derivados de interesse devem ser incluídos para serem mapeados com as variáveis globais exportadas, mas não devem ser subscritos novamente.

../_images/publish_mqtt.png

Fig. 61 F12 - Tela de configuração MQTT dos tópicos publicados.

Campo

Descrição

Índice

Quando é usada variável do tipo VETOR esse campo representa o índice da variável que será publicada, quando é usada variável do tipo ESCALAR esse campo deve ser 0 (zero).

Na Inic.

Opção de publicar a variável mapeada ao inicializar o bloco Gateways de comunicação ou Bridges de comunicação através do parâmetro START dos blocos.

Na Alteração

Opção de publicar a variável mapeada quando a variável é alterada. Usado somente no bloco Bridges de comunicação.

Por tempo

Opção de publicar a variável mapeada a cada intervalo de tempo configurado pelo campo Tempo.

Tempo

Valor de tempo configurado para publicar a variável mapeada.

Tópico

Nome do Definição de Tópicos MQTT que será publicado (Publicação de Tópicos). Limite 80 caracteres.

QOS:

Nível de Qualidade de serviço - QoS que define a garantia de entrega de uma mensagem específica.

Retain

Opção de Mensagens Retidas(Retained Messages) que serve para sinalizar ao Broker MQTT salvar a última mensagem publicada por esse tópico.

Decimais

Quando usada variável do tipo REAL esse campo representa o número de casas decimais. Limite 6 casas decimais.

Descrição

Obtida da descrição das variáveis globais.


LoRa

Para utilizar o canal de mapeamento com o protocolo LoRa basta configurar o campo Protocolo associado ao mapeamento em LORA e o campo Id. da estrutura de mapeamento.

../_images/lora.png

Fig. 62 F13 - Tela de propriedades do canal de mapeamento em LoRa.

Na configuração do canal de mapeamento existem 2 abas para serem configuradas: Dados recebidos e Dados publicados.

../_images/receive_lora.png

Fig. 63 F14 - Tela de configuração LoRa dos dados recebidos.

Campo

Descrição

Índice

Quando é usada variável do tipo VETOR esse campo representa o índice da variável que será recebida, quando é usada variável do tipo ESCALAR esse campo deve ser 0 (zero).

Tópico

Nome do tópico que será recebido. Limite 80 caracteres.

Porta

Número da porta do protocolo LoRa.

Descrição

Obtida da descrição das variáveis globais.

../_images/send_lora.png

Fig. 64 F15 - Tela de configuração LoRa dos dados publicados.

Campo

Descrição

Índice

Quando é usada variável do tipo VETOR esse campo representa o índice da variável que será publicada, quando é usada variável do tipo ESCALAR esse campo deve ser 0 (zero).

Na Inic.

Opção de publicar a variável mapeada ao inicializar o bloco Gateways de comunicação ou Bridges de comunicação através do parâmetro START dos blocos.

Na Alteração

Opção de publicar a variável mapeada quando a variável é alterada. Usado somente no bloco Bridges de comunicação.

Por tempo

Opção de publicar a variável mapeada a cada intervalo de tempo configurado pelo campo Tempo.

Tempo

Valor de tempo configurado para publicar a variável mapeada.

Tópico

Nome do tópico que será publicado. Limite 80 caracteres.

Porta

Número da porta do protocolo LoRa.

Decimais

Quando usada variável do tipo REAL esse campo representa o número de casas decimais. Limite 6 casas decimais.

Descrição

Obtida da descrição das variáveis globais.