Come ottenere il timestamp di quando i dati sono stati raccolti

Fondamentalmente voglio essere in grado di visualizzare lora in cui arduino ha raccolto i dati con il valore dei dati, non il volta che arduino ha stampato i dati. Cè una funzione di timestamp sulla console, tuttavia desidero trovare lora in cui i dati sono stati raccolti.

Sono un po nuovo in questo, quindi qualsiasi aiuto è molto apprezzato!

Commenti

  • hai registrato lora in cui sono stati raccolti i dati?
  • Quale Arduino stai utilizzando (nel caso in cui hai sbagliato a inserire la domanda)?
  • Di per sé, lunico timestamp di un ' arduino-uno è il numero di millisecondi dal ripristino. Serial.println(millis());

Risposta

Ottenere un " timestamp " di quando i dati vengono raccolti dipende interamente da te.

La maggior parte degli Arduino non ha alcun concetto dellora corrente, solo il tempo da quando il programma ha iniziato a funzionare. Per sapere che ore sono " adesso " devi disporre di un meccanismo per indicare ad Arduino che ore sono, insieme a un metodo di tenere traccia di quellora.

Ci sono dispositivi chiamati moduli Real-Time Clock (RTC) che tengono traccia dellora per te. Non conoscono magicamente lora – devi comunque dirglielo almeno una volta.

Puoi dirgli lora tramite la porta seriale per impostare lorologio – da quel momento in poi (supponendo che RTC abbia ) lRTC saprà qual è lora.

Unaltra opzione per ottenere lora nellRTC è utilizzare una connessione Internet (ESP8266, WiFi shield, Ethernet shield, ecc.) per eseguire un Network Time Protocol ( NTP) interrogare un server dellora su Internet (come pool.ntp.org) per ottenere lora corrente e aggiornare lRTC. Questa operazione dovrebbe essere eseguita regolarmente per correggere eventuali deviazioni nellRTC.

Dopo aver ottenuto un RTC e un metodo per impostare lora, è possibile interrogare lora ogni volta che si campionano alcuni dati e memorizzare tale ora insieme ai dati in qualsiasi modo sia più adatto alla propria situazione.

Risposta

Dipende da come definisci il timestamp. Un timestamp Unix è il numero di secondi trascorsi dallepoca di Unix, ovvero il 1 gennaio 1970 00:00 UTC, questo è un timestamp molto comune. Puoi configurare NTP tramite Internet oppure puoi utilizzare un RTC sulla tua scheda. Il modo in cui lo fai dipende da quanto accurato lo desideri e da cosa hai a disposizione. Prova questo link potrebbe essere daiuto: https://currentmillis.com/

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *