Como obter o carimbo de data e hora de quando os dados foram coletados

Basicamente, quero ser capaz de exibir a hora em que o arduino coletou os dados com o valor dos dados, não o vez em que o arduino imprimiu os dados. Há um recurso de carimbo de data / hora no console, no entanto, quero saber a hora em que os dados foram coletados.

Sou um pouco novo nisso, então qualquer ajuda será muito apreciada!

Comentários

  • você registrou a hora em que os dados foram coletados?
  • Qual Arduino você está usando (apenas no caso de errar na marcação da pergunta)?
  • Por si só, um único carimbo de data / hora arduino-uno ' s é o número de milissegundos desde a redefinição. Serial.println(millis());

Resposta

Obter um " carimbo de data / hora " de quando os dados são coletados depende inteiramente de você.

A maioria dos Arduinos não tem nenhum conceito do tempo atual, apenas o tempo desde que o programa começou a ser executado. Para saber que horas são " agora ", você precisa ter algum mecanismo para informar ao Arduino qual é a hora, junto com um método de controlar esse tempo.

Existem dispositivos chamados módulos de relógio em tempo real (RTC) que controlam o tempo para você. Eles não sabem a hora em um passe de mágica – você ainda precisa dizer a eles pelo menos uma vez.

Você poderia dizer a hora por meio da porta serial para acertar o relógio – a partir de então (assumindo que o RTC tenha energia ) o RTC saberá que horas são.

Outra opção para obter a hora no RTC é usar uma conexão de internet (ESP8266, escudo WiFi, escudo Ethernet, etc.) para executar um protocolo de tempo de rede ( NTP) consulta a um servidor de horário na Internet (como pool.ntp.org) para obter a hora atual e atualizar o RTC. Isso deve ser feito regularmente para corrigir qualquer desvio no RTC.

Depois de ter um RTC e um método para definir a hora, você pode consultar a hora sempre que fizer uma amostra de alguns dados e armazenar essa hora junto com os dados da maneira que for mais adequada para sua situação.

Resposta

Depende de como você define o carimbo de data / hora. Um carimbo de data / hora Unix é o número de segundos decorridos desde a época do Unix, ou seja, 1º de janeiro 1970 00:00 UTC, este é um carimbo de hora muito comum. Você pode configurar o NTP via Internet ou usar um RTC em sua placa. Como você faz isso depende de quão preciso você deseja e do que você tem disponível. Tente este link, ele pode ajudar: https://currentmillis.com/

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *