Мазмуну:
- 1 -кадам: Сизге керектүү нерселер
- 2 -кадам: NTP деген эмне жана ал кантип иштейт?
- 3 -кадам: Китепкананы Arduino IDEге орнотуу
- 4 -кадам: Коддоо бөлүгү
- 5 -кадам: Убакытты алуу
Video: ESP8266 менен Интернеттен Убакыт алуу - ESP8266 Nodemcu менен NTP сааты долбоору: 5 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Бул окуу куралында биз Arduino IDE менен ESP8266/nodemcu аркылуу кантип убакытты алууну көрөбүз. Убакытты алуу, айрыкча, маалыматтарды окууңузга убакыт белгисин коюу үчүн пайдалуу. Эгерде сиздин ESP8266 долбооруңуз Интернетке кире турган болсо, анда Network Time Protocol (NTP) аркылуу убакытты ала аласыз - эч кандай кошумча жабдыктын кереги жок. тармак менен, эгерде сиз кодду жүктөгөндөн кийин, ал интернеттен убакыт алат, ошондуктан ал ар дайым туура убакытты көрсөтөт.
1 -кадам: Сизге керектүү нерселер
Бул долбоор үчүн сизге өтө аз нерселер керек: аны программалоо үчүн ESP8266/NODEMCUA USB кабели.
2 -кадам: NTP деген эмне жана ал кантип иштейт?
NTP деген эмне: An NTP Network Time Protocol дегенди билдирет. Бул стандарттык Интернет Протоколу (IP), компьютердин сааттарын бир тармак аркылуу кээ бир шилтемелерге синхрондоштуруу үчүн. Протокол бардык тармактык түзмөктөрдү Координацияланган Универсалдуу Убакытка (UTC) шайкештештирүү үчүн колдонулушу мүмкүн. зонанын офсети же күндүзгү жарыкты үнөмдөө убактысы кардар тарабынан колдонулат. Бул жол менен кардарлар серверлерге синхрондоштурулганына карабастан жайгашкан жери жана убакыт алкагынын айырмасы. Ал биз үчүн кандай иштейт: ESP8266 сыяктуу кардар түзмөгү серверге 123. A портунда Колдонуучунун Маалыматтар Протоколу (UDP) аркылуу туташат. NTP серверине пакетти сурануу
3 -кадам: Китепкананы Arduino IDEге орнотуу
Сиздин Arduino IDEде Libraries менеджерине барып NTPти издеп, мен жүктөгөндөй эле NTP кардар китепканасын жүктөп алыңыз, андан ары жардам алуу үчүн сүрөттү караңыз.
4 -кадам: Коддоо бөлүгү
Сураныч, төмөнкү кодду көчүрүп, тармагыңыздын грамоталарын кодуңузга киргизиңиз, андан кийин мен үчүн офсет убактысын белгилешиңиз керек, бул 19800, анткени менин убакыт алкагым utc+5: 30 болгондуктан UTC +5: 30 = 5.5*60*60 = 19800UTC+1 = 1*60*60 = 3600Убакыт алкагыңызды эсептеп, аны түзөтүп, андан кийин кодду жүктөңүз.#Include "NTPClient.h" #include "ESP8266WiFi.h" #include "WiFiUdp.h" const char*ssid = "***** ****** "; const char*password =" *********** "; const long utcOffsetInSeconds = 19800; char daysOfTheWeek [7] [12] = {" Жекшемби "," Дүйшөмбү ", "Шейшемби", "Шаршемби", "Бейшемби", "Жума", "Ишемби"}; // timeWiFiUDP ntpUDP алуу үчүн NTP Кардарын аныктоо; 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 -кадам: Убакытты алуу
Кодду Esp8266га жүктөгөндөн кийин, сериялык мониторду ача аласыз жана эгерде баары жакшы болсо, анда мен сериялык монитордо убакытты ала алам, ошондо сиз сериялык монитордо убакыт ала аласыз. көрсөтүү жана аны туура тармак сааты кылуу. Ошентип, тармактык саатты жасоо менен көңүл ачыңыз.
Сунушталууда:
NEO-6M модулун колдонуу менен жергиликтүү убакыт менен Arduino GPS сааты: 9 кадам
NEO-6M модулун колдонуу менен жергиликтүү убакыт менен Arduino GPS сааты: Бул үйрөткүчтө биз спутниктерден arduino аркылуу учурдагы убакытты кантип алууну үйрөнөбүз. Видеону көрүңүз
Ардуино менен реалдуу убакыт сааты: 3 кадам
Ардуино менен реалдуу убакыт сааты: Бул долбоордо биз Arduino жана RTC модулунун жардамы менен саат жасайбыз. Биз билгендей, Arduino чыныгы убакытты көрсөтө албайт, андыктан биз ЖКда туура убакытты көрсөтүү үчүн RTC модулун колдонобуз. Бардык кадамдарды кунт коюп окуңуз, бул сизге жардам берет
NTP убакыт белгиси менен ESP32 маалыматын IoT Cloudга кантип жарыялоо керек: 5 кадам
NTP Timestamp менен ESP32 маалыматтарын IoT Cloudго кантип жарыялоо керек: Көптөгөн колдонмолордо колдонуучулар пайдалуу маалыматтарды жүктөө үчүн AskSensors IoT булутуна жөнөтүлүүчү баалуулуктардын жергиликтүү убакыт белгиси менен бирге жөнөтүшү керек. Убакыт белгилеринин форматы - UNIX доорунун убактысы: Янудан бери өткөн миллисекунддардын саны
Arduino IDEди колдонуу менен M5stick C менен саат жасоо - M5stack M5stick-C менен RTC реалдуу убакыт сааты: 4 кадам
Arduino IDEди колдонуу менен M5stick C менен саат жасоо | R5 Real Time Clock With M5stack M5stick-C: Салам балдар бул көрсөтмөлөрдө биз m5stackтин m5stick-M5stack тактасы менен саат жасоону үйрөнөбүз, Arduino IDE.So m5stick күндү, убакытты көрсөтөт. дисплейде айдын жумасы
Видеолорду Интернеттен IPodго алуу, тез, оңой жана бекер!: 5 кадам
Видеолорду Интернеттен IPodго алуу, Тез, Оңой жана АКЫСЫЗ !: Кээде сиз YouTubeдан видео көрүп, аны iPodго салгыңыз келет. Мен түшүндүм, бирок түшүндүм, бирок мен аны интернет менен бөлүшүүнү чечтим. Бул колдонмо YouTube үчүн гана колдонулат, эгер сиз ошол эле жүктөө программасын колдонсоңуз