Professional Documents
Culture Documents
MIKROKONTROLER AT89S51
Asri Agustian1
Busono S.2
1,2
Jurusan Sistem Komputer
Universitas Gunadarma
Jalan Margonda Raya 100, Depok 16424
ABSTRAK
Umumnya lampu di dalam rumah masih menggunakan saklar analog, sehingga pemilik
rumah harus menyalakan dan mematikan lampu secara manual. Akan tetapi dengan
adanya rangkaian pengontrol perangkat listrik, pemilik rumah dapat mengontrol lampu
dengan pewaktuan menyala dan mati lampu secara otomatis sesuai dengan kebutuhan.
Proses otomatisasi tersebut dikontrol menggunakan pemrograman mikrokontroler
sehingga dapat mengerakan relay dan mengontrol lampu. Rangkaian ini dapat
mengontrol sebanyak 8 buah lampu. Dari hasil uji coba yang telah dilakukan
menunjukkan bahwa rangkaian ini bekerja dengan baik karena pemprograman pada
rangkaian untuk waktu menyala dan mati menghasilkan selisih yang kecil (beberapa
detik) dibandingkan dengan waktu yang ditunjukkan oleh jam dinding.
PENDAHULUAN
Pada umumnya perangkat listrik yang berbasis analog masih digunakan untuk perangkat
listrik elektronika sederhana. Perangkat analog tersebut biasanya masih menggunakan
saklar analog untuk mengaktifkan dan mematikannya, contohnya setiap lampu di dalam
rumah masih dikontrol oleh saklar di dinding. Akan tetapi hal tersebut sudah ketinggalan
zaman dengan munculnya konsep rumah pintar, yaitu sebuah rumah dengan perangkat
listrik yang dikontrol secara otomatis.
Konsep PerancanganSistem
Dalam komunikasi data terdapat beberapa faktor elemen yang ikut terlibat dalam proses
komunikasi, yaitu sumber, pengirim, penerima, dan tujuan. Sumber adalah pembangkit
data sehingga dapat ditransmisikan, yang direpresentasikan oleh mikrokontroler. Data
yang dibangkitkan oleh sumber biasanya tidak ditransmisikan dalam bentuk aslinya.
Sebuah transmitter selain mengirim juga berfungsi untuk memodulasi sinyal. Penerima
mempunyai fungsi kebalikan dari sebuah transmitter, yaitu menerima sinyal yang dikirim
dan melakukan demodulasi terhadap sinyal sehingga dapat dimengerti oleh tujuan. Tujuan
berfungsi mengolah data yang diterima. Tujuan juga berfungsi melakukan pemeriksaan
kesalahan.
Secara umum, rangkaian pengendali dirancang seperti yang dapat dilihat pada
Gambar 1. Standar sinyal komunikasi yang banyak digunakan adalah standar RS232 yang
dikembangkan oleh Electronic Industry Association and the Telecommunications Industry
Association (EIA/TIA) yang pertama kali dipublikasikan pada tahun 1962. Ini terjadi jauh
sebelum IC TTL populer sehingga sinyal ini tidak ada hubungan sama sekali dengan level
tegangan IC TTL. Peralatan yang menggunakan media port serial untuk berkomunikasi
dibagi dalam dua kelompok yaitu standar yang menyangkut komunikasi data antara
komputer yang biasa disebut Data Terminal Equipment (DTE) contohnya terminal di
komputer, dan alat pelengkap komputer yang biasa disebut Data Communication
Equipment (DCE) seperti modem, plotter, dan lain-lain.
Standar sinyal serial RS232 memiliki ketentuan level tegangan sebagai berikut:
1. “Space”/logika 0 adalah tegangan antara +3 hingga +25 volt.
2. “Mark”/logika 1 adalah adalah tegangan antara -3 hingga -25 volt.
3. Daerah tegangan antara -3 volt hingga +3 volt adalah invalid level, yaitu daerah
tegangan yang tidak memiliki level logika pasti sehingga harus dihindari. Demikian
juga, level tegangan lebih negatif dari -25 volt atau lebih positif dari +25 volt juga harus
dihindari karena tegangan tersebut dapat merusak line driver pada saluran RS232
4. Arus hubungan singkat tidak boleh melebihi 500 mA.
Gambar 1. Diagram Blok Perancangan Secara Umum
METODE PENELITIAN
Alat yang digunakan adalah komputer, kabel, RS232, rangkaian MAX232, mikrokontroler,
saklar, resonator kristal, kapasitor, LED, relay, switch manual, regulator, dan lampu.
Bahasa pemrograman yang digunakan adalah bahasa Assembler dan Visual Basic.
Prosedur Percobaan
Komunikasi port serial berfungsi untuk mentransmisi data dari komputer ke dalam
mikrokontroler. Adapun alasan penggunakan port serial ialah karena di dalam
mikrokontroler AT89S51 sudah dilengkapi dengan SCI (Serial Communication Interface)
yang dapat berkomunikasi dengan port serial komputer, dan dibutuhkan jumlah kabel yang
lebih sedikit, bisa hanya menggunakan tiga kabel, yaitu saluran transmit data, saluran
penerimaan data, dan saluran dasar sehingga dirasakan lebih hemat.
Di dalam rangkaian ini juga terdapat saklar yang dihubungkan ke kaki 9 (RST)
pada mikrokontroler yang berfungsi untuk mengatur semua data mikrokontroler ke posisi
awal (kembali ke data standar) apabila mikrokontroler telah mengalami perubahan data.
Adapun LED11 pada port P3.7 digunakan sebagai indikator untuk memberitahukan bahwa
mikrokontroler sedang melakukan proses otomatisasi sedangkan LED10 pada port P3.6
sebagai indikator untuk memberitahukan pewaktuan persatu detik.
Relay pada rangkaian ini terdiri dari IC3ULN 2803 sebagai relay driver, relay 12
volt dan dengan penambahan LED yang berfungsi sebagai indikator atau tanda lampu
mana saja yang sedang menyala. IC3ULN 2803 digunakan sebagai penggerak relay di
mana keluaran dari mikrokontroler AT89S51 dengan logika satu akan berubah menjadi 0
setelah melalui IC tersebut, hal itu menyebabkan led indicator menyala dan relay dapat
berfungsi sebagai saklar untuk mengontrol lampu. Relay tersebut bekerja pada kondisi
yang secara normal terbuka, yaitu apabila diberikan arus listrik akan tertutup sehingga
dapat difungsikan sebagai saklar otomatis yang bisa menyalakan lampu. Dioda pada blok
rangkaian ini digunakan sebagai dioda pelindung pada relay driver .
Sedangkan pendukung merupakan suatu alat yang dapat dikontrol oleh rangkaian
secara otomatis yaitu peralatan listrik dalam bentuk AC maupun DC, yang dalam hal ini
digunakan adalah delapan buah lampu AC.
Program Assembler digunakan sebagai jantung dari seluruh program yang ada karena
semua pusat pengolahan proses mikrokontroler.
Gambar 2: Diagram Alur Pemrograman Assembler
Pada saat mengerjakan interupsi pewaktuan, program akan memeriksa data per
menit. Apabila sudah satu menit, program akan memeriksa data di RAM yang kemudian
akan memeriksa kesesuaian data. Otomatisasi akan diaktifkan apabila data sudah sesuai
dan mengirimkannya ke led dan relay, sedangkan apabila data tidak sesuai akan menuju
pada interupsi serial.
Dalam pengerjaan interupsi serial, ada 3 kemungkinan, yaitu proses kirim data,
terima data, dan pengubahan otomatisasi.
Program melakukan proses inisialisasi data standar yang sudah terdapat di dalam
program assembler, setelah itu melakukan “open com port”
Di dalam program ini terdapat beberapa pilihan yang dapat dilakukan yaitu proses
edit data, pengubahan otomatisasi, pengiriman data juga pemeriksaan data . Pada proses
edit data, dapat dilakukan perubahan untuk data standar yang sudah terdapat sebelumnya
dan menyimpan perubahan data tersebut. Penghapusan data dapat dilakukan dengan proses
hapus yang terdapat dalam program, sedangkan jika menginginkan proses batal maka
dapat dilakukan pembatalan pada perubahan data. Proses perubahan otomatisasi dapat
dilakukan dengan terlebih dahulu melakukan perubahan status pada program dari otomatis
menjadi tidak ataupun sebaliknya. Proses pengiriman data dalam VB akan mengirimkan
data sesuai yang diinginkan ke dalam mikrokontroler. Proses pemeriksaan data dilakukan
pada data yang terdapat pada mikrokontroler. Setelah VB menerima data dari
mikrokontroler maka data dari mikrokontroler dapat ditampilkan di dalam program VB.
Perancangan Alat
Pengoperasian Rangkaian
Tombol “open file” ditekan, lalu tombol Hex dipilih, setelah itu memilih
mikrokontroler dan menekan tombol “write” dan menunggu sampai program menyatakan
bahwa program telah selesai dilaksanakan. Proses pengunduhan ini menggunakan port
paralel dengan gambar rangkaian seperti yang dapat dilihat pada Gambar 5.
Gambar 5: Rangkaian pendownloaderan IC AT89S51
Pengaturan data dilakukan dengan membuka program VB yang terdapat pada L-10.
Program dijalankan dengan menekan tombol “start” yang terdapat pada toolbar di VB.
Pengaturan kedelapan lampu dilakukan seperti yang dapat dilihat pada Tabel 1. Pada VB
akan muncul tampilan seperti yang dapat dilihat pada Gambar 6.
Data bisa dikontrol dengan menekan tombol yang terdapat di dalam VB tersebut.
Apabila menginginkan pengeditan data standar tinggal menekan tombol edit dan apabila
ingin menyimpan data baru tersebut cukup dengan menekan tombol simpan. Sedangkan
tombol hapus digunakan untuk menghapus data yang ada, tombol aktifkan dan matikan
digunakan untuk mengaktifkan dan mematikan otomatisasi sedangkan kirim digunakan
untuk proses pengiriman ke dalam mikrokontroler dan cek data digunakan untuk proses
pemeriksaan data dari mikrokontroler.
Setelah proses kirim pada VB dijalankan, kabel konektor DB-9 dicabut, kemudian
alat tersebut dapat dijalankan dengan cara menghubungkan kabel yang terdapat pada
rangkaian ke dalam steker.
Dari 8 lampu yang terdapat pada rangkaian masing-masing memiliki satu data yang
digunakan untuk membuktikan suatu proses otomatisasinya. Data tersebut berupa jam dan
menit baik pada saat waktu lampu menyala maupun pada saat lampu mati. Adapun hasil
dari uji coba rangkaian yang telah dilakukan dapat dilihat pada Tabel 2.
Bila terjadi sumber PLN padam, maka semua lampu akan padam. Setelah sumber
PLN menyala kembali maka semua lampu akan menyala sesuai dengan data standar yang
tersimpan di dalam mikrokontroler dengan perhitungan waktu dimulai dengan kondisi
pewaktuan pada pukul 00:00. Sebagai contoh lampu 0 akan menyala 15 menit setelah PLN
menyala dan mati 2 jam kemudian, lampu 1 akan menyala 2 jam setelah PLN menyala dan
mati 2 jam 15 menit kemudian, lampu 2 akan menyala 30 menit setelah PLN menyala dan
mati 1 jam kemudian, lampu 3 akan menyala 1 jam 40 menit setelah PLN menyala dan
mati 2 jam kemudian, lampu 4 akan menyala 45 menit setelah PLN menyala dan mati 2
jam kemudian, lampu 5 akan menyala 1 jam 30 menit setelah PLN menyala dan mati 2 jam
kemudian, lampu 6 akan menyala 1 jam setelah PLN menyala dan mati 2 jam kemudian,
lampu 7 akan menyala 15 menit setelah PLN menyala dan mati 2 jam kemudian.
Kesimpulan
Rangkaian ini dapat mengontrol delapan buah lampu penerangan dan masing-masing
lampu memiliki satu data otomatisasi waktu nyala dan mati. Lampu menyala dan padam
otomatis sesuai dengan program yang dimasukan ke dalam mikrokontroler AT89S51.
Pengaturan waktu nyala dan mati rangkaian berbeda dengan pewaktuan menggunakan jam
rumah beberapa detik (waktu tunda).
Saran
Rangkaian ini mampu mengontrol perangkat listrik berupa dua buah lampu penerangan
secara otomatis dengan baik, akan tetapi rangkaian ini juga memiliki kelemahan yaitu
apabila terjadi sumber AC padam maka lampu akan padam dan pada saat menyala kembali
otomatisasi pewaktuan menyala dan padamnya lampu tersebut kembali ke data standar
yang diatur pada mikrokontroler dan perhitungan pewaktuannya dimulai dari awal yaitu
pukul 00:00, hal itu dapat diatasi dengan penambahan IC EPROM untuk penyimpanan data
dari VB juga ditambahkan sistem waktu riil pada perangkat keras agar pewaktuan bisa
lebih akurat dan mikrokontroler tetap bekerja meskipun sumber PLN mati.
.
Untuk mengatasi memory ROM internal penuh, maka bisa ditambahkan ROM
eksternal (2764). Untuk mengatasi pengaturan data ulang, perlu ditambahkan baterai/UPS
pada mikrokontroler AT89S51 tersebut.
DAFTAR PUSTAKA
Afgianto Eko Putra, Belajar Mikrokontroler AT89S51/52/55 Teori dan Aplikasi, Gava
Media, Yogyakarta, 2003.
Dwi Sutadi, I/O Bus dan Motherboard, Andi Offset, Yogyakarta, 2003.
George Loveday, Penjelasan Alfabetik dari A-Z, PT Elex Media Komputindo, Jakarta,
1992.
Malvino, Albert Paul, Prinsip-Prinsip Elektronika, Salemba Teknika, Buku Satu, Jakarta,
2003.
Retna Prasetya dan Catur Edi Wibowo, Interfacing Port Parallel dan Port Serial Komputer
dengan Visual Basic 6.0, Andi Offset, Yogyakarta , 2004.
Sutrisno, Elektronika Teori Dan Penerapannya, ITB, Edisi Dua, Bandung, 1987.
William Stalling, Computer and Data Communications, Prentice Hall, Eighth edition, New
York, 2003.