Lompat ke konten Lompat ke sidebar Lompat ke footer

Belajar Menggunakan module Real Time Clock (RTC)

RTC DS3231 adalah module elektronika yang dapat menyimpan data waktu dengan cukup akurat data yang dapat di simpan mulai dari tahun, bulan, tanggal, jam, menit, hingga detik, module ini yang paling banyak di minati bandingkan dengan module RTC lainya dikarenakan fitur dan keakurasianya yang cukup bagus dibandingkan dengan module lainya.

Module ini sudah di lengkapi dengan batrai kecil CR2032 sebagai catu daya dari module ini, jadi walaupun tidak terhubung dengan catu daya eksternal module ini masih bisa bekerja, tapi bila batrainya di copot maka waktu yang sudah kita settingan sebelumya akan hilang dan akan kembali ke setingan default nya, batrai yang terletak pada module ini dapat bertahan hingga 73333,34 jam atau 3055,56 hari dengan syarat batrai baru dan terisi penuh , jadi jangan kuatir dengan baterainya, karena baterainya dapat bertahan lama 

Tak hanya itu saja fiturnya, module ini juga dilengkapi dengan chip EEPROM 24C32, Chip EEPROM ini dapat kita gunakan untuk menyimpan data-data layaknya EEPROM pada umumya, kita dapat menyimpan data-data variable berupa angka angka yang dapat kita manfaatkan di kemudian hari.

Spesifikai Module DS3231

  • Bekerja pada tegangan 2.3V - 5.5V DC
  • Dapat Bertahan pada suhu -45ºC hingga 85ºC
  • Dimensi PCB 38 x 22mm
  • Konsumsi daya 500nA 

Fitur Module DS3231

  • Sensor suhu digital dengan akurasi ±3ºC
  • Konsumsi daya super irit
  • Dapat bertahan 2 tahun lebih dengan batrai
  • Ukuranya yang minimalis
  • Dapat dijadikan kalender

Module ini dapat menyajikan data-data yang lengkap dan kompleks tentunya, untuk konsumsi daya dari module ini sangatlah irit bahkan module ini dapat tetep bekerja dua tahun lebih hanya mengandalkan batrai yang terpasang pada module ini, bahkan module ini memiliki fitur yang tidak saya sangka sebelumya yatu fitur pembacaan suhu ruangan dengan tingkat akurasi ±3ºC, jadi kita dapat membuat alarm atau pemantau suhu ruangan dengan module ini keren ga tuh, satu module multi fungsi.

Oke sekarang kita akan belajar mengambil data dari module RTC DS3231 ini lalu menampilkannya ke serial monitor, tapi sebelum itu kita perlu beberapa komponen tambahan nih, bisa lihata list di bawah ini.

1. Arduino
2. Breadbard
3. Beberapa kabel jumper
4. Komputer dan Software Arduino IDE
5. Module RTC DS3231

Perakitan

Setelah bahan terkumpul saatnya di rakit module RTC dan Board Arduinonya, silahkan ikuti gambar di bawah ini.



Eksekusi Program

Sebelum itu yang belum pernah install Library DS3231 perlu install library nya dulu di SINI Setelah itu saatnya upload program di bawah ini untuk menampilkan data RTC ke serial monitor.
Arduino Code
//==========[ www.badarteknog.com ]==========#
#include "RTClib.h"
char DAY[7][12] = {"Min", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"};
RTC_DS3231 rtc; 
void setup(){
Serial.begin(9600);
rtc.begin();
//    rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0)); //tahun,Bulan,Tanggal,Jam,Menit,Detik  //Atur data waktu RTC dengan data waktu yang kita inginkan
}
void loop(){
DateTime now = rtc.now();

    Serial.print(now.year(), DEC);  //Tahun
    Serial.print('/');
    Serial.print(now.month(), DEC); //Bulan
    Serial.print('/');
    Serial.print(now.day(), DEC); //Hari
    Serial.print(" (");
    Serial.print(DAY[now.dayOfTheWeek()]); //Hari "TEXT"
    Serial.print(") ");
    Serial.print("TIME: ");    
    Serial.print(now.hour(), DEC); //Jam
    Serial.print(':');
    Serial.print(now.minute(), DEC); //Menit
    Serial.print(':');
    Serial.print(now.second(), DEC); //Detik
    Serial.println();
    
    Serial.print("Temperature: ");
    Serial.print(rtc.getTemperature()); // Suhu
    Serial.println(" C");

    Serial.println();
    delay(500);
   
}

Baik itu dia programnya, bisa langung di coba dan lihat hasilnya, program di atas bisa kamu kembangkan sebagai pembelajaran kamu, oke sampai jumpa :)

Program di atas akan megambil data yang ada di dalam module RTC, lalu data tersebut akan di tampilkan ke serial monitor, data-datanya berupa data waktu yang di simpan dalam module ini.