Aplikasi Arduino : Kalender Digital

Alhamdulillah masih diberi kesempatan jumpa lagi dengan Ardutech, postingan kali ini kita akan membuat aplikasi Arduino level basic : Kalender Digital dengan Arduino UNO. Aplikasi atau proyek Arduino untuk menampilkan informasi tanggal (tanngal/bulan/tahun) dan waktu (jam:menit:detik). Saya yakin sudah banyak yang membuatnya, tapi saya juga yakin untuk yang masih awal belajar Arduino tulisan ini akan bermanfaat.

Untuk membuat kalender digital dengan Arduino kita perlu sebuah modul RTC (Real Time Clock). Sebuah modul yang terdiri dari chip RTC DS1307 (dapat juga yang lain seperti DS1302 atau DS3221) yang menyimpan dan menghitung waktu, baik jam, menit, detik maupun tanggal, bulan dan tahun. Bahkan modul RTC ini sudah ada sensor suhunya juga.  Modul RTC yang akan kita pakai disini nanti RTC DS3221 yang lebih akurat dibanding Ds1307 karena sudah menggunakan osilator internal, berbeda dengan DS1307 yang harus memasang crystal 32,768 Hz. Harganya juga relative murah dan mudah didapatkan di toko komponen elektronik. Pada modul RTC Ds3231 juga sudah dilengkapi dengan EEPROM AT24C32 dengan kemampuan menyimpan data 32 KB.

Pada modul RTC DS3221 terdapat baterai backup (baterai CMOS) tipe CR2032 dengan tegangan 3V yang akan mem-backup data di memori RTC sehingga data akan terus update walaupun sistemnya (Arduino) dalam keadaan off. Kita perhatikan untuk susunan kaki/pin terdapat 6 pin,  koneksi dengan Arduino cukup 4 pin saja yaitu : SDA, SCL, VCC dan GND. Sistem komunikasi datanya memakai I2C sehingga cukup 2 pin saja (SDA dan SCL) yang nantinya juga terhubung dengan pin SDA dan SCL di Arduino UNO ? Sudah tahu kan posisi pin SDA dan SCL di board Arduino UNO ? Itu lho di deretan pin digital 8,9 …. GND, AREFF, nah keterangan ada di bagian bawah, silakan dibalik board Arduino UNO-nya.

Sekarang langsung saja kita siapkan hardware Kalender Digital Arduino.

  • Arduino UNO (1)
  • Modul RTC DS3231 (1)
  • Modul LCD (1)
  • Breadboard (1)
  • Kabel konektor

Buat rangkaian Arduino dan RTC DS3231 seperti pada gambar berikut :

Berikutnya kita buat program atau source code Arduino untuk mengakses RTC DS3231 dan menampilkan ke LCD Display. Sebelum membuat program , terlebih dahulu siapkan/tambahkan library RTC ke dalam Arduino IDE yaitu library  RTC “DS3231.h. Jika belum punya silakan download disini [download id=”undefined” template=”Library RTC DS3231″]. Setelah download masukkan ke folder “libraries” yang ada di folder aplikasi Arduino.

Baik jika sudah siap semuanya sekarang jalankan Arduino IDE untuk membuat program Kalender Digital dengan Arduino dan RTCDs3231.

Tulis program kemdian simpan (Save) dan Upload ke board Arduino UNO. Pertamakali tampil dalam LCD di baris 1 : ” Kalender Digital” dan di baris ke-2 “  RTC DS3231  “. Setelah 2 detik kemudian berganti menjadi tampilan hari dan tanggal di baris 1, tampilan waktu dan suhu di baris ke-2.

Tampak pada baris 1 untuk nama hari memakai setingan bahasa Inggris, Fri maksudnya Friday. Jika akan mengganti dengan bahasa Indonesia bisa dengan penambahan program.

Beberapa fungsi dari library RTC “DS3231.h” yang dipakai dalam program Kalender Digital dapat dijelaskan disini. Sahabat Ardutech juga dapat melihatnya di dalam folder library Ds3231 di Documentation\DS3231.PDF.

  • setTime (hour,minute,second);
    fungsi  : Setting waktu RTC
    hour : jam (0 – 23)
    minute : menit (0 – 59)
    second : detik (0 – 59)
    contoh : rtc.setTime (8, 15, 00); Maksudnya seting jam 8 menit 15 detik 00
  • setDate (date,month,year);
    fungsi  : Setting tanggal RTC
    date :  tanggal (1 – 31)
    month : bulan (1 – 12)
    year : tahun (2000 – 2099)
    contoh : rtc.setDate (11, 10, 2019);  tanggal 11 Oktober 2019
  • setDow (uint8_t dow);
    fungsi  : Setting Hari (0 – 6) . Nilai 0 untuk Minggu, 1 untuk Senin sampai 6 untuk Sabtu.
    contoh : rtc.setDow (2); setting hari sebagai Selasa
  • getTimeStr ();
    fungsi  : Membaca data waktu di RTC,hasil berupa String
    contoh : rtc.getTimeStr(); Hasil : 10:45:11  : jam 10, menit ke 45, detik ke 11
  • getDateStr ();
    fungsi  : Membaca data tanggal di RTC,hasil berupa String
    contoh : rtc.getDateStr();  Hasil : 11.10.2019  : tanggal 11 Oktober 2019
  • getDowStr (uint8_t);
    fungsi  : Membaca data nama hari di RTC,hasil berupa String (Inggris)
    contoh : rtc.getDowStr();   Hasil Result : Monday . Format day Long
    contoh : rtc.getDowStr(1);  Hasil : Mon. Format day Short
    contoh : rtc.getDowStr(2);   Hasil : Monday. Format day Long
  • getTemp ();
    fungsi  : Membaca data suhu di RTC. Hasil dalam Celcius (variabel float)
    contoh : rtc.getTemp(); Hasil : 31.10 .Suhu 31.10° Celcius

Silakan dicoba dan dimodifikasi program Kalender Digital dengan Arduino dan RTC Ds3231, misalnya mengganti format hari  atau tanggalnya, sekalian untuk melancarkan teknik pemrograman sahabat semua. Semoga bermanfaat.

One thought on “Aplikasi Arduino : Kalender Digital

Leave a Reply

Your email address will not be published.