TEL_MSG_V2
Formata as informações fornecidas em uma mensagem para envio ao portal de
telemetria, gravando o resultado na estrutura MSG. Opera apenas com o
formato TEL_V2_DATA_TYPE de eventos do portal e é uma função.
Biblioteca: HI_STD · Namespace: HILS · Tipo: função
Função
TEL_MSG_V2
+-------------+
DT ----|TS |
| |
INT ----|EV_ID |
| |
----|DATA |
| |
HILS.TEL_V2_DATA_TYPE ----|MSG -------- |----
+-------------+
A função monta a mensagem de telemetria no formato V2 combinando o timestamp
TS, o identificador do evento EV_ID e o dado associado DATA,
escrevendo o resultado na estrutura MSG (parâmetro de entrada/saída). A
mensagem formatada pode então ser enfileirada no buffer do portal de telemetria.
Importante
Esta função opera apenas com o formato do tipo de dado TEL_V2_DATA_TYPE
de mensagens do portal de telemetria.
Parâmetros
Nome |
Direção |
Tipo |
Padrão |
Faixa / Unidade |
Descrição |
|---|---|---|---|---|---|
TS |
IN |
DT |
DT#01-01-20:08:30.0 |
— |
Timestamp do evento associado (em UTC). |
EV_ID |
IN |
INT |
0 |
— |
Identificador do evento associado. |
DATA |
IN |
ANY |
— |
— |
Dado associado ao evento. |
MSG |
IN_OUT |
HILS.TEL_V2_DATA_TYPE |
— |
— |
Mensagem formatada no padrão V2 do portal de telemetria. |
Retorno / Saídas
A função não possui valor de retorno; a mensagem formatada é escrita no
parâmetro de entrada/saída MSG.
Observações
Os valores de data/hora das mensagens devem ser sempre em UTC.
A estrutura
MSGgerada pode ser enfileirada no buffer do portal de telemetria para posterior envio.
Ver também
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
VALUE : UINT := 30; (* Variável a ser enviada para o portal *)
DATA_ID : INT := 5; (* Identificador do tipo de variável *)
TIMESTAMP : DT; (* Data/hora associada a mensagem *)
TMSG_V2 : TEL_V2_DATA_TYPE; (* Mensagem a ser formatada *)
TEL_GAT : HILS.TEL_BUF; (* Gateway de acesso ao portal de telemetria *)
T_BUF : ARRAY [0..999] OF UINT; (* Buffer do portal com capacidade de 100 mensagens *)
END_VAR
(* Exemplo de ativação da função dentro da POU *)
(* ... *)
// obtem a data/hora corrente.
// Obs: os valores de data/hora das mensagens devem ser sempre em UTC
TIMESTAMP := HILS.GET_UTC_SYSTIME();
// Monta mensagem com dado inteiro
HILS.TEL_MSG_V2(TS := TIMESTAMP, EV_ID := DATA_ID, DATA := VALUE, MSG := TMSG_V2);
// Insere a mensagem no buffer de interface com o servidor do portal de telemetria
// Bloco de gerencia do buffer de mensagens utilizado para interfacear com o portal de telemetria
TEL_GAT(WR := TRUE, REM := 0, FIFO := T_BUF, DATA := TMSG_V2);
(* ... *)