IMPLEMENTASI PENGATURAN WAKTU OPERASI
PERALATAN LISTRIK SECARA OTOMATIS
BERBASIS MIKROKONTROLER AT89S8252
TUGAS AKHIR
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Disusun oleh:
I.V EKADE PRASETYO T
NIM: 035114028
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2008
IMPLEMENTATION OF AUTOMATICAL TIME
CONTROLLING TO ELECTRICAL EQUIPMENT
BASED ON AT89S8252 MICROCONTROLER
FINAL PROJECT
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Electrical Engineering Study Program
By:
I.V EKADE PRASETYO T
Student Number: 035114028
ELECTRICAL ENGINEERING STUDY PROGRAM
ELECTRICAL ENGINEERING DEPARTMENT
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2008
HALAMAN PENGESAHAN OLEH PEMBIMBING
TUGAS AKHIR
IMPLEMENTASI PENGATURAN WAKTU OPERASI
PERALATAN LISTRIK SECARA OTOMATIS
BERBASIS MIKROKONTROLER AT89S8252
Disusun oleh:
I.V EKADE PRASETYO T
NIM : 035114028
Telah disetujui oleh:
Pembimbing I
B. Wuri Harini S.T, M.T.
Tanggal _______________
Pembimbing II
Ir. Tjendro
Tanggal _______________
HALAMAN PENGESAHAN OLEH PENGUJI
TUGAS AKHIR
IMPLEMENTASI PENGATURAN WAKTU OPERASI
PERALATAN LISTRIK SECARA OTOMATIS
BERBASIS MIKROKONTROLER AT89S8252
Disusun oleh:
I.V EKADE PRASETYO T
NIM : 035114028
Telah dipertahankan di depan panitia penguji
Pada tanggal: 28 Oktober 2008
dan dinyatakan memenuhi syarat.
Susunan Panitia Penguji:
Nama Lengkap
Tanda Tangan
Ketua
: Ir. Th. Prima Ari Setiyani, S.T, M.T
……….
Sekretaris
: B. Wuri Harini, S.T, M.T
……….
Anggota :
Ir.
Tjendro
……….
Anggota
: Pius Yozy Merucahyo,S.T, M.T
……….
Yogyakarta,……….
Fakultas Sains dan Teknologi Universitas Sanatha Dharma
Wakil Dekan 1
Yosef Agung Cahyana, S.T, M.T.
LEMBAR PERNYATAAN KEASLIAN KARYA
“Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis ini
tidak memuat karya atau bagian karya orang lain,
kecuali yang telah disebutkan dalam kutipan dan daftar pustaka,
sebagaimana layaknya karya ilmiah.”
Yogyakarta, 8 November 2008
Penulis,
I.V Ekade Prasetyo T
MOTTO DAN PERSEMBAHAN
MOTTO:
“Janganlah hendaknya kamu kuatir tentang apapun
juga, Tetapi nyatakanlah dalam segala hal
keinginanmu kepada Allah dalam DOA dan
permohonan dengan ucapan syukur”
(Filipi
4 : 6)
MOTTO:
“Janganlah hendaknya kamu kuatir tentang apapun
juga, Tetapi nyatakanlah dalam segala hal
keinginanmu kepada Allah dalam DOA dan
permohonan dengan ucapan syukur”
(Filipi 4 : 6
)
Kupersembahkan Tugas Akhir ini untuk:
Yesus Kristus atas segala kasih dan kebaikannya,
Papa dan Mamaku dan segenap keluargaku
yang selalu memberikan doa & dukungan
Jemaat Gen-b Yogyakarta, Zona 2
Almamaterku Teknik Elektro USD
INTISARI
Dengan perkembangan ilmu pengetahuan dan teknologi yang begitu pesat,
manusia menginginkan sesuatu yang dapat digunakan untuk memudahkan
pekerjaannya. Salah satunya adalah dengan membuat suatu alat atau sistem yang
dapat mengatur waktu ON/OFF setiap peralatan listrik secara otomatis.
Implementasi pengaturan waktu operasi peralatan listrik secara otomatis
adalah suatu sistem atau alat yang dapat digunakan untuk mengatur
peralatan-peralatan listik seperti alat pemanas, lampu dan lain sebagainya. Sistem atau alat ini
terdiri atas sebuah mikrokontroler AT89S8252 sebagai pusat pengendali, sebuah RTC
(
Real time clock
) sebagai sistem pewaktuan, sebuah
keypad
untuk memasukan data
yang mana data-data tersebut akan dibandingkan dengan data pada sistem pewaktuan.
Bila waktu ON yang diprogram sama dengan waktu pada sistem pewaktuan maka
relay
akan ON untuk menghidupkan peralatan listrik dan bila waktu OFF yang
diprogram sama dengan waktu pada sistem pewaktuan maka
relay
akan OFF.
Data-data pada sistem pewaktuan kemudian ditampilkan pada LCD sehingga dapat dilihat
pada setiap perubahan waktunya. Peralatan listrik yang bisa diatur untuk waktu
ON/OFF adalah sebanyak 2 buah (2
output
).
Dari hasil pengujian, dapat diketahui bahwa dengan sistem pewaktuan yang
telah dirancang, peralatan listrik dapat ON/OFF sesuai dengan waktu yang
diinginkan. Dengan demikian dapat dikatakan bahwa alat ini dapat bekerja dengan
baik dan peralatan-peralatan listrik dapat diatur secara otomatis.
Kata kunci: Sistem pewaktuan, Aplikasi Mikrokontroler dalam Bidang Industri.
ABSTRACT
The technology and science have developed so fast, so that human being
needs something to help to do their jobs easier. One of the examples is by creating an
equipment or system which is able to arrange the ON/OFF time to every electrical
equipments automatically.
The implementation of operational time arrangement automatically for
electrical equipments is a system which use to arranges the ON/OFF time schedule
for electrical equipments such as heater, lamp, etc. This appliance consist of a
microcontroller AT89S8252 as controller center, a RTC ( Real Time clock) as timing
system, a keypad using for input of data is which the data will be compared to data of
timing system. If the ON time is arranged to be equal with the timing system, the
relay will be ON to start the electrical equipments, and if the OFF time is arranged to
be equal with timing system, the relay will be OFF. The data in timing system will be
displayed on LCD, so that the changing of time can be seen. There are two electrical
equipments which can be arranged by time of ON/OFF.
From the result of the test, knowable that by using timing system which have
been designed, the electrical equipments earned to be ON/OFF according to wished
time. Therefore can be said that this appliance can work better and it can regulated
electrical equipments automatically.
Keyword : Timing system, Application Microcontroller in Industrial.
KATA PENGANTAR
Puji syukur dan terima kasih penulis panjatkan kepada Allah Bapa atas segala
kasih karunia-Nya sehingga tugas akhir dengan judul “
IMPLEMENTASI
PENGATURAN WAKTU OPERASI PERALATAN LISTRIK SECARA
OTOMATIS BERBASIS MIKROKONTROLER AT89S8252 ” ini dapat
diselesaikan dengan baik. Tugas akhir ini merupakan salah satu syarat untuk
memperoleh gelar Sarjana pada program studi Teknik Elektro Universitas Sanata
Dharma Yogyakarta.
Dalam proses penulisan tugas akhir ini penulis menyadari bahwa ada begitu
banyak pihak yang telah memberikan perhatian dan bantuan sehingga tugas akhir ini
dapat terselesaikan. Maka dari itu, penulis ingin mengucapkan terima kasih kepada :
1.
Tuhan Yesus Kristus, Juru selamat dan Penolongku.
2.
Kedua orang tuaku tercinta M. Tupamahu dan Sih Rumanti atas segalanya
yang telah diberikan, dan dikorbankan yang tak akan pernah dapat ternilai
harganya.
3.
Adik-adikku, Ardhi dan Putri serta semua keluarga yang telah
memberikan semangat dan dukungan yang luar biasa.
4.
Ibu Wuri selaku dosen pembimbing I yang telah banyak meluangkan
waktu untuk memberikan bimbingan, pengetahuan, diskusi, arahan, kritik
dan saran dalam menyelesaikan tugas akhir.
5.
Bapak Tjendro atas selaku dosen pembimbing II yang dengan senang hati
memberikan pengarahan, bimbingan dan segenap perhatiannya.
6.
“Special one”, Dian H Tarioko atas dukungan, motivasi, perhatian dan
semangat serta doanya.
7.
Semua rekan-rekan Teknik Elektro yang sudah mendukung dan
membantu: Erik (TE’04), Winarto, Dece, Ratno, Riki, Nendar, Roni dan
semua rekan TE’03 tanpa terkecuali.
8.
Saudara–saudariku dalam Iman: Ridho, John, Sari, K’mely, Nona, Ephin,
Ice, Maria, Tian, Mario, Ice, Ones dan semua anak-anak Full Blast dan
Jehova Nissi atas perhatian dan semangatnya.
9.
Paul (audio visual) dan Ellen Z1 atas kebaikannya meminjamkan kamera
digital.
10. Trisno, Bang Koko, Bang Sam, Nando, Hendro, Mas Punto, Edi, Deni dan
semua anak-anak Center Blisfull dan City on Hill atas cerita-cerita dan
”mob-mob”nya yang memberikan inspirasi, semangat dan membantu
menghilangkan stress.
11. Tim Music Ministry atas dukungan moril serta kepeduliannya.
12. Jemaatku GBI Gen-B Yogyakarta, zone II dan semua orang yang belum
disebutkan satu-persatu, yang telah membantu dalam penyusunan karya
tulis ini.
Penulis mengakui bahwa karya tulis ini masih jauh dari sempurna. Oleh
karena itu, segala kritik dan saran yang membangun akan penulis terima dengan
senang hati. Akhir kata, semoga tugas akhir ini berguna bagi semua pihak dan dapat
bermanfaat bagi perkembangan Jurusan Teknik Elektro Universitas Sanata Dharma
Yogyakarta. Tuhan memberkati kita semua.
Yogyakarta, 8 November 2008
Penulis,
I.V Ekade Prasetyo T
DAFTAR ISI
Halaman Judul...
Lembar Pengesahan oleh Pembimbing...
Lembar Pengesahan oleh Penguji...
Lembar Pernyataan Keaslian Karya...
Halaman Persembahan dan moto hidup...
Intisari...
Abstract...
Kata Pengantar...
Daftar Isi ...
Daftar Gambar...
Daftar Tabel ...
BAB I PENDAHULUAN
1.1 Latar Belakang ... ...
1.2 Tujuan...
1.3 Batasan Masalah...
1.4 Metodologi Penelitian...
1.5 Sistematika Penulisan...
BAB II DASAR TEORI
2.1 Mikrokontroler AT89S8252...
2.1.1 Organisasi Memori Mikrokontoler AT89S8252………
i
iii
iv
v
vi
vii
viii
ix
xii
xvi
xviii
1
2
2
2
3
5
6
2.2 LCD (
Liquid Crystal Display
)…...
2.2.1 Antarmuka LCD………
2.2.2 Bentuk Karakter LCD………..
2.3 Real Time Clock (RTC)…...
2.4 Papan Pengunci (
keypad
)...
2.5 Transistor ...
2.6 Relay...
BAB III PERANCANGAN
3.1 Diagram Blok Perancangan Mesin Voting Elektronik………..
3.2 Perancangan Perangkat Keras (Hardware)...……...
3.2.1 Rangkaian Mikrokontroler AT89S8252………
3.2.2 Sistem Papan Pengunci (
keypad
)..………
3.2.3 Sistem Penunjuk Waktu (RTC)...………..….
3.2.4
Driver
(Transistor)……….
3.2.5 Perancangan Perangkat Keras Alat………
3.3 Perancangan Perangkat Lunak………..
3.3.1 Diagram alir Pemrograman Perancangan Sistem………….
3.3.2 Perancangan Bentuk Tampilan pada LCD………
BAB IV HASIL DAN PEMBAHASAN
4.1 Hasil Akhir Perancangan...
4.2 Pengamatan Sistem ...
4.2.1 Cara Menjalankan Alat...
9
10
11
12
14
14
17
19
20
21
21
22
23
25
26
27
31
36
37
37
4.2.2 Pengujian Kerja Sistem
4.2.3 Pengamatan Kerja Alat Keseluruhan...
4.2.4 Pengamatan Sistem RTC...
4.2.4.1 Subrutin Penunjuk waktu...
4.2.4.2 Subrutin Pengesetan (
update
) Pewaktuan...
4.2.4.3 Subrutin Pengesetan data menit...
4.2.4.4 Subrutin Pengesetan data jam...
4.2.4.5 Subrutin Pengesetan data hari...
4.2.4.6 Subrutin Pengesetan data Tanggal...
4.2.4.7 Subrutin Pengesetan data bulan...
4.2.4.8 Subrutin Pengesetan data Tahun...
4.2.5 Pengamatan sistem pewaktuan Mikrokontroler...
4.2.5.1 Subrutin untuk memasukan data awal...
4.2.5.2 Subrutin
Rolling
detik...
4.2.5.3 Subrutin
Rolling
menit...
4.2.5.4 Subrutin
Rolling
jam...
4.2.5.5 Subrutin
Rolling
tanggal...
4.2.5.6 Subrutin
Rolling
bulan...
4.2.5.7 Tampilan Sistem Pewaktuan Mikrokontroler...
4.2.5.8 Tampilan Sistem Pewaktuan pada 7-
segmen
...
4.3 Sistem
Driver
dan Catu Daya...
38
39
43
43
45
46
47
48
48
49
50
51
51
51
52
53
53
54
54
58
64
BAB V KESIMPULAN DAN SARAN
5.1 Kesimpulan...
5.2 Saran...
DAFTAR PUSTAKA...
LAMPIRAN DATA PERCOBAAN...
...
LAMPIRAN
RANGKAIAN LENGKAP
...
LAMPIRAN LISTING PROGRAM
...
LAMPIRAN DATASHEET...
...
67
67
67
69
L1
L2
L3
L4
DAFTAR GAMBAR
Gambar 2.1 Peta Memori Data Internal...
7
Gambar 2.2 Peta RAM Internal AT89S8252…………...
7
Gambar 2.3 Teknik Antarmuka 8 bit LCD M1632…...
10
Gambar 2.4 Bentuk Karakter LCD………...
12
Gambar 2.5 IC RTC DS12887………...
13
Gambar 2.6 Konstruksi
Keypad
... 14
Gambar 2.7 Arah Arus Pada Transistor...
15
Gambar 2.8 Transistor sebagai Saklar...
16
Gambar 3.1 Diagram blok Sistem……….………
20
Gambar 3.2 Hubungan Mikrokontroler dengan
keypad……
……… 22
Gambar 3.3 Hubungan Mikrokontroler dengan RTC...
23
Gambar 3.4 Hubungan Mikrokontroler dengan
Driver
... 24
Gambar 3.5 Perancangan Alat (tampak depan)...
25
Gambar 3.6 Perancangan Alat (tampak belakang)...
25
Gambar 3.7 Diagram Utama……….
27
Gambar 3.8 Diagram Tampilan menu utama...
28
Gambar 3.9 Diagram Set waktu...
29
Gambar 3.10 Diagram perbandingan Waktu ON/OFF
...31
Gambar 3.11 Tampila Pewaktuan pada LCD...
32
Gambar 3.12 Tampilan Menu Utama dan Pilihan Out-1...
32
Gambar 3.13 Tampilan Pilihan Out-2 dan Keluar Menu...
33
Gambar 3.14 Tampilan Pemrograman Out-1 untuk Waktu Jam ON....
33
Gambar 3.15 Tampilan Pemrograman Out-1 untuk Waktu Kalender ON
33
Gambar 3.16 Tampilan Pemrograman Out-1 untuk Waktu Jam OFF...
34
Gambar 3.17. Tampilan Pemrograman Out-1 untuk Waktu Kalender OFF
34
Gambar 4.1 Bentuk Fisik Alat Pengaturan Waktu Operasi Peralatan Listrik
36
Gambar 4.2 Bentuk Fisik Rangkaian
per bagian...
37
Gambar 4.3 Bentuk Fisik Rangkaian
driver
berupa Transistor
37
Gambar 4.4 Tampilan LCD untuk Pewaktuan...
39
Gambar 4.5 Tampilan LCD untuk Menu Utama dan Pilihan
Output
... 39
Gambar 4.6 Tampilan LCD untuk Waktu ON/OFF Out-1...
40
Gambar 4.7 Tampilan LCD untuk Waktu ON/OFF Out-2...
41
Gambar 4.8 Contoh Tampilan Kesalahan-kesalahan Pembacaan RTC...
43
Gambar 4.9 Tampilan Sistem Pewaktuan tanpa RTC...
55
Gambar 4.10 Tampilan Program Pewaktuan Out-1 pada LCD...
55
Gambar 4.11 Tampilan Program Pewaktuan Out-1 pada LCD...
55
Gambar 4.12 Lampu Pilot untuk tiap
Output...
56
Gambar 4.13 Tampilan Sistem Pewaktuan Mikrokontroler pada
7-segmen
dan LCD...
58
Gambar 4.14 Tampilan sistem Pewaktuan...
64
DAFTAR TABEL
Tabel 2.1 Konfigurasi Pin LCD M1632……..………...
9
Tabel 2.2
Function Set………..
………..
10
Tabel 2.3 Konfigurasi RTC DS12887…….……….……...
13
Tabel 4.1 Hasil Tampilan detik pada LCD...
42
Tabel 4.2 Data Hasil Percobaan dengan Program Waktu yang berbeda....
57
Tabel 4.3 Perbandingan Data Waktu Tiap Sistem Pada LCD...
59
Tabel 4.4 Perbandingan Jumlah Detik tiap Sistem...
61
Tabel 4.5 Perbandingan Pergeseran Data Waktu Sistem Pewaktuan
Mikrokontroler dengan Sistem Pewaktuan sesungguhnya...
63
Tabel 4.6 Perbandingan Hasial Pengukuran Transistor...
64
Tabel 4.7 Hasil Pengukuran Catu Daya...
66
BAB I
PENDAHULUAN
1.1. LATAR BELAKANG
Perkembangan ilmu pengetahuan dan teknologi yang begitu pesat telah
mampu menghasilkan karya yang mendukung dan memudahkan pekerjaan manusia
terutama setelah ditemukannya bahan semikonduktor yang akhirnya telah
menghantar manusia pada era industri elektronika dan komputer. Manusia selalu
ingin semua serba praktis dan otomatis untuk memudahkan dalam pekerjaannya.
Misalnya, dengan menggunakan
remote
, orang dapat mengatur peralatan listrik
yang ada dirumah. Mulai dari membuka pintu garasi, pintu pagar hingga
mematikan atau menghidupkan lampu dan sistem lain yang ada.
fungsi sistem ini bagi peralatan-peralatan listrik rumah tangga yang membutuhkan
pengendalian secara terprogram.
1.2. TUJUAN
Tugas akhir ini bertujuan untuk menghasilkan suatu sistem pengaturan
waktu pengoperasian peralatan listrik yang dapat diprogram secara
real time
(menggunakan RTC) untuk waktu ON dan OFF dan saklar
(relay)
yang terhubung
ke beban (220V) seperti alat pemanas, lampu, kipas angin dll.
1.3. BATASAN MASALAH
Pada penulisan Tugas Akhir ini penulis memfokuskan pada pengaplikasian
mikrokontroler yang digabung dengan komponen pendukung lain seperti RTC dan
LCD untuk membangun sebuah sistem pengendali yang dapat diprogram.
Pemrogramannya menggunakan mikrokontroler AT89S8252 sebagai basis utama
pengontrolan. Penulis membuat beban sebanyak 2 buah yaitu kipas angin dan
lampu, yang dapat dikendalikan dan diprogram dan pemrograman tiap beban
berbeda-beda untuk kondisi ON dan OFF nya. Sistem pewaktuan yang akan
dipakai adalah sistem pewaktuan 24 jam sedangkan daya total maksimal untuk
beban yang dikendalikan adalah sebesar 600 Watt.
1.4. METODOLOGI PENELITIAN
1.
Studi literatur
Tahap ini dilakukan dengan membaca makalah-makalah, buku acuan
dan hasil-hasil penelitian yang berkaitan dengan pemrograman
mikrokontroler dan cara kerja komponen-komponen pendukung
lainnya.
2.
Perancangan sistem
Dalam perancangan ini penulis melakukan perancangan baik dari segi
perangkat keras maupun dari segi perangkat lunak yaitu bahasa mesin
mikrokontroler AT89S8252.
3.
Implementasi rancangan
Sistem diintegrasikan secara keseluruhan
4.
Pengujian sistem
Meliputi pengujian sistem secara nyata dengan memprogramkan waktu
ON dan OFF pada masing-masing beban.
1.5. SISTEMATIKA PENULISAN
Sistematika penulisan tugas akhir ini terbagi menjadi lima bab yang
disusun sebagai berikut:
BAB I. PENDAHULUAN
BAB II. DASAR TEORI
Bab ini berisi tentang dasar teori komponen-komponen yang
akan digunakan dalam penelitian .
BAB III. RANCANGAN PENELITIAN
Bab ini berisi tentang diagram blok dan penjelasan cara kerja
secara singkat rancangan perangkat keras dan perangkat lunak.
BAB IV. HASIL PENELITIAN DAN PEMBAHASAN
Bab ini berisi tentang hasi dan pengamatan kerja dari perangkat
keras dan perangkat lunak yang telah dibuat.
BAB V. PENUTUP
BAB II
LANDASAN TEORI
Mikrokontroler adalah salah satu dari bagian dasar dari suatu sistem
komputer. Banyak contoh atau jenis dari mikrokontroler yang ada sekarang ini dan
salah satunya adalah Mikrokontroler Atmel AT89S8252. Misalnya yang digunakan
oleh Angkatan Bersenjata (TNI) untuk mendeteksi kecepatan peluru atau pada
suatu sistem pengaman mobil yang pintar. Mikrokontroler tersebut berperan
sebagai otak atau pusat dari seluruh proses yang ingin dilakukan. Dengan adanya
mikrokontroler maka prosesnya semakin lebih mudah. Salah satu aplikasi lain dari
Mikrokontroler Atmel AT89S8252 dapat dilihat pada perancangan yang akan
dibuat ini. Dengan piranti ini diharapkan lebih memudahkan pengguna dalam
mengoperasikan alat-alat listik yang dimiliki.
2.1. MIKROKONTROLER
1.
Kompatibel dengan produk MCS-51
2.
8K byte
In-System ProgramMable Downloadable Flash Memory
dengan ketahanan siklus 1,000 Write/Erase.
3.
2K byte EEPROM
4.
2,7V – 6V rentang operasional
5.
Dapat bekerja dengan X-Tal 0 Hz– 24 MHz
6.
Tiga level penguncian memori secara program
7.
256 x 8 bit Internal RAM
8.
32 buah parallel I/O
9.
3 buah
Timer/Counter
16 bit
10. 9 buah sumber interupsi
11.
Programable Serial
UART
Chanel
12. SPI
Serial Interface
13.
Low Power Idle
dan
Mode Power Downr
2.1.1. Organisai Memori Mikrokontroler Atmel 89S8252
Gambar 2.1. Peta Memori Data Internal
Semua
byte
yang berada pada 128 bawah dapat diakses, baik secara
langsung maupun tidak langsung dan 128 bagian atas hanya dapat diakses dengan
pengalamatan tidak langsung [2]. Lokasi memori pada RAM terdiri atas :
-
32 byte lokasi yang dialamati per-byte (00h-1Fh), lokasi itu dibagi menjadi
4 register bank (bank 0 – bank 3) dengan setiap bank terdiri atas 8
byte/register (R0-R7).
-
Pada RAM juga terdapat lokasi memori yang dapat dialamati per-bit
maupun per-byte tergantung dari instruksi. Lokasi alamatnya berada pada
20h-2Fh (8 bit x 16 byte = 256 bit).
-
Sisa (lokasi 30h-7Fh dan 80h-FFh) merupakan lokasi memori untuk
keperluan umum (
General Purpose RAM
).
-
Pada SFR tiap lokasi memori mempunyai fungsi spesifik untuk
memanfaatkan fitur yang terdapat pada mikrokontroler.
Selain
memiliki
Special Function Register
(SFR) seperti halnya pada
MCS-51, mikrokontroler Atmel AT89S8252 memiliki tambahan SFR. Hal ini tidak lain
karena terdapatnya tambahan fitur pada mikrokontroler ini. Jadi tambahan SFR ini
adalah SFR untuk mengontrol alat tambahan pada mikrokontoler Atmel
AT89S8252. SFR tambahan meliputi T2CON (
Timer
2
Register
dengan alamat
0C8H), T2MOD (
Timer
2
Mode
dengan alamat 0C9H), WMCON (
Watchdog and
Memory Control Register
dengan alamat 96H), SPCR (SPI
Contol Register
dengan
alamat D5H), SPSR (SPI
Status Register
dengan alamat AAH), SPDR (SPI
Data
Register
dengan alamat 86H) [1].
Berbeda dengan mikrokontroler standard MCS-51, mikrokontroler Atmel
AT89S8252 ini dilengkapi dengan data memori yang berupa
Elctrically Erasable
Programable Read Only Memory
(EEPROM) sebesar 2 K byte.
Jika bit ini berlogika rendah maka penulisan ke EEPROM internal sedang
berlangsung dan sebaliknya bila bit ini telah berlogika tinggi maka proses
penulisan selanjutnya baru dapat dimulai [1].
2.2. LIQUID CRYSTAL DISPLAY (LCD)
Liquid Crystal Display
(LCD) digunakan untuk menampilkan bentuk dari
tulisan yang dapat berupa huruf, angka, dan tanda baca. LCD dikemas dalam suatu
modul siap pakai. LCD yg digunakan adalah M1632,
interface
atau teknik
antarmuka dapat dilakukan dengan sistem 4 bit maupun 8 bit. Memiliki layar
tampilan yang terdiri atas 2 baris dan 16 kolom. Total karakter yang dapat
ditampilkan dalam waktu yang bersamaan adalah 32 karakter. LCD ini memiliki 16
pin dengan konfigurasi yang ditunjukan pada tabel dibawah ini.
Tabel 2.1 Konfigurasi Pin M1632
No. Simbol
Fungsi
1 V
CCMasukan power +5V
2 V
SSPin ground
3 V
LCDTegangan masukan pengontrol kontras layar LCD
4
RS
Pemilihan pengiriman data atau instruksi
5
R/W
Pin masukan Baca dan Tulis
6
E
Masukan untuk trigger LCD (tanda ada data yang akan ditulis)
7-14 D0-D7 Jalur
data
2.2.1. Antarmuka LCD
LCD M1632 dapat dipakai dengan sistem 4 bit maupun 8 bit. Dalam
pemakaian umum, sistem 4 bit lebih sering digunakan karena lebih ringkas
rangkaiannya dan mengurangi kerumitan perkabelan. Berikut cara mengatur lebar
data, jumlah baris dan ukuran font karakter:
Tabel 2.2 Function set
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0
0 0 0 1 DL
N F X X
Keterangan:
X : Don’t care
DL: 1, Lebar data interface 8 bit ( DB7 s/d DB0)
0, Lebar data interface 4 bit ( DB7 s/d DB4)
Ketika menggunakan lebar data 4 bit, data harus dikirimkan dua kali [3].
N: 0 = Display 1 baris
1 = Display 2 baris
F: 0 = Jumlah titik per huruf 5x7
1 = Jumlah titik per huruf 5x10
Teknik antarmuka sistem 8 bit ini seperti pada Gambar 2.3.
Pada dasarnya akses dari mikrokontroler ke Modul LCD ini terdiri dari 4
jenis sebagai berikut:
- Pengiriman
Instruksi Register
Proses ini dilakukan untuk mengirimkan perintah-perintah ke LCD seperti
geser kiri, geser kanan, home posistion dan lain-lain.
- Pembacaan
Address Counter dan Busy Flag
Proses ini dilakukan untuk membaca alamat dari DDRAM atau posisi dari
karakter yang akan ditampilkan ke modul LCD atau membaca
Busy Flag
sehingga microcontroller dapat mengetahui bahwa LCD siap untuk menerima
data atau perintah lebih lanjut.
- Pengiriman
Data Register
Proses ini dilakukan untuk mengirim karakter yang akan ditampilkan di layar
LCD dalam bentuk ASCII.
- Pembacaan
Data Register
Proses ini dilakukan untuk membaca karakter yang tersimpan pada DDRAM
atau yang sudah tampil pada LCD.
2.2.2. Bentuk Karakter LCD
Gambar 2.4. Bentuk Karakter LCD
2.3. REAL TIME CLOCK (RTC)
Real Time Clock
adalah merupakan komponen utama dari sistem pewaktu
nyata yang berfungsi sebagai sebuah rangkaian jam digital yang tetap bekerja
selama 10 tahun walaupun
power supply
tidak diaktifkan dan data-data waktu
tersimpan dalam memori yang bersifat N
on Volatile
pada IC tersebut.
Real Time
Clock
yang digunakan adalah seri DS12887.
RTC DS 12887 memiliki register yg dapat menunjukkan detik, menit, jam,
tanggal, bulan dan tahun. RTC ini didesain memiliki 128 lokasi RAM yang terdiri
dari 15
byte
untuk data waktu serta kontrol, dan 113
byte
sebagai RAM yang dapat
digunakan sebagai RAM pada umumnya. RTC DS 12887 menggunakan bus yang
termultipleks untuk menghemat pin. RTC ini juga dilengkapi dengan pin IRQ
untuk kemudahan dalam proses [4]. Gambar dan tabel berikut ini menjelaskan
fungsi masing-masing pin yang ada :
U17 DS12887 4 5 6 7 8 9 10 11 1 13 14 15 17 18 19 23 24 12 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 MOT CS AS R/W DS RST IRQ SQW VC C G ND
Gambar 2.5 IC RTC DS12887
Tabel 2.3 Konfigurasi RTC DS12887
Nama Pin
Keterangan
MOT
Motorola / Intel timing
AD0-AD7
Bus DATA / ADDRESS yang termultipleks
CS Chip
Select
AS Address
Strobe
R/W Write
Strobe
DS Data
Strobe
RESET Reset
IRQ
Interrupt Request Output
SQW
Keluaran Sinyal Kotak
VCC
Catu tegangan +5 volt
Gnd Ground
2.4. PAPAN PENGUNCI (
KEYPAD)
Keypad
sering digunakan sebagai suatu input pada beberapa peralatan yang
berbasis mikroprosessor atau mikrokontroller.
Keypad
sesungguhnya terdiri dari
sejumlah saklar, yang terhubung sebagai baris dan kolom dengan susuan seperti
yang ditunjukkan pada gambar 2.5 [5].
Keypad
4x3 di sini adalah sebuah
keypad
matrix dengan susunan empat baris dan tiga kolom yang tidak menggunakan
common.
Gambar 2.6. Konstruksi Keypad
2.5. TRANSISTOR
di satu terminalnya mengatur arus yang lebih besar yang melalui 2 terminal lainnya
[6].
Salah satu fungsi aplikasi dari transistor adalah sebagai saklar (
switching
)
dan transistor yang digunakan adalah 2N2222. Karena berfungsi sebagai saklar
maka transistor dioperasikan pada dua daerah titik kerja, dengan tujuan
menghasilkan dua kondisi ON dan OFF, yaitu daerah jenuh (saturasi) dan daerah
tersumbat (
cut off
). Pada daerah jenuh (saturasi) transistor berada dalam keadaan
saklar ON. Hal ini disebabkan tahanan dan tegangan antara kolektor dan emiter
mendekati nol, sehingga kutub kolektor dan emiter akan terhubung singkat (
short
circuit
) yaitu sebesar tegangan transistor yang dipakai.
Pada daerah tersumbat (
cut off
), transistor berada dalam keadaan OFF. Hal
ini terjadi karena besar resistansi antara kolektor dan emitor mendekati tak
terhingga sehingga membentuk suatu rangkaian terbuka (
open circuit
).
Arus dalam rangkaian mengalir melalui kaki kolektor menuju emitor seperti
Gambar 2.7. Arus mengalir melalui terminal positif mengelilingi rangkaian dan
kembali ke terminal negatif. Arus mengalir melewati transistor menurut tanda
panah dari kaki emitor pada simbol diagram rangkaian.
b c
e
A r u s
Sewaktu transistor berfungsi sebagai saklar, transistor akan mengalirkan
atau menghentikan arus. Transistor tersebut bekerja pada daerah
cut-off
dan jenuh
(saturasi). Rangkaian transistor saklar dapat dilihat pada gambar 2.8.
Gambar 2.8. Transistor sebagai saklar
Dengan menggunakan hokum Kirchof tegangan, maka besarnya arus kolektor (Ic)
dapat dicari yaitu:
-Vcc + VR
C+ V
CE= 0
VR
C= Vcc- V
CEI
C.R
C= Vcc - V
CEI
CRc
V
Vcc
−
CE=
……….………(2.1)
Pada keadaan jenuh maka tegangan antara kaki kolektor dan emitter (
V
CE) dan arus
kolektor adalah sebagai berikut:
V
CE= V
CE(sat)……….……….(2.2)
I
C(sat)
Rc
sat
V
Vcc
−
CE(
)
=
……….………..(2.3)
Karena transistor bekerja pada keadaan jenuh (
V
CEmendekati 0 volt) maka nilai
I
C(sat)
Rc
Vcc
=
……….……….(2.4)
Sedangkan arus basis dalam keadaan jenuh yaitu:
I
B(min)
β
)
(
sat
Ic
=
……….………..(2.5)
Transistor bekerja dalam keadaan jenuh apabila
I
B> I
B(min). Besar arus
I
Bdapat
dicari dengan menggunakan hukum Kirchof tegangan yaitu sebagai berikut:
B
-V
B+ VR
B BB+ V
BE= 0
VR
B=
V
B-
V
BEI
BBB BE B
R
V
V
−
=
……….………….………...(2.6)
Transistor dalam daerah
cut-off
yaitu:
I
B=
B0………..(2.7)
V
CE=
Vcc
……….………...(2.8)
2.6. RELAY
coil relay
dan bila arus sudah tidak ada lagi, maka
relay
akan kembali ke keadaan
semula. Jenis
relay
biasanya disebut sebagai :
-
Relay
normal
open
(NO) atau
relay
normal terbuka, yang artinya bila pada
coil
relay
tidak ada arus yang mengalir, maka keadaan saklar kontak
relay
terbuka.
BAB III
PERANCANGAN SISTEM
Pengaturan waktu operasi peralatan listrik secara otomatis ini dapat mengatur
peralatan-peralatan listrik seperti alat pemanas, lampu dan lain sebagainya secara
real time
untuk waktu ON dan OFF. Penjadwalan ini didasarkan atas pemrograman
waktu ON dan OFF peralatan litstrik melalui
keypad
kemudian data-data tersebut
dibandingkan dengan data pewaktuan RTC. Bila waktu ON yang diprogram sama
dengan waktu pada RTC maka
relay
akan ON untuk menghidupkan peralatan listrik
dan bila waktu OFF yang diprogram sama dengan waktu pada RTC maka
relay
akan OFF. Peralatan listrik yang bisa diatur waktu ON dan OFF sebanyak 2 buah (2
Jalur) dimana penjadwalan peralatan listrik tersebut dapat berdasarkan : Jam-
Hari-Tanggal-Bulan.
3.1. BLOK DIAGRAM
Blok diagram dari pengaturan waktu operasi peralatan listrik secara
otomatis dapat dilihat pada Gambar 3.1. Mikrokontroler merupakan basis utama
untuk melakukan pengaturan. Proses pemasukan data dan pengesetan dilakukan
melalui
keypad
dan untuk tampilan pewaktuan digunakan LCD 16 x 2 baris. Untuk
waktu ON dan OFF diprogram dengan menggunakan
keypad
. Data-data
pemrograman akan disimpan di EEPROM. Mikrokontroler akan membaca
register-register pewaktuan di RTC kemudian menampilkanya di LCD. Data pembacaan
register-register pewaktuan akan dibandingkan dengan data-data pemrograman yang
meng-ON/OFF-kan
relay
melalui transistor (
Driver
). Apabila transistor pada
keadaan ON maka
relay
akan aktif dan menghubungkan tegangan 220V ke beban
yang sudah dihubungkan ke sistem.
Gambar 3.1. Blok Diagram Sistem
3.2. PERANCANGAN PERANGKAT KERAS (HARDWARE)
Perangkat keras (
Hardware
) merupakan komponen-komponen pendukung
yang dibangun untuk dapat melakukan fungsi-fungsi yang diinginkan. Pada
perancangan ini, perangkat keras terdiri dari beberapa komponen yaitu :
Mikrokontroler AT89S8252,
Keypad
, RTC DS12887, Unit Penampil (LCD), dan
3.2.1. Mikrokontroler Atmel AT 89S8252
Sistem pengendali yang digunakan pada sistem ini berbasis Mikrokontroler
AT89S8252. Mikrokontroler ini merupakan pengembangan dari mikrokontroler
standard MCS-51. Adapun fungsi-fungsi port yang digunakan pada sistem adalah
sebagai berikut:
Port 0 digunakan untuk mengakses RTC. Mikrokontoler akan melakukan
pembacaan (
Read
) RTC dan penulisan (
Write
) ke RTC untuk data-data pewaktuan.
Jalur pembacaan dan penulisan sama-sama dalam port 0. Sinyal kontrol yang
digunakan adalah P3.6 (WR), P3.7 (RD) dan sinyal ALE.
Port 1 digunakan untuk mengakses LCD dengan teknik antarmuka 8 bit. Port
yang dipakai adalah P1.0 – P1.7 untuk saluran data dan untuk sinyal kontrol adalah
P3.5 sebagai
pulsa trigger
(E), P3.4 sebagai
register selection
sinyal (RS).
Port 2 digunakan untuk masukan dari papan pengunci (Keypad). Port yang
digunakan adalah P2.0 – P2.6. Port 3 digunakan untuk mengakses
relay
melalui
port P3.0 dan P.3.1.
3.2.2. Sistem Papan Pengunci (
KEYPAD
)
Sistem papan pengunci (
Keypad
) adalah suatu papan dengan tombol-tombol
yang mewakili karakter-karakter atau numeris.
Keypad
yang digunakan pada
perancangan ini adalah
keypad
numeris yang terdiri atas 12 tombol yang mewakili
angka-angka 0-9, tanda pagar (#) dan tanda bintang (*) yang tersusun dalam bentuk
deretan 3 x 4, yang satu dan yang lain saling terhubung pada tiap-tiap baris dan
Gambar 3.2 Hubungan Mikrokontroler Dengan Keypad
3.2.3. Sistem Penunjuk Waktu (RTC)
Sistem penunjuk waktu merupakan salah satu fasilitas yang terdapat pada
peralatan ini. Penunjukan waktu berupa jam, hari dan kalender yang dikendalikan
oleh RTC DS 12887 (
Real Time Clock
). RTC DS12887 menggunakan catu daya DC
sebesar 5 Volt dimana AD0 – AD7 merupakan bus alamat dan data dua arah yang
termultipleks. Hal ini berarti bus alamat termultipleks dimana informasi alamat dan
data digabung dalam satu jalur isyarat. Siklus
bus
terdiri dari dua tingkat, mula-mula
alamat di kunci kemudian diikuti oleh data. Proses multipleks alamat atau data tidak
akan memperlambat waktu proses dari RTC karena perubahan bus dari alamat ke
data terjadi saat waktu akses register-register dalam memberikan logika tinggi ke
AS (
Address Strobe Input
). Saat perubahan dari tinggi ke rendah AS akan mengunci
alamat pada AD0 – AD7 di dalam RTC dan pada saat itu alamat harus sudah
valid
.
Pin AS pada RTC dihubungkan ke Pin ALE (
Address Latch Enale
) pada
digunakan sebagai pengunci data ke RTC. Data penulisan (
Write
) harus sudah
valid
dan dijaga kestabilannya saat transisi pulsa R/W. Pin DS (
Data Strobe Input
) juga
bisa dianggap sebagai
Read
(RD). Apabila diberikan masukan rendah pada DS maka
akan mengaktifkan keluaran pada siklus pembacaan (
Read
). Pin CS pada RTC selalu
terhubung ke
ground
, hal ini akan mengakibatkan RTC akan aktif terus dan
pengalamatan menjadi 0000H sampai 000DH pada register-register di RTC. Gambar
rangkaian RTC DS12887 diperlihatkan pada Gambar 3.3.
GND U1 8252 31 19 18 9 12 13 14 15 1 2 3 4 5 6 7 8 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 17 16 29 30 11 10 EA/VP X1 X2 RESET INT0 INT1 T0 T1 P1.0/T2 P1.1/T2X P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 RD WR PSEN ALE/P TXD RXD 24 VCC +5V 40 20 U2 DS12887 4 5 6 7 8 9 10 11 1 13 14 15 17 18 19 23 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 MOT CS AS R/W DS RST IRQ SQW 12 GND
Gambar 3.3. Hubungan Mikrokontroler Dengan RTC
3.2.4.
Driver
(Transistor)
Pada perancangan ini, transistor digunakan sebagai saklar atau
switching.
Untuk mengaktifkan transistor, kaki basis pada transistor harus mendapat tegangan.
Tegangan tersebut diperoleh dari output pada port P3.4 dan P3.5 yang
kedua
port
pada mikrokontroler tersebut diset ‘1’ sehingga menghasilkan tegangan
keluaran sebesar ±V
CC(5 Volt). Kedua transistor tersebut kemudian dihubungkan
dengan
relay
yang nantinya akan dihubungkan ke beban. Berikut ini adalah gambar
hubungan mikrokontroler dengan
driver
.
Gambar 3.4. Hubungan Mikrokontroler Dengan Driver
Untuk mengetahui besarnya arus yang mengalir pada transistor dan besarnya
resistor yang digunakan pada rangkaian di atas dapat dicari berdasarkan
datasheet
karakter transistor dengan menggunakan rumus yang sudah ada pada bab
sebelumnya yaitu:
β
C B
I
I
=
,
B BE B B
I
V
V
R
=
−
,
C CE C
I
V
Vcc
Berdasarkan
datasheet
diketahui saat I
C= 10mA, V
CE= 10V,
β
= 75. Jika dianggap
bahwa
output
dari mikrokontroler adalah sebesar 5V, sehingga dapat dicari:
mA
mA
I
I
CB
0
.
13
75
10
=
=
=
β
…
………(3.1)
Ω
=
−
=
−
=
32330
13
.
0
7
,
0
5
mA
I
V
V
R
B BE B B…………..………..(3.2)
Ω
=
−
=
−
=
200
10
10
12
mA
I
V
Vcc
R
C CE C………...(3.3)
3.2.5. Perancangan Perangkat Keras Alat
Panel kendali alat pengaturan waktu yang akan dirancang dapat dilihat pada
gambar dibawah ini:
2
1
3
Gambar 3.5 . Rancangan Perangkat Keras alat (tampak depan)
4
5
Keterangan gambar:
1)
Saklar On-Off untuk menyalakan atau mematikan alat.
2)
LCD sebagai tampilan.
3)
Keypad
untuk memasukan data.
4)
Stop kontak untuk masing-masing
Output.
5)
Lampu inditator untuk masing-masing
Output
.
3.3. PERANCANGAN PERANGAKAT LUNAK (SORTWARE)
Bahasa pemrograman merupakan sebuah perangkat lunak yang diciptakan
secara khusus untuk membuat sistem dapat berkomunikasi antara
komponen-komponen pendukung dengan komponen-komponen yang diprogram. Untuk perangkat lunak
(
Software
) menggunakan bahasa pemrograman
assembly
dari mikrokontroler.
Langkah pertama dalam perancangan perangkat lunak adalah dengan cara membuat
diagram alir terlebih dahulu.
Pada Gambar 3.7. terlihat dengan jelas diagram alir perancangan bahasa
pemrograman sistem. Hal pertama yang dilakukan adalah melakukan inisialisasi,
yakni menginisialisasikan komponen-komponen pendukung seperti LCD dan RTC.
Penginisialisasian ini adalah untuk mempersiapkan komponen pendukung tersebut
siap untuk digunakan dengan cara mengeset alamat dan register-register yang akan
3.3.1. Diagram Alir Pemrograman Perancangan Sistem
a.
Diagram utama
Gambar 3.7. Diagram utama
Gambar 3.7 merupakan diagram alir program utama dengan mekanisme
sebagai berikut :
1.
Melakukan inisialisasi
port
, inisialisasi memori dan alamat yang digunakan,
inisialisasi LCD dan RTC.
2.
Melakukan pembacaan data pewaktuan dari RTC, menyimpannya pada
alamat sementara yang sudah ditentukan dan kemudian menampilkannya
pada LCD.
3.
Bila waktu yang ditampilkan belum sesuai dengan waktu sekarang, maka
4.
Menampilkan tampilan menu utama untuk kemudian dilakukan pemilihan
keluaran (
output
) yang ingin diatur waktu ON/OFF nya.
5.
Data yang tersimpan tersebut kemudian dibandingkan data pewaktuan pada
RTC. Apabila data-data tersebut sama dengan data pewaktuan RTC yang
dimaksud, maka masing-masing keluaran akan ON/OFF pada waktu
tersebut.
b.
Diagram tampilan Menu utama
Gambar 3.8. Diagram tampilan Menu utama
Proses dari gambar diagram alir di atas akan dijelaskan sebagai berikut:
1.
Menampilkan pilihan menu yang berisi perintah untuk menekan
tombol-tombol tertentu.
2.
Melakukan pembacaan
keypad
sehingga bila tombol-tombol yang dimaksud
masing-masing
Output
. Tombol-tombol yang sudah ditentukan adalah tombol 1,
tombol 2 dan tombol 5.
3.
Saat tombol 1 ditekan, akan masuk ke menu untuk menset waktu ON/OFF
Out-1.
4.
Saat tombol 2 ditekan, akan masuk ke menu untuk menset waktu ON/OFF
Out-2.
5.
Saat tombol 5 ditekan, maka akan menampilkan data pewaktuan RTC.
c.
Diagram Set Waktu
Pada bagian ini, terlebih dahulu dilakukan pembacaan
keypad
untuk
melakukan pengesetan sesuai yang diinginkan. Saat tombol 1 ditekan, maka yang
pertama dilakukan adalah memanggil subrutin untuk menset RTC. Subrutin ini beisi
perintah untuk megubah bit UIP register A pada RTC sehingga RTC dapat ditulis.
Setelah itu data hari pada alamat yang sudah ditentukan akan dinaikan satu bit.
Langkah selanjutnya adalah memanggil subrutin
update
RTC. Subrutin ini berisi
perintah untuk menulis atau memindahkan data yang disimpan tersebut ke alamat
tertentu pada RTC sehingga data pada RTC berisi data yang telah diubah. Begitu
pula saat tombol 2, tombol 3, tombol 4, tombol bintang (*) dan tombol pagar (#)
ditekan.
d.
Diagram Perbandingan Waktu ON/OFF
Berikut adalah proses kerja dari diagram perbandingan waktu ON/OFF
masing-masing
Output
.
1.
Setelah data yang baru disimpan pada RTC, kemudian dilakukan pembacaan
RTC.
2.
Data pada RTC tersebut kemudian dibandingkan dengan data yang sudah
disimpan pada alamat tertentu yang lain yang digunakan untuk
meng-ON/OFF-kan masing-masing keluaran
.
3.
Misalnya, data yang tersimpan untuk meng-ON-kan Out-1 adalah jam 06:00,
sejalan dengan sistem pewaktuan RTC, maka Out-1 akan hidup saat data
4.
Hal yang sama juga terjadi pada Out-2 sesuai dengan waktu ONN/OFF yang
diprogram.
Gambar 3.10. Diagram Perbandingan Waktu ON/OFF
3.3.2. Perancangan Bentuk Tampilan pada LCD
Setelah diinisialisasi, kemudian dilakukan pengesetan alamat-alamat
penyimpanan data hasil pemrograman waktu dan menyimpannya di memori. Data
register-register pewaktu RTC kemudian dibaca dan ditampilkan di LCD. Yang
ditampilkan adalah data pembacaan pewaktuan detik, menit, jam, hari, tanggal,
7
Gambar 3.11. Tampilan pewaktuan pada LCD
Untuk melakukan pengesetan ulang data-data pewaktuan dilakukan dengan
membaca
keypad
. Untuk pengesetan data menit dilakukan dengan menekan tanda
pagar (#) , pengesetan data jam dengan tanda bintang (*), pengesetan data hari
dengan tombol 1, pengesetan data tanggal dengan tombol 2, pengesetan data bulan
dengan tombol 3, dan pengesetan data tahun dengan tombol 4 serta untuk
melakukan pemrograman pewaktuan (program waktu) ON dan OFF masing-masing
output
(dengan beban
relay
) dilakukan dengan menekan tombol 0 (Oper).
Apabila dilakukan pemrograman waktu ON dan OFF
relay
, pertama sekali
ditampilkan adalah menu utama. Menu utama ini adalah untuk pemilihan
output
(keluaran) yang akan diprogram. Pada perancangan ini disediakan 2 jalur dan tiap
jalur dipasang
relay
. Tampilan dari menu utama dapat dilihat pada gambar berikut:
1
-t u OGambar 3.12. Tampilan Menu Utama dan Pilihan Out 1
Setelah ditampilkan menu utama, maka
keypad
kembali dibaca dan
pemilihan pemrograman jalur dilakukan dengan penekanan tombol 1 untuk Out-1,
bila ditekan tombol 0 pada saat tampilan ini maka akan menampilkan menu
-u
O t 2
Gambar 3.13
.
Tampilan Pilihan Out-2 Dan Pilihan Keluar Menu
Penekanan tombol 2 adalah untuk memilih jalur 2 (Out-2). Untuk berpindah
ke unit penampilan waktu yang diakses dari RTC dilakukan dengan penekanan
tombol 5 dan kemudian akan kembali ke awal seperti tampilan pada Gambar 3.11
Berikut ini adalah tampilan pemrograman waktu untuk
Out-1 saat tombol 1
ditekan ketika pada waktu penampilan menu utama.
u t - 1
O
Gambar 3.14
.
Tampilan Pemrograman Out-1 Untuk Waktu Jam ON
Pengesetan waktunya dilakukan dengan penekanan
keypad
pada tanda pagar
(#) untuk mengeset waktu menit dan tanda bintang (*) untuk mengeset waktu jam.
Pengesetan detik pada sistem ini tidak dilakukan. Untuk masuk ke menu
pemrograman waktu kalender, dapat dilakukan dengan penekanan tombol 0. Bila
ditekan tombol 0 maka tampilan pemrograman Out-1 akan seperti pada gambar
berikut.
Untuk mengeset hari maka dilakukan dengan penekanan tombol 1 sampai
tombol 7. Tombol 1 adalah untuk waktu pengesetan hari Minggu dan seterusnya
sampai tombol 7 untuk waktu pengesetan pada hari Sabtu. Untuk melakukan
pengesetan data waktu tanggal dan bulan pada pemrograman Out-1 ini dilakukan
dengan penekanan tombol pada
keypad
. Tanda pagar (#) adalah untuk mengeset
waktu tanggal dan tanda bintang (*) untuk mengeset data waktu bulan. Kalau
ditekan lagi tombol 0 maka akan menampilkan menu pemrograman Out-1 untuk
waktu OFF. Berikut adalah tampilan dari pemrograman waktu OFF untuk Out-1.
u - 1
O t
Gambar 3.16
.
Tampilan Pemrograman Out-1 Untuk Waktu Jam OFF
Pemrograman data waktu
Jam OFF pada Out-1 ini sama saja caranya seperti
pada pemrograman waktu ON pada Out-1 seperti yang sudah dijelaskan
sebelumnya. Untuk beralih ke tampilan pemrograman data waktu tanggal dan bulan
pada kondisi OFF Out-1 dilakukan dengan penekanan tombol 0. Setelah di tekan
tombol 0, tampilan akan berubah seperti pada gambar berikut ini.
Untuk mengeset waktu ON/OFF untuk Out-2 caranya adalah sama dengan
cara untuk mengeset waktu ON/OFF untuk Out-1. Hasil pemrograman tiap jalur
untuk waktu ON dan OFF disimpan di memori (EEPROM).
Pada keadaan awal kondisi tiap jalur berada pada kondisi OFF karena belum
diprorogram pewaktuannya. Setelah dilakukan pemrograman waktu ON dan OFF
maka dibandingkan data-data pemrograman tiap jalur dengan pembacaan
mikrokontroler melalui pewaktuan RTC. Apabila sama waktu ON di pembacaan
waktu RTC dan di pemrograman waktu pada jalur /
Out-1 yang sudah dilakukan
sebelumnya maka jalur 1 akan meng-ON kan
relay
, dan sebaliknya. Untuk Out-2,
pembandingan waktu antara pembacaan RTC dan pemrograman waktu sama saja
BAB IV
HASIL DAN PEMBAHASAN
Pada bab ini akan ditunjukkan beberapa pengujian dan pengamatan yang
telah diambil, beserta pembahasannya untuk mengetahui kesesuaian alat yang dibuat
dengan alat yang telah dirancang. Pengujian meliputi hasil kerja alat secara
keseluruhan.
4.1
Hasil Akhir Perancangan
Dari perakitan perangkat keras dan pemrograman perangkat lunak telah
dihasilkan suatu peralatan untuk mengatur waktu ON/OFF dari alat listrik yang akan
digunakan, seperti ditunjukkan pada Gambar 4.1.
Gambar 4.1
. Bentuk fisik Alat Pengaturan Waktu Operasi
Peralatan Listrik
Sesuai dengan perancangan, sistem dari alat ini terbagi menjadi :
Rangkaian yang terdiri atas mikrokontroler AT89S8252 berfungsi sebagai
DS12887, catu daya dan
Keypad
serta rangkaian
driver
yang berupa transistor.
Bentuk fisik rangkaian dapat dilihat pada Gambar 4.2 dan 4.3
1
2
c
b
a
3
Gambar 4.2.
Bentuk Fisik rangkaian per bagian.
(1)
Display unit
yang berupa LCD.
(2)
Keypad
(3) C
ontrol
unit(a), catu daya(c) dan
Real Time clock
(b)
Gambar 4.3.
Bentuk Fisik rangkaian
driver
berupa transistor.
4.2
Pengamatan Sistem
4.2.1 Cara Menjalankan Alat Pengaturan waktu operasi peralatan listrik
Sebelum melakukan pengujian alat, terlebih dahulu penulis menjelaskan tata
cara pengoperasian alat yang dirancang. Adapun prosedurnya adalah sebagai
1.
Hubungkan sistem dengan tegangan 220 V kemudian tekan ‘
Power
’ untuk
meng-ON kan sistem. Sistem akan menampilkan data-data pewaktuan detik,
menit, jam, hari, tanggal, bulan dan tahun. Data pewaktuan ini adalah data
pewaktuan yang dibaca mikrokontroler dari RTC.
2.
Untuk melakukan pengesetan pewaktuan dilakukan dengan penekanan
tombol pada kepad. Berikut ini dijelaskan tombol-tombol yang digunakan.
-
Tanda pagar (#) adalah untuk melakukan pengesetan ulang untuk data
menit.
-
Tanda bintang (*) adalah untuk melakukan pengesetan ulang untuk data
jam.
-
Tombol 1 adalah untuk melakukan pengesetan ulang untuk data hari.
-
Tombol 2 adalah untuk melakukan pengesetan ulang untuk data tanggal
-
Tombol 3 adalah untuk melakukan pengesetan ulang untuk data bulan
-
Tombol 4 adalah untuk melakukan pengesetan ulang untuk data tahun.
Tombol 0 (Oper) adalah untuk masuk ke menu utama pemrograman waktu ON/OFF
nya beban (Peralatan elektronis).
4.2.2 Pengujian Kerja Sistem
Untuk mengetahui tingkat keberhasilan kerja sesuai dengan hasil
perancangan, maka dapat dilakukan pengujian dalam penekanan
keypad
untuk
melihat hasil tampilan pada LCD. Hasil pengujian dapat dilihat pada lampiran 1
Berdasarkan hasil pengamatan,
keypad
dapat bekerja dengan baik sesuai
dengan yang diinginkan. Tidak terjadi kesalahan dalam pembacaan tombol yang
ditekan saat melakukan
scanning
keypad
maupun data hasil pembacaan yang
ditampilkan pada LCD.
4.2.3 Pengamatan Kerja Alat Keseluruhan
Setelah
scanning keypad
bekerja dengan baik, maka dapat dilakukan
pengujian secara keseluruhan dari sistem.
Sesaat setelah
power
di ON-kan, akan muncul tampilan seperti pada
Gambar 4.4
Pengesetan menit dilakukan dengan menekan tanda pagar (#) , pengesetan jam
dengan tanda bintang (*),pengesetan hari dengan tombol 1, pengesetan tanggal
dengan tombol 2, pengesetan bulan dengan tombol 3, dan pengesetan tahun dengan
tombol 4 serta untuk melakukan pemrograman pewaktuan tiap keluaran (
output
)
dilakukan dengan menekan tombol 0 (Oper). Saat tombol 0 (Oper) ditekan, akan
muncul seperti pada Gambar 4.5a
Gambar 4.4.
Tampilan LCD untuk pewaktuan.
a
a
b
Penekanan tombol 1 untuk memilih Out-1. Bila ditekan tombol 0 maka akan
muncul seperti tampilan Gambar 4.4b. Penekanan tombol 2 untuk memilih Out-2.
Dan penekanan tombol 5 akan kembali ke tampilan pewaktuan (Gambar 4.4)
Pengujian selanjutnya adalah dengan memprogram pewaktuan tiap keluaran
(
output
) dan pewaktuan yang diisikan ditampilan pada LCD seperti Gambar 4.6.
Out-1 diprogram untuk waktu ON pada jam 08:00 hari Senin Tanggal 01 September
dan waktu OFF pada jam 10:00 hari Senin Tanggal 1 September. Sedangkan pada
gambar 4.7, Out-2 diprogram untuk waktu ON pada jam 07:00 hari Selasa Tanggal
02 September dan waktu OFF pada jam 08:15 hari Selasa Tanggal 02 September.
Pembandingan waktu untuk hari, tanggal dan bulan pada pengujian ini diberlakukan
(Y). Dengan demikian, sesuai perjalanan pewaktuan RTC maka lampu pilot yang
terhubung ke
relay
pada tiap
output
akan ON dan OFF tepat dengan waktu yang
sudah diprogram.
Gambar 4.7.
Tampilan LCD untuk waktu ON/OFF Out-2.
Namun hal yang memegang peranan penting disini adalah perjalanan
pewaktuan RTC yang dikontrol dan dibaca oleh mikrokontroler. Bila terjadi
kesalahan pada pemrograman dan atau pembacaan pewaktuan RTC, maka sistem ini
tidak dapat bekerja dengan baik dan dapat dikatakan belum mencapai sasaran. Pada
pembuatan alat ini, RTC tersebut mengalami masalah sehingga tidak dapat
digunakan.
Gambar 4.8 adalah contoh hasil tampilan pewaktuan RTC pada layar LCD
dan di sini dapat dilihat adanya kesalahan. Hari, tanggal, bulan, tahun serta jam,
menit dan detik belum berjalan seperti yang diharapkan. Data-data yang tampak
pada layar LCD berubah dengan cepat sehingga sedikit menyulitkan dalam
melakukan pengamatan. Ini bisa terjadi karena adanya kesalahan pada pembacaan
dan atau pada pemrograman pewaktuan. Hambatan-hambatan lain yang terjadi saat
melakukan pengamatan yaitu pada saat alat ini di-ON-kan, mikrokontroler
seakan-akan tidak dapat membaca data pada RTC sehingga hasil tampilan pada LCD adalah
Data hasil pembacaan RTC juga selalu berubah-ubah antara pengamatan
yang satu dengan yang lainnya. Kesalahan-kesalahan yang terjadi dapat dilihat pada
tabel berikut:
Tabel 4.1.
Hasil tampilan Detik pada LCD
Tampilan Detik pada LCD
No
Yang diharapkan
(ASCII)
Yang terjadi
(ASCII)
1
00 00110000
00110000
00 00110000
00110000
2
01
00110000 00110001
01
00110000 00110001
3
02
00110000 00110010
02
00110000 00110010
4
03
00110000 00110011
03
00110000 00110011
5
04
00110000 00110100
04
00110000 00110100
6
05
00110000 00110101
0<
00110000 00111100
7
06
00110000 00110110
0=
00110000 00111101
8
07
00110000 00110111
0>
00110000 00111110
9
08
00110000 00111000
0?
00110000 00111111
10
09
00110000 00111001
0:
00110000 00111010
Pada tabel ini, data yang diambil adalah data kesalahan yang paling sering
muncul dan hanya diambil
sampling
untuk data detik. Pada tabel tersebut dapat
dilihat bahwa tampilan angka 0-4 tidak terjadi perubahan pada kode ASCII yang
akan ditampilkan pada LCD, sedangkan untuk tampilan angka 5-9 terjadi perubahan
pada kode ASCIInya. Misalnya, data yang seharusnya muncul adalah “05” tetapi
pada LCD akan muncul “0<”. Jika dilihat berdasarkan data ASCIInya, perubahan ini
terjadi karena
increament
atau penjumlahan 1 bit sebanyak 7 kali. Untuk lebih
jelasnya dapat dilihat pada kode ASCII masing-masing data yaitu ‘05’ = 00110000
00110101 sedangkan ‘0<’= 00110000 00111100. Begitu pula yang terjadi pada data
‘06’ dan seterusnya. Berdasarkan pengamatan, data-data tersebut akan mengalami
Gambar 4.8.
Contoh Tampilan Kesalahan-kesalahan Pembacaan
RTC.
Untuk mengamati apakah
error
yang terjadi adalah karena kesalahan dalam
pembacaan RTC dan atau pada pemrograman, berikut ini adalah proses
pemrograman tiap subrutin pada RTC. Proses pemrograman ini mengikuti teori yang
ada dan sejalan dengan prosedur yang semestinya.
4.2.4. Pengamatan Sistem RTC DS12887
4.2.4.1. Subrutin Sistem Penunjuk Waktu
Cara pembacaan detik, menit,jam, hari, tanggal, bulan dan tahun adalah
dengan mengatur register-register yang ada pada RTC. Sebelum melakukan
pembacaan data-data tersebut di atas, terlebih dahulu RTC diinisialisasi. Berikut
adalah penggalan program yang dipergunakan untuk mengaktifkan atau
menginisialisasi RTC DS12887.
1.
INIT_RTC:
MOV
A,#00100000B
Pada proses inisialisasi RTC ini, register A berada pada alamat 000AH dan
akan diisikan dengan data 00100000B. Hal ini berarti bahwa RS0 sampai RS3 =
‘0000’, DV0 sampai DV2 = ‘010’ dan UIP = ‘0’. Kombinasi DV0,DV1,DV2 = 010
pada register A adalah untuk mengaktifkan osilator. Untuk register B berada pada
alamat 000BH dan akan diisikan dengan data 00010010B. Hal ini berarti DSE = ‘0’,
24/12 = ‘1’, DM = ‘0’, SQWE = ‘0’, UIE = ‘1’, AIE = ‘0’, PIE = 0 dan SET = ‘0’.
Data yang diisikan ke register ini adalah untuk mempersiapkan RTC pada mode
data BCD dan sistem pewaktuan berdasarkan 24 jam.
1.
READ_RTC:
MOV
DPTR,#DETIK
2.
MOX
A,@DPTR
3.
MOV
DATA_DETIK,A
4.
MOV
DPTR,#MENIT
5.
MOVX A,@DPTR
6.
MOV
DATA_MENIT,A
7.
MOV
DPTR,#HOURS
8.
MOVX A,@DPTR
9.
MOV
DATA_HOURS,A
10.
MOV
DPTR,#DAY
11.
MOVX A,@DPTR
12.
MOV
DATA_DAY,A
13.
MOV
DPTR,#DATE
14.
MOVX A,@DPTR
15.
MOV
DATA_DATE,A
16.
MOV
DPTR,#BULAN
17.
MOVX A,@DPTR
18.
MOV
DATA_BULAN,A
19.
MOV
DPTR,#TAHUN
20.
MOVX A,@DPTR
21.
MOV
DATA_TAHUN,A
22.
RET
Potongan program diatas (READ_ RTC) adalah untuk membaca
register-register pewaktuan di RTC. Seperti untuk membaca data detik, terlebih dahulu
DPTR diisikan dengan alamat detik (0000H) kemudian memindahkan data yang
dipindahkan kemudian dipindahkan lagi ke DATA_DETIK untuk diproses atau
ditampilkan ke unit penampil nantinya. Cara pembacaan data detik ini sama saja
dengan pembacaan data untuk menit, jam, hari, tanggal, bulan dan tahun.
4.2.4.2. Subrutin Pengesetan (UPDATE) Pewaktuan
Untuk melakukan pengesetan (UPDATE) RTC sesuai dengan data-data
waktu yang diinginkan maka register A pada RTC harus diubah terlebih dahulu.
Pengubahan ini dilakukan dengan pengesetan bit UIP pada register A seperti pada
potongan program UPDATE pada baris pertama kemudian mengeset data-data
pewaktuan sesuai dengan yang diinginkan.
1.
UPDATE: MOV
A,#10000000B
2.
MOV
DPTR,#REG_A
3.
MOVX
@DPTR,A
4.
RET
Setelah dilakukan pengesetan, maka data-data pengesetan tersebut disimpan
kembali ke alamat register-register pewaktu RTC. Seperti pada potongan program
UPDATE_RTC, pada baris pertama data jam (DATA_HOURS) dipindahkan
terlebih dahulu ke akumulator kemudian data akumulator disimpan ke alamat
register jam (0004H). Proses untuk register-register yang lain dilakukan dengan cara
yang sama.
1.
UPDATE_RTC: MOV
A,DATA_HOURS
2.
MOV
DPTR,#HOURS
3.
MOVX @DPTR,A
4.
MOV
A,DATA_MENIT
5.
MOV
DPTR,#MENIT
7.
MOV
A,DATA_DAY
8.
MOV
DPTR,#DAY
9.
MOVX @DPTR,A
10.
MOV
A,DATA_DATE
11.
MOV
DPTR,#DATE
12.
MOVX @DPTR,A
13.
MOV
A,DATA_BULAN
14.
MOV
DPTR,#BULAN
15.
MOVX @DPTR,A
16.
MOV
A,DATA_TAHUN
17.
MOV
DPTR,#TAHUN
18.
MOVX @DPTR,A
19.
RET
4.2.4.3.
Subrutin Pengesetan Data Menit
Pada bagian ini, tidak dilakukan pengesetan ulang terhadap data detik.
Penulis hanya melakukan pengesetan data menit, jam, hari, tanggal, bulan dan tahun.
Potongan program pengesetan data menit dapat dilihat di bawah ini dan akan
terlaksana apabila tombol tanda pagar (#) di tekan untuk pengesetan data menit.
Untuk pengesetan data menit, terlebih dahulu dilakukan UPDATE seperti yang
sudah dijelaskan sebelumnya, kemudian DATA_MENIT dinaikan satu bit sampai
data yang diinginkan tercapai. DATA_MENIT menit akan berulang terus dari 00
sampai 59 apabila tanda pagar ditekan terus. Setelah proses pengesetan, akan
dilakukan tunda waktu kemudian data-data hasil pengesetan disimpan kembali ke
register-register pewaktuan (UPDATE_RTC) kemudian RTC diinisialisasi kembali.
1. SET_MENIT: LCALL UPDATE
2. INC DATA_MENIT
3. MOV R6,DATA_MENIT
4. SET_MENIT_1: CJNE R6,#0AH,SET_MENIT_2
5. MOV DATA_MENIT,#10H
6. LJMP OUT_SET_MENIT
7. SET_MENIT_2: CJNE R6,#1AH,SET_MENIT_3
8. MOV DATA_MENIT,#20H
9. LJMP OUT_SET_MENIT
11. MOV DATA_MENIT,#30H
12. LJMP OUT_SET_MENIT
13. SET_MENIT_4: CJNE R6,#3AH,SET_MENIT_5
14. MOV DATA_MENIT,#40H
15. LJMP OUT_SET_MENIT
16. SET_MENIT_5: CJNE R6,#4AH,SET_MENIT_6
17. MOV DATA_MENIT,#50H
18. LJMP OUT_SET_MENIT
19. SET_MENIT_6: CJNE R6,#5AH,OUT_SET_MENIT
20. MOV DATA_MENIT,#00H
21. OUT_SET_MENIT: LCALL DELAY_BENTAR
22. LCALL UPDATE_RTC
23. LCALL INIT_RTC
24. RET
4.2.4.4.
Subrutin Pengesetan Data Jam
Potongan program di bawah ini adalah untuk pengesetan data jam.
Pengesetan data jam dilakukan dengan penekanan tomol tanda bintang (*) pada
keypad
. Cara pengesetan data jam sama saja dengan cara pengesetan pada data
menit. Yang membedakannya adalah pada pengesetan jam ini, data jam berada