Բովանդակություն:
- Քայլ 1: Ձեզ անհրաժեշտ բաներ
- Քայլ 2. Ի՞նչ է NTP- ը և ինչպես է այն աշխատելու:
- Քայլ 3. Գրադարանի տեղադրում Arduino IDE- ում
- Քայլ 4: Կոդավորման մաս
- Քայլ 5: tingԱՄԱՆԱԿԸ
Video: ESP8266- ի միջոցով ինտերնետից ժամանակ ստանալը NTP ժամացույցի նախագիծ ESP8266 Nodemcu- ով ՝ 5 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:47
Այս ձեռնարկում մենք կտեսնենք, թե ինչպես ժամանակ ստանալ Edu8266/nodemcu- ով Arduino IDE- ի միջոցով: Timeամանակ ստանալը հատկապես օգտակար է տվյալների գրանցման համար `ձեր ընթերցումները ժամանակային նշելու համար: Եթե ձեր ESP8266 նախագիծը հասանելի է ինտերնետին, կարող եք ժամանակ ստանալ ցանցի ժամանակի արձանագրության (NTP) միջոցով. Ձեզ լրացուցիչ սարքավորումներ պետք չեն: Դուք կարող եք ձեր ESP8266- ը միացնել ձեր wifi ցանցին, և դա կլինի ժամացույց, որը կհամաժամացվի ցանցի հետ, այնպես որ, եթե մի անգամ վերբեռնեք ծածկագիրը, այն ժամանակ կստանա ինտերնետից, այնպես որ այն միշտ կցուցադրի ճիշտ ժամանակը:
Քայլ 1: Ձեզ անհրաժեշտ բաներ
Այս նախագծի համար ձեզ շատ քիչ բան է պետք. ESP8266/NODEMCUA USB մալուխ այն ծրագրավորելու համար:
Քայլ 2. Ի՞նչ է NTP- ը և ինչպես է այն աշխատելու:
Ինչ է NTP- ը. NTP- ը նշանակում է Network Time Protocol: Դա ստանդարտ ինտերնետային արձանագրություն է (IP) `համակարգչի ժամացույցները ցանցի վրա ինչ -որ տեղեկանքի համաժամեցնելու համար: Արձանագրությունը կարող է օգտագործվել բոլոր ցանցային սարքերը Համաժամեցված համընդհանուր ժամանակի (UTC) համաժամացման համար: NTP- ն համակարգիչների ժամացույցները սահմանում է UTC, ցանկացած տեղական ժամանակ գոտու օֆսեթը կամ ցերեկային լույսի խնայողության ժամանակի անջատումը կիրառվում է հաճախորդի կողմից: Այս կերպ հաճախորդները կարող են համաժամացվել սերվերների հետ `անկախ գտնվելու վայրից և ժամային գոտու տարբերություններից: Ինչպես է դա մեզ մոտ աշխատելու. Հաճախորդի սարքը, ինչպիսին է ESP8266- ը, միանում է սերվերին` օգտագործելով 123 նավահանգստում օգտագործողի տվյալների տեքստը (UDP): Հաճախորդը այնուհետև փոխանցում է պահանջել փաթեթ NTP սերվերին: Այս խնդրանքին ի պատասխան NTP սերվերն ուղարկում է ժամանակային կնիքի փաթեթ: stամկետային դրոշմանիշի փաթեթը պարունակում է բազմաթիվ տեղեկություններ, ինչպիսիք են UNIX- ի ժամանակացույցը, ճշգրտությունը, ուշացումը կամ ժամային գոտին: Այնուհետև հաճախորդը կարող է վերլուծել ընթացիկ ամսաթվի և ժամի արժեքները:
Քայլ 3. Գրադարանի տեղադրում Arduino IDE- ում
Ձեր Arduino IDE- ում գնացեք Գրադարանների կառավարիչ և փնտրեք NTP և պարզապես ներբեռնեք NTP հաճախորդների գրադարանը, ինչպես ներբեռնեցի, հետագա օգնության համար հղեք պատկերը:
Քայլ 4: Կոդավորման մաս
Խնդրում ենք պատճենել հետևյալ ծածկագիրը և տեղադրել ձեր ցանցի հավատարմագրերը ձեր ծածկագրում, ապա ինձ համար պետք է սահմանել offsettime- ը `19800, որովհետև իմ ժամային գոտին utc+5: 30 է, այնպես որ UTC +5: 30 = 5.5*60*60 = 19800UTC+1 = 1*60*60 = 3600 ՀԱՇՎԵԼ ձեր ժամային գոտին և խմբագրել այն, այնուհետև վերբեռնել կոդը:#ներառել "NTPClient.h" #include "ESP8266WiFi.h" #include "WiFiUdp.h" const char*ssid = "***** ****** "; const char*գաղտնաբառ =" *********** "; const long utcOffsetInSeconds = 19800; օրեր շաբաթից շաբաթ [7] [12] = {" կիրակի "," երկուշաբթի ", «Երեքշաբթի», «չորեքշաբթի», «հինգշաբթի», «ուրբաթ», «շաբաթ»}; // Սահմանեք NTP հաճախորդին ժամանակ ստանալու համարWiFiUDP ntpUDP; NTPClient timeClient (ntpUDP, "pool.ntp.org", utcOffsetInSeconds); անվավեր կարգավորում () {Serial.begin (115200); WiFi.begin (ssid, գաղտնաբառ); while (WiFi.status ()! = WL_CONNECTED) {ուշացում (500); Serial.print ("."); } timeClient.begin ();} void loop () {timeClient.update (); Serial.print (daysOfTheWeek [timeClient.getDay ()]); Serial.print (","); Serial.print (timeClient.getHours ()); Serial.print (":"); Serial.print (timeClient.getMinutes ()); Serial.print (":"); Serial.println (timeClient.getSeconds ()); //Serial.println (timeClient.getFormattedTime ()); ուշացում (1000);}
Քայլ 5: tingԱՄԱՆԱԿԸ
Esp8266 կոդը վերբեռնելուց հետո կարող եք բացել սերիական մոնիտորը, և եթե ամեն ինչ լավ է, ապա կկարողանաք ժամանակ ստանալ սերիական մոնիտորի վրա, քանի որ ես կարողանում եմ ժամանակ ստանալ իմ սերիական մոնիտորի վրա: Այսպիսով, այս նախագծով կարող եք կցել ցանկացած ցուցադրել և դարձնել այն համապատասխան ցանցային ժամացույց: Այսպիսով, զվարճացեք, ստեղծելով ձեր ցանցային ժամացույցը:
Խորհուրդ ենք տալիս:
Blynk հավելվածի միջոցով Nodemcu- ի միջոցով ինտերնետի միջոցով կառավարում. 5 քայլ
Blynk հավելվածի միջոցով Nodemcu- ի միջոցով ինտերնետի միջոցով կառավարելը. Բարև բոլորին, այսօր մենք ձեզ ցույց կտանք, թե ինչպես կարող եք վերահսկել LED- ը սմարթֆոնի միջոցով ինտերնետում
ESP8266 OLED - Ստացեք ժամանակ և ամսաթիվ ինտերնետից. 8 քայլ
ESP8266 OLED - Ստացեք ժամանակ և ամսաթիվ ինտերնետից. Այս ձեռնարկում մենք կսովորենք, թե ինչպես ստանալ ամսաթիվը և ժամը NIST TIME սերվերից ՝ օգտագործելով ESP8266 OLED և Visuino, Դիտեք ցուցադրական տեսանյութ
Ստացեք ժամանակ և ամսաթիվ ինտերնետից. Ձեռնարկ - 9 քայլ
Ստացեք ժամանակ և ամսաթիվ ինտերնետից - ձեռնարկ. Այս ձեռնարկում մենք կսովորենք, թե ինչպես ստանալ ամսաթիվը և ժամը NIST TIME սերվերից ՝ օգտագործելով M5Stack StickC և Visuino, դիտեք ցուցադրական տեսանյութ
Pոճանակի ժամացույցի նախագիծ ՝ 4 քայլ
Pոճանակի ժամացույցի նախագիծ. Ես Cluster 2 -ի անդամ եմ COSMOS 2018- ում UC San Diego- ում: Մեր կլաստերը կենտրոնանում է կինետիկ քանդակների ինժեներական նախագծման և վերահսկման վրա: Մեր առաջին նախագիծը UCSD- ի դիզայներական ստուդիայի միջոցով ճոճանակի ժամացույցի ստեղծումն էր: Այս նախագիծը նաև UCSD- ից է
Ինտերնետից տեսանյութեր ստանալը դեպի ձեր IPod, արագ, հեշտ և անվճար: 5 քայլ
Ինտերնետից տեսանյութեր ստանալը դեպի ձեր IPod ՝ արագ, հեշտ և ԱՆՎԱՐ :: Երբեմն տեսանյութ եք տեսնում YouTube- ում, և ցանկանում եք այն ձեր iPod- ի վրա: Ես դա արեցի և չկարողացա հասկանալ, բայց հետո դա արեցի, ուստի որոշեցի այն կիսել ինտերնետի հետ: Այս ուղեցույցը վերաբերում է միայն YouTube- ին, եթե օգտագործում եք ներբեռնման նույն ծրագրաշարը