Formato de Dados CSV

Visão geral

O VBatPower usa um formato CSV universal de 6 colunas, concebido para ser simples o suficiente para ser gerado por microcontroladores de 8 bits. Cada linha representa uma única amostra de medição.

id,type,value,unit,nonce,runid

Definições das Colunas

id

Identificador hierárquico em notação por pontos que corresponde à estrutura do seu projeto.

  • Nível 1 (por ex. 0 ) — nível da bateria
  • Nível 2 (por ex. 0.1 ) — nível do componente
  • Nível 3 (por ex. 0.1.2 ) — nível do estado

type

Caráter único que indica o tipo de medição:

  • t — temporização de telemetria (duração de execução em unidades de tempo)
  • v — medição de valor (tensão, corrente, resistência, etc.)
  • n — medição de tempo decorrido (tempo desde o arranque do MCU, usado para alinhar os dados no eixo temporal). Distinta da coluna nonce abaixo, que é o contador de agrupamento.

value

Valor numérico da medição. Suporta inteiros e decimais com . como separador decimal.

unit

Unidade da medição. Valores comuns: ms, V, mV, mA, A, °C.

nonce

Contador de sequência monotonicamente crescente. Cada grupo de medições num dado instante partilha o mesmo nonce. O nonce nunca é reposto dentro de uma execução e é usado para alinhar os pontos de dados no eixo temporal.

runid

Identificador numérico de uma execução de teste. Várias execuções podem ser armazenadas no mesmo CSV. O ID de execução é usado para separar experiências independentes. Os números mais baixos foram executados primeiro.

Exemplo Completo

Um nó sensor com uma bateria, um componente MCU e dois estados (sono + ativo):

id,type,value,unit,nonce,runid
0,v,3.28,V,1,1
0.0.0,t,500,ms,1,1
0.0.0,v,0.01,mA,1,1
0.0.0,n,0,ms,1,1
0.0.1,t,0,ms,1,1
0.0.1,v,0,mA,1,1
0,v,3.27,V,2,1
0.0.0,t,500,ms,2,1
0.0.0,v,0.01,mA,2,1
0.0.0,n,1000,ms,2,1
0.0.1,t,200,ms,2,1
0.0.1,v,80,mA,2,1
0.0.1,n,1000,ms,2,1

Neste exemplo:

  • Bateria 0 ( 0,v ) a tensão desce de 3.28V para 3.27V
  • Estado 0.0.0 (sono): t = 500ms de execução, v = 0.01mA de corrente, n = tempo decorrido desde o arranque
  • Estado 0.0.1 (ativo): t = 200ms de execução no nonce 2, v = 80mA de consumo de corrente
  • Todas as medições estão na execução 1

Decisões de Conceção

  • Sem carimbos temporais — os sistemas embebidos não dispõem frequentemente de um RTC. A abordagem de nonce + tempo decorrido permite que os MCUs de 8 bits emitam dados apenas com um contador simples e millis().
  • runid numérico — uma simples comparação de inteiros diz-lhe qual a execução que veio primeiro.
  • CSV plano — sem JSON, sem protocolo binário. Fácil de gerar com printf em qualquer MCU.
  • IDs em notação por pontos — mapeia diretamente para a hierarquia bateria/componente/estado do seu projeto, sem tabelas de mapeamento adicionais.

Importar

Na página Dados, clique em Importar CSV e selecione o seu ficheiro. O analisador valida todas as linhas e mostra uma pré-visualização antes de importar. As linhas inválidas são ignoradas com avisos.

Também pode carregar dados de forma programática através da API REST.