Mendapatkan Masa Dari Internet Menggunakan ESP8266 - Projek Jam NTP Dengan ESP8266 Nodemcu: 5 Langkah
Mendapatkan Masa Dari Internet Menggunakan ESP8266 - Projek Jam NTP Dengan ESP8266 Nodemcu: 5 Langkah
Anonim
Mendapatkan Masa Dari Internet Menggunakan ESP8266 | Projek Jam NTP Dengan ESP8266 Nodemcu
Mendapatkan Masa Dari Internet Menggunakan ESP8266 | Projek Jam NTP Dengan ESP8266 Nodemcu

Dalam tutorial ini kita akan melihat bagaimana mendapatkan masa menggunakan ESP8266 / nodemcu dengan Arduino IDE. Mendapatkan masa sangat berguna dalam pencatatan data untuk menetapkan masa pembacaan anda. Sekiranya projek ESP8266 anda mempunyai akses ke Internet, anda boleh mendapatkan masa menggunakan Network Time Protocol (NTP) - anda tidak memerlukan perkakasan tambahan. Anda boleh menyambungkan ESP8266 anda ke rangkaian wifi anda dan ia akan menjadi jam yang akan diselaraskan dengan rangkaian, jadi jika setelah anda memuat naik kod, ia akan mendapat masa dari internet sehingga akan selalu menunjukkan waktu yang tepat.

Langkah 1: Perkara yang Anda Perlu

Perkara yang Anda Perlu
Perkara yang Anda Perlu

Untuk projek ini, anda memerlukan sedikit perkara: Kabel USB ESP8266 / NODEMCUA untuk memprogramkannya.

Langkah 2: Apa itu NTP dan Bagaimana Ia Berfungsi?

Apa itu NTP dan Bagaimana Ia Berfungsi?
Apa itu NTP dan Bagaimana Ia Berfungsi?
Apa itu NTP dan Bagaimana Ia Berfungsi?
Apa itu NTP dan Bagaimana Ia Berfungsi?

Apa itu NTP: NTP bermaksud Protokol Masa Rangkaian. Ini adalah Protokol Internet (IP) standard untuk menyegerakkan jam komputer dengan sebilangan rujukan melalui rangkaian. Protokol ini boleh digunakan untuk menyegerakkan semua peranti rangkaian ke Waktu Universal Terpadu (UTC). NTP menetapkan jam komputer ke UTC, pada waktu tempatan offset zon atau offset masa penjimatan cahaya diterapkan oleh pelanggan. Dengan cara ini klien dapat menyegerakkan ke pelayan tanpa mengira perbezaan lokasi dan zon waktu. Bagaimana ia akan berfungsi untuk kita: Peranti pelanggan seperti ESP8266 menyambung ke pelayan menggunakan Protokol Datagram Pengguna (UDP) pada port 123. Pelanggan kemudian menghantar permintaan paket ke pelayan NTP. Sebagai tindak balas kepada permintaan ini, pelayan NTP menghantar paket cap waktu. Paket cap masa mengandungi banyak maklumat seperti cap waktu UNIX, ketepatan, kelewatan atau zon waktu. Pelanggan kemudian dapat menguraikan nilai tarikh & waktu semasa.

Langkah 3: Memasang Perpustakaan di Arduino IDE

Memasang Perpustakaan di Arduino IDE
Memasang Perpustakaan di Arduino IDE

Dalam IDE Arduino anda, pergi ke pengurus Perpustakaan dan cari NTP dan muat turun pustaka pelanggan NTP seperti yang saya muat turun, rujuk gambar untuk bantuan lebih lanjut.

Langkah 4: Bahagian Pengekodan

Bahagian Pengekodan
Bahagian Pengekodan
Bahagian Pengekodan
Bahagian Pengekodan

Sila salin kod berikut & masukkan kelayakan rangkaian anda ke dalam kod anda maka Anda perlu menetapkan waktu offset untuk saya ialah 19800 Kerana zon waktu saya adalah utc + 5: 30 jadi UTC +5: 30 = 5.5 * 60 * 60 = 19800UTC + 1 = 1 * 60 * 60 = 3600KALIKAN zon waktu anda dan edit dan kemudian muat naik kodnya. # Include "NTPClient.h" #include "ESP8266WiFi.h" # include "WiFiUdp.h" const char * ssid = "***** ****** "; const char * password =" *********** "; const panjang utcOffsetInSeconds = 19800; char daysOfTheWeek [7] [12] = {" Ahad "," Isnin ", "Selasa", "Rabu", "Khamis", "Jumaat", "Sabtu"}; // Tentukan Pelanggan NTP untuk mendapatkan masaWiFiUDP ntpUDP; NTPClient timeClient (ntpUDP, "pool.ntp.org", utcOffsetInSeconds); batal persediaan () {Serial.begin (115200); WiFi.begin (ssid, kata laluan); sementara (WiFi.status ()! = WL_CONNECTED) {kelewatan (500); Cetakan bersiri ("."); } timeClient.begin ();} gelung kosong () {timeClient.update (); Serial.print (daysOfTheWeek [timeClient.getDay ()]); Cetakan bersiri (","); Serial.print (timeClient.getHours ()); Serial.print (":"); Serial.print (timeClient.getMinutes ()); Serial.print (":"); Serial.println (timeClient.getSeconds ()); //Serial.println (timeClient.getFormattedTime ()); kelewatan (1000);}

Langkah 5: Mendapat MASA

Mendapat MASA
Mendapat MASA

Setelah memuat naik kod ke Esp8266, anda boleh membuka monitor bersiri dan jika semuanya baik, anda akan dapat masa di monitor bersiri kerana saya dapat meluangkan masa di monitor bersiri saya. Oleh itu, dengan projek ini anda boleh melampirkan paparkan dan jadikan jam rangkaian yang betul. Oleh itu, bersenang-senanglah membuat jam rangkaian anda.

Disyorkan: