Arduino Mikro

Program Jam Digital Arduino Dengan RTC DS3231

Arduino Dengan RTC DS3231


Apakah itu RTC DS3231?

Sebelumnya masuk kedalam pembahasan Program Jam Digital Arduino Dengan RTC DS3231,  kalian harus mengerti terlebih dahulu mengenai RTC DS1302. RTC DS1302 merupakan RTC yang murah dan simple jika digunakan untuk belajar membuat Jam Digital. Akan tetapi kekurangan dari RTC ini adalah keakuratan waktunya, banyak yang sudah mencobanya dan ternyata RTC ini sering error terlambat sekian menit waktunya dalam waktu bulanan.

Hali ini sangat berisiko sekali apabila digunakan pada product yang permanent untuk jangka waktu yang lama, misalnya Jam Digital dan Jadwal Shalat. Untuk itulah ada solusi lainnya apabila kalian ingin membuat proyek jangka waktu yang lama, alangkah baiknya menggunakan  RTC DS3231 ini.

Adapun kelebihan dari RTC DS3231 :

- RTC DS3231 ini sangat akurat dan sudah pernah mencoba dipakai berbulan-bulan, hasil data waktunya masih sama dengan real time waktu yang sekarang. Dan hampir tidak pernah ada yang berubah sedikitpun.
- RTC DS3231 ini mempunyai Sensor Suhu di dalamnya. Betapa cukup lengkapnya spesifikasinya.
- RTC DS3231 ini juga mempunyai EPPROM. Sangat canggih sekali seperti mikrokontroller.

Untuk harga? pengecualian, sedikit lebih mahal dari DS1302, akan tetapi dengan spesifikasi dan kualitas jauh pastinya. Serta lebih komplit, seperti yang sudah dijelaskan.

Cara Membuat Rangkaian RTC DS3231
Adapun komponen yang perlu kalian siapkan sebelum membuat rangkaian :

- 1 Buah Arduino dan Kabel USB.
- 1 Buah RTC DS3231 yang mana sudah beserta Baterainya.
- 4 Buah Kabel Jumper

Kemudian cobalah dirangkai seperti pada gambar rangkaian dibawah ini :

Rangkaian RTC DS3231
Rangkaian Arduino Uno RTC DS3231

ArduinoRTC DS3231
5V5V
GNDGND
A4SDA
A5SCL

Rangkaian Arduino Uno RTC DS3231_2

Selanjutnya jika  sudah selesai dirangkai, Add Library RTC DS3231 kedalam Arduino IDE kalian. Gunakan Library RTClib.h dari Adafruit, dimana kalian dapat download lewat link dibawah ini :


Apabila kalian sudah Download Library-nya, langkah selanjutnya tambahkan kedalam library Arduino IDE.  Jikalau kalian belum mengetahui cara menambahkan library-nya, silahkan membaca Tutorial dibawah ini :


Tahap Sketch Program RTC DS3231
Berikut adalah contoh sketch program Jam Digital Arduino Dengan RTC DS3231, kalian dapat mencoba menggunakan dibawah ini :

#include "RTClib.h"
RTC_DS3231 rtc;
char dataHari[7][12] = {"Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"};
String hari;
int tanggal, bulan, tahun, jam, menit, detik;
float suhu;
void setup () {
Serial.begin(9600);
if (! rtc.begin()) {
Serial.println("RTC Tidak Ditemukan");
Serial.flush();
abort();
}
//Atur Waktu
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
// rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0));
}
void loop () {
DateTime now = rtc.now();
hari = dataHari[now.dayOfTheWeek()];
tanggal = now.day(), DEC;
bulan = now.month(), DEC;
tahun = now.year(), DEC;
jam = now.hour(), DEC;
menit = now.minute(), DEC;
detik = now.second(), DEC;
suhu = rtc.getTemperature();
Serial.println(String() + hari + ", " + tanggal + "-" + bulan + "-" + tahun);
Serial.println(String() + jam + ":" + menit + ":" + detik);
Serial.println(String() + "Suhu: " + suhu + " C");
Serial.println();
delay(1000);
}

Kalian cukup Upload saja, selanjutnya coba cek di Serial Monitor Arduino IDE-nya. Disana akan tampil data waktu seperti gambar berikut ini :

Serial Monitor RTC DS3231

Sebagai keterangan saja :
- Kode sketch program ini rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); adalah kode program yang berfungsi untuk setting Waktu Otomatis sesuai dengan jam dan tanggal pada Komputer kalian, apabila sudah di upload sekali silakan ketikkan kode // pada sketch program Arduino IDE-nya, kemudian upload lagi kode sketch programnya.
- Apabila akan di set secara Manual, coba gunakan kode sketch program ini rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0)); kemudian silahkan hilangkan kode //, selanjutnya sesuaikan waktunya, setelah itu upload. Apabila sudah di upload sekali, ketikkan lagi kode // dan terus upload kembali.

Posting Komentar untuk "Program Jam Digital Arduino Dengan RTC DS3231"