Contoh Aplikasi RTC menggunakan Arduino

Arduino dapat diprogram untuk bekerja selayaknya IC RTC (Real Time Clock). Dengan demikian Anda dapat membuat sistem RTC tanpa membutuhkan hardware IC RTC. Cukup dengan membuat script handler RTC di dalam Arduino, maka fungsi-fungsi yang berhubungan dengan waktu dapat Anda dapatkan dengan mudah dan presisi.

Caranya cukup mudah, yakni dengan menggunakan library ‘Time’. Cara menginstalnya dan tempat mengunduhnya dapat Anda baca tutorialnya di artikel sebelumnya, Arduino sebagai RTC. Jika library ‘Time’ sudah berhasil terinstal di laptop Anda, Anda dapat meneruskan membaca tutorial sebagai berikut, tapi jika belum, sebaiknya dibaca dulu artikel tersebut. [AdSense-A]

Sebagai pengantar, library ‘Time’ adalah library yang memiliki fungsi-fungsi yang berhubungan dengan waktu. Library ini bukan bawaan dari Arduino, melainkan dari komunitas penggemar Arduino dan menyebarkannya secara gratis di internet. Library ini sangat bermanfaat jika Anda membutuhkan sistem waktu yang presisi seperti halnya yang Anda dapatkan jika menggunakan IC RTC semisal DS1307. Function yang berhubungan dengan waktu bawaan Arduino sebenarnya sudah ada, yakni delay (millisecond), namun kurang presisi. Sehingga kurang cocok jika Anda membutuhkan data waktu seperti jam, hari, minggu, tahun, dst. Tapi dengan adanya library ‘Time’ masalah Anda dengan mudah dan cepat akan terselesaikan, dan hebatnya lagi tanpa hardware tambahan!

Berikut ini adalah contoh penggunaan Arduino sebagai RTC. Pada aplikasi ini akan dibuat sebuah program/sketch sederhana yang digunakan untuk mengambil data jam dan tanggal dan ditampilkan ke dalam jendela Serial Port Monitor.

Buka aplikasi Arduino di laptop/komputer Anda dan isikan contoh sketch berikut ini

#include <Time.h>

void setup() {
Serial.begin(9600);
setTime(8,00,0,24,6,15);
}

void loop(){ 
Serial.print ("Tanggal = ");
Serial.print(day());
Serial.print(":");
Serial.print(month());
Serial.print(":");
Serial.print(year());
Serial.print(" - Jam = ");

Serial.print(hour());
Serial.print(":");
Serial.print(minute());
Serial.print(":");
Serial.println(second());
delay (1000);
}

Berikut penjelasan script di atas :

Baris [1] : mendefinisikan library ‘Time’ di sketch Arduino

Baris [4] : menginisialisasi port serial

Baris [5] : mengeset waktu awal dari RTC. Ini dilakukan jika Arduino belum disinkronisasikan dengan waktu yang sebenarnya. Untuk sinkronisasi waktu dapat dilakukan dengan waktu komputer, IC RTC, Ethernet shield, atau GPS modul. Kapan-kapan akan saya bahas dalam modul terpisah.

Baris [9-22] : memanggil function day(), month(), year(), hour(), minute(), second() untuk mendapatkan data tanggal, bulan, tahun, jam, menit dan detik, sekaligus mengirimnya ke port serial untuk ditampilkan di jendela port Serial Monitor

Langkah berikutnya, hubungkan papan Arduino Anda dengan laptop melalui kabel USB. Upload sketch di atas dengan menekan shortcut ‘Upload’ atau dengan menekan tombol ‘CTRL+U’. Untuk mengetahui hasilnya, bukalah jendela Serial Port Monitor melalui menu Tools | Serial Monitor. Hasilnya seperti pada gambar di bawah.

contoh aplikasi RTC menggunakan Arduino

Cukup mudah bukan? Aplikasi RTC sendiri kebanyakan digunakan untuk aplikasi yang berhubungan dengan waktu seperti jam digital, pengingat waktu sholat di masjid, pengendali genset, dsb. Anda dapat memanfaatkan library ini untuk menghemat budget, space PCB dan waktu Anda. Selamat berkreasi 🙂 [AdSense-A]

0 0 votes
Article Rating
Tags:

Leave a Reply

60 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
yohanes s padeng

gan mau nanya..gmna cara deteksi sensor tegangan AC di arduino..soalx outputx ngga sma dengan tegangan PLN gan..
pengaturan source codex gmna gan..mhon pencerahannya gann
mksh sblmnya

yohanes s padeng

mksdx gini gan..program yg dipke gan arduino.. //#include int analogIn = A1; int RawValue= 0; double Voltage = 0; //LiquidCrystal lcd(12, 11, 5, 4, 3, 2); void setup() { //lcd.begin(16, 2); // komunikasi serial 9600 bit per sekon: Serial.begin(9600); } void loop() { RawValue = analogRead(analogIn);// baca input analog pada pin A0: Voltage = RawValue * (5.0 / 1023.0); // Konversi NilaiSensor (dari 0 – 1023) menjadi tegangan (0 – 5V); //Voltage = RawValue * 5; //Voltage = RawValue ; Voltage = Voltage / 1023; // Menampilkan hasil: //lcd.print( Voltage ); Serial.println(Voltage); delay (800); } ni sorce code yg dipke… Read more »

yohanes s padeng

trus gan mau nanya juga ..knpa output dri modul RTC gini gan…..
1: 00-01-01 00:00:00
2: 00-01-01 00:00:00
3: 00-01-01 00:00:00
4: 00-01-01 00:00:00
5: 00-01-01 00:00:00
6: 00-01-01 00:00:00
7: 00-01-01 00:00:00
8: 00-01-01 00:00:00
9: 00-01-01 00:00:00

yohanes s padeng

tpi RTC yg dipke DS1307…apa sma gan

yohanes s padeng

mnta juga source code yg gan udh prnh ngetes

yohanes s padeng

source code yg dipke ini gan..

#include
#include
#include “RTClib.h”
#include
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
RTC_DS1307 RTC ;

void setup() {
// Wire.begin();
Serial.begin(9600);
Wire.begin();
RTC.begin();
lcd.begin(16, 2);

pinMode(8,OUTPUT);

if(!RTC.isrunning());
Serial.println(“RTC is NOT running!”);
RTC.adjust(DateTime(_DATE_,_TIME_));
}
}

void loop() {
DateTime now = RTC.now();
lcd.setCursor(0,0);
lcd.print(now.day(),DEC);
lcd.print(‘/’);
lcd.print(now.month(),DEC);
lcd.print(‘/’);
lcd.print(now.year(),DEC);
lcd.print(‘ ‘);
lcd.setCursor(0,1);
if(now.hour()<10)
lcd.print('0');
lcd.print(now.hour(),DEC);
lcd.print(':');
if(now.minute()<10)
lcd.print('0');
lcd.print(now.minute(),DEC);
lcd.print(':');
if(now.second()<10)
lcd.print('0');
lcd.print(now.second(),DEC);
delay(1000);
}

ketut

gan… pernah buat jam digital + alarm dengan arduino dan RTC…?
monitornya dengan LCD 16 x 2
klo pernah tolong dishare codingnya..
thank’s

ketut

saya pernah pakai model Alarm,alarmRepeat saya gabungkan dengan jam digital. begitu waktunya mununjukkan settingan alarm knp di LCD monitornya tidak mau berubah tulisannya ya… padahal sudah saya setting tulisan utk indikasi alarm. tulisannya masih yg muncul jam digitalnya. kira2 scripnya ada yg salah ga mas..?
thank’s

figinting

gan, saya mau buat alarm tp gak pake RTC hardware, pakenya ya RTC software ini, bsa gak?

Samsul arifin

Mas gimana caranya untuk cek hari pada RTC ds3231 ??? Mohon bantuannya mas

Hadi

mas, kalo hasil output nya mau dtampilin di led matrix p10 kira kira gmana ya gan?

yohanes natanael

gan itu pake arduino uno r3 bisa ?

bima candra

Gan ane rencana mau bikin blower otomatis pakek arduino , kira2 alat yg diperlui untuk pembuatan apa aja ya gan , soalnya masih newbie mau coba bikin gan , tolong gan pencerahannya terimakasih

Adim_Ardi

Mas mau nanya, berkaitan dengan skripsi saya, kan saya buat alat monitoring baterai.
Sensor tegangan mnggunakan voltage divider
Sensor arus dengan ACS712
Nah semisal mau buat wh/kwh meter DC untuk waktunya ambil dari mana ya ?
Syukur kalo ad contoh sketchnya ^_^
Trimakasih, semoga semakin barokah ilmunya

erwisko

Mas Aji,

Mohon pencerahannya.
Bagaimana caranya agar waktu yang ditampilkan tetap sesuai walaupun arusnya diputus dan disambungkan kembali.
Yang saya alami ketika arusnya diputus dan disambungkan kembali, waktu yang ditampilkan tidak berlanjut.
Demikian mas, terima kasih

Devri Agus Hidayat

Gan… Kalau mau menjadikan timer arduino seperti plc itu gmna gan ?? apakah harus pakek rtc jga?
misal buat mengontrol 3 relay dengan masing-masing relay timernya berbeda. relay 1 menyala slama 30 mnit kemudian mati selama 1 jam. relay 2 menyla slama 10 menit kemudian mati slama 30 menit. terus relay 3 menyala slama 1 jam mati slama 1 jam. programnya itu harus berjalan bebarengan saat pertma kali arduino dihidupkan seperti PLC. itu skectnya bagaimana ya mas ?? mohon pencerahannya.

siin setiawan

Mas klau buat nampilin jam di led matrix p10 ya gmane. Mas atu bisa kirim coding ya mas ke imeil.

Kreatifgame@gmail.com

Trimakash

Arifin

Bang bisa kasih tutornya arduino ama xbee endak lagi bingung nih.
Terimakasih

agung

mau nanyak mas ini maksutnya apa ya mas saya belum ngerti masih pemula liquidcrystal lcd(12,11,5,4,3,2) sedangkan di lcd itu adanya(D0,D1,D2,D3,D4,D5,D6,D7) masang nya gimana ya mas terimakasih

sadih

gan kira kira kalau kita mau mengatur waktu pake RTC terus nginputnya pakai push button dan outputnya tampil di lc 16 x 2 tersimpan di eeprom bisa nggak?
dan terus saya juga ingin menginputnya dengan hp android …tolong jawabannya gan , terima kasih

Irkam

Selamat pagi mas Saptaji. Tutorialnya sangat membantu. Terima kasih.
Mas, bikin tutorial buat tentang penyimpanan data finger print ke Microsoft SD menggunakan Arduino dong mas..biar tambah ilmu baru bagi kami yang belum tahu. Terima kasih 😀

A zaiji

Gan mau tanya
Rtc yang internal arduino itu klau power d matikan lalu d nyalakan lagi?
Waktunya perlu setting ulang apa tdk?
Klau pakai eksternal ic kan ada baterai cmos nya untuk backup.

Yahdian

setting waktu dan tanggal tersinkronisasi langsung dengan waktu di pc gimana caranya gan?

adorry

Mass mau nanya. Kalau mau atur waktu rtc sesuai dengan waktu yang sekarang bagaimana.?

Bukan Budi

mau tanya bg ajii, tambahan koding nya utk pengaplikasian dengan menggunakan servo dong bg, makasii 🙂

ivan

siang, maaf saya mau tanya . saya punya auto adzan yang bisa mengontrol lampu untuk mati selama 10 kemudian menyala kembali, tampa sengaja codingnya saya reset dan saya mau upload kembali tidak bisa, apakah anda membantu saya

ivan

saya sudah pake arduino 1.8.0 dan sudah saya buat bahasa coodingnya karena saya merubah posisi gps nya, tetapi tulisannya error pas saat mau upload

ivan

saya lanjut ke email anda ya, soalnya coodingnya begitu verify error tanpa konek ke port

ahmad kafabi

mas saya mau tanya, jadi saya lagi ada project nih, projectnya yaitu “pemberi pakan ternak otomatis” nah kan saya sudah hidupin servonya pake Delay, bisa sih tpi ada batasnya. gk bisa terlalu lama, semisal 3jam-dst. nah cara programnya gimana agar aku bisa nge-SET si servo akan hidup setiap semisal (6-jam sekali) dengan jumlah waktu delay sebesar (2000) HIGH &LOW.
terima kasih , ini nomer wa saya : 081235965623

Bella

kak mau tanya, kalau saya membuat penyiraman otomatis menggunakan rtc dan sensor kelembapan dengan output pompa untuk memprogram agar pompanya menyala saat waktu dan kelembapan yang sesuai bagaimana ya kak? sejauh ini pompa baru bisa menyala sesuai kelembapan saja tidak sesuai dengan waktu yg di jadwalkan utk menyiram. trmks kak mohon pencerahannya.

Bella

kebetulan saya sudah membeli rtc nya tapi yang tipe DS1307 kak, apakah bisa juga?

60
0
Would love your thoughts, please comment.x
()
x