Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Tutorial Jam Waktu Nyata Arduino dan DS3231

Dalam Tutorial Arduino ini kita akan belajar cara menggunakan Modul Jam Real Time DS3231. Anda dapat menonton video berikut atau membaca tutorial tertulis di bawah ini.

Ringkasan

Pertanyaan pertama yang muncul di sini adalah mengapa kita sebenarnya membutuhkan RTC terpisah untuk Proyek Arduino kita ketika Arduino sendiri memiliki pencatat waktu bawaan. Intinya adalah modul RTC berjalan dengan baterai dan dapat melacak waktu bahkan jika kita memprogram ulang mikrokontroler atau memutuskan daya utama.

DS3231 Jam Waktu Nyata

DS3231 adalah Jam Waktu Nyata yang sangat akurat dan berbiaya rendah yang dapat menyimpan informasi jam, menit, dan detik, serta, hari, bulan, dan tahun. Juga, ia memiliki kompensasi otomatis untuk tahun kabisat dan bulan dengan kurang dari 31 hari.

Modul ini dapat bekerja pada tegangan 3,3 atau 5 V yang membuatnya cocok untuk banyak platform pengembangan atau mikrokontroler. Input baterai adalah 3V dan baterai CR2032 3V biasa dapat memberi daya pada modul dan menyimpan informasi selama lebih dari satu tahun.

Modul ini menggunakan Protokol Komunikasi I2C yang membuat koneksi ke Papan Arduino sangat mudah.

Berikut skema rangkaiannya:

Jadi yang kita butuhkan hanyalah 4 kabel, pin VCC dan GND untuk memberi daya pada modul, dan dua pin komunikasi I2C, SDA dan SCL.

Anda bisa mendapatkan komponen yang diperlukan untuk Tutorial Arduino ini dari link di bawah ini:

  • DS3231 Jam Waktu Nyata……………..
  • Dewan Arduino ……………………………
  • Breadboard dan Kabel Lompat ……… 

Pemrograman

Setelah kita menghubungkan modul, kita perlu memprogram Papan Arduino untuk bekerja dengan Jam Waktu Nyata. Namun, ketika memprogram komunikasi antara Arduino dan modul I2C, kodenya tidak terlalu kecil dan mudah. Untungnya, sudah ada beberapa library untuk DS3231 RTC yang dapat ditemukan di internet.

Untuk tutorial ini saya memilih untuk menggunakan Library yang dibuat oleh Henning Karlsen yang dapat ditemukan dan diunduh dari websitenya, www.rinkydinkelectronics.com.

Jadi setelah kita mengunduh dan menginstal perpustakaan, kita dapat menggunakan contoh demo pertamanya untuk mengaktifkan jam modul RTC pada awalnya. Di bagian penyiapan kode contoh demo, kita dapat melihat bahwa ada tiga baris yang perlu kita batalkan komentarnya untuk mengatur hari, waktu, dan data pada awalnya.

// Code from the Demo Example of the DS3231 Library

void setup()
{
  // Setup Serial connection
  Serial.begin(115200);
  // Uncomment the next line if you are using an Arduino Leonardo
  //while (!Serial) {}
  
  // Initialize the rtc object
  rtc.begin();
  
  // The following lines can be uncommented to set the date and time
  //rtc.setDOW(WEDNESDAY);     // Set Day-of-Week to SUNDAY
  //rtc.setTime(12, 0, 0);     // Set the time to 12:00:00 (24hr format)
  //rtc.setDate(1, 1, 2014);   // Set the date to January 1st, 2014
}Code language: Arduino (arduino)

Baris pertama untuk pengaturan hari dalam seminggu, baris kedua untuk pengaturan waktu dalam jam, menit, dan detik, dan baris ketiga untuk pengaturan tanggal dalam hari, bulan, dan tahun.

Setelah kami mengupload kode ini, kami perlu mengomentari kembali tiga baris dan mengupload ulang kode tersebut.

// Code from the Demo Example of the DS3231 Library

void loop()
{
  // Send Day-of-Week
  Serial.print(rtc.getDOWStr());
  Serial.print(" ");
  
  // Send date
  Serial.print(rtc.getDateStr());
  Serial.print(" -- ");

  // Send time
  Serial.println(rtc.getTimeStr());
  
  // Wait one second before repeating
  delay (1000);
}Code language: Arduino (arduino)

Jika kita melihat bagian loop dari kode, kita dapat melihat bahwa sekarang menggunakan tiga fungsi kustom kita mendapatkan informasi dari RTC dan mencetaknya di Serial Monitor. Berikut tampilannya di Serial Monitor.

Sekarang bahkan jika kita memutuskan daya Arduino dan kemudian menyambungkannya kembali dan menjalankan Serial Monitor lagi, kita dapat melihat bahwa waktu terus berjalan tanpa disetel ulang.

Jadi sekarang kami memiliki Jam Waktu Nyata dan kami dapat menggunakannya di Proyek Arduino apa pun. Sebagai contoh kedua saya menghubungkan LCD ke Arduino dan mencetak waktu dan tanggal di atasnya.

Berikut kode sumber dari contoh ini:

/*
* Arduino DS3231 Real Time Clock Module Tutorial
*
* Crated by Dejan Nedelkovski,
* www.HowToMechatronics.com
*
* DS3231 Library made by Henning Karlsen which can be found and downloaded from his website, www.rinkydinkelectronics.com.
*
*/
#include <DS3231.h>
#include <LiquidCrystal.h> // includes the LiquidCrystal Library 

DS3231  rtc(SDA, SCL);
LiquidCrystal lcd(1, 2, 4, 5, 6, 7); // Creates an LC object. Parameters: (rs, enable, d4, d5, d6, d7) 

void setup() { 
 rtc.begin(); // Initialize the rtc object
 lcd.begin(16,2); // Initializes the interface to the LCD screen, and specifies the dimensions (width and height) of the display } 
}

void loop() { 
 lcd.setCursor(0,0);
 lcd.print("Time:  ");
 lcd.print(rtc.getTimeStr());
 
 lcd.setCursor(0,1);
 lcd.print("Date: ");
 lcd.print(rtc.getDateStr());
 
 delay(1000); 
}Code language: Arduino (arduino)

Itu saja untuk Tutorial Arduino ini, jangan ragu untuk mengajukan pertanyaan apa pun di bagian komentar di bawah.


Proses manufaktur

  1. Arduino pov vision clock
  2. Tutorial Kunci RFID Arduino
  3. Jam Master
  4. Suhu Arduino. Monitor Dan Jam Waktu Nyata Dengan Tampilan 3.2
  5. Jam Berlin
  6. TM1637 Jam Digital dengan pengaturan waktu dan fungsi alarm
  7. eDOT - Jam Presisi dan Stasiun Cuaca Berbasis Arduino
  8. Tampilan Suhu OLED Arduino dengan Jam Waktu Nyata
  9. Tutorial Sensor Sidik Jari Arduino
  10. Robot Mendeteksi dan Membagikan Perubahan 3D dalam Waktu Nyata