Arduino & IoT Academy · Lektion

Få realtid med NTP/RTC

Forsyn data med nøjagtige datoer og tidspunkter.

Lektion 1 af 413 trin

Få realtid med NTP/RTC er en gratis Arduino & IoT Academy-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Arduino & IoT Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Arduino & IoT Academy-kurset indeholder 4 lektioner i alt.

Hvorfor tid er vigtig

En aflæsning som "24.3 C" fortæller kun halvdelen af historien. For at kunne forstå loggede data skal hver måling have et tidsstempel, der fortæller præcis, hvornår den fandt sted. ⏰

Arduino har intet ur

Din Arduino glemmer datoen, så snart strømmen forsvinder. Den tæller kun millisekunder siden opstart og ved derfor ikke, hvad det aktuelle klokkeslæt i den virkelige verden er.

To måder at hente tiden på

Du kan hente tiden fra internettet med NTP eller holde styr på den lokalt med en batteridrevet RTC-chip. De to løsninger passer til forskellige situationer.

Hvad NTP gør

NTP (Network Time Protocol) spørger en tidsserver på internettet om det aktuelle tidspunkt. Det er nøjagtigt og gratis, men kræver en aktiv WiFi-forbindelse.

Sådan spørger du en NTP-server

På en ESP32 peger én opsætningslinje dit kort mod en offentlig tidsserver og angiver din tidszoneforskydning. Derefter synkroniserer kortet automatisk.

configTime(0, 0, "pool.ntp.org");

Aflæs den synkroniserede tid

Når tiden er synkroniseret, henter du det aktuelle tidspunkt ind i en struct og aflæser dens felter. Så får du år, måned, dag, time og minut til at mærke dine data.

struct tm now;
getLocalTime(&now);

Hvad en RTC gør

Et RTC-modul som DS3231 bliver ved med at tælle på et lille knapcellebatteri, selv når Arduinoen er helt slukket. Der kræves slet ingen netværksforbindelse.

Forbindelse af en RTC

De fleste RTC-moduler kommunikerer over I2C, så du skal kun forbinde fire ledninger: strøm, stel, SDA og SCL. Det gør dit projekt dejligt enkelt.

Aflæsning fra en RTC

Med biblioteket RTClib henter du det aktuelle tidspunkt som et DateTime-objekt og aflæser derefter dets felter ligesom med NTP-versionen.

DateTime now = rtc.now();
int h = now.hour();

NTP eller RTC?

Vælg NTP, når din enhed altid er online, og du ikke vil bruge ekstra komponenter. Vælg en RTC til offline- eller batteridrevne enheder, der stadig skal kende det korrekte tidspunkt.

Det bedste fra begge løsninger

Mange gode designs bruger begge: En RTC holder tiden offline, og NTP korrigerer forsigtigt dens lille afvigelse, når WiFi er tilgængeligt. 🌐

Hurtigt tjek

Hvilken tidskilde virker stadig uden internetforbindelse?

Opsummering

Arduino har intet rigtigt ur, så du kan tilføje tid med NTP online eller en RTC offline. Nu kan hver aflæsning, du logger, indeholde et nøjagtigt tidsstempel. ✅

Gratis at komme i gang

Lær C++ med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “Få realtid med NTP/RTC” gratis?

Ja — hele teksten til “Få realtid med NTP/RTC” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Arduino & IoT Academy-kurset, skal du opgradere til CoddyKit PRO. Arduino & IoT Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Få realtid med NTP/RTC”?

Forsyn data med nøjagtige datoer og tidspunkter. Du øver dig i Arduino & IoT Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Arduino & IoT Academy?

Der kræves ingen tidligere erfaring. Arduino & IoT Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Få realtid med NTP/RTC”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Arduino & IoT Academy-lektion?

Ja. Alle Arduino & IoT Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Få realtid med NTP/RTC
  2. Skriv CSV til et SD-kort
  3. Bufr og batch-upload
  4. Visualisér loggede data
← Tilbage til Arduino & IoT Academy