Antarmuka Komputer sebagai Pengontrol Lampu Penerangan Jalan
(16 lampu) di Area Komplek Perumahan Berbasis Mikrokontroller AT89S51
Perkembangan pembangunan perumahan-perumahan elite kelas menengah keatas sudah merambah di daerah sekitar perkotaan. Hal ini merupakan imbas dari kemajuan kota-kota besar yang sangat pesat. Pada kompleks perumahan biasanya telah disediakan fasilitas internal maupun external rumah yang disediakan oleh pengelola kompleks. Salah satu fasilitas externalnya yaitu berupa lampu penerangan jalan. Lampu Jalanan tersebut digunakan sebagai penerangan pada saat menjelang malam sehingga para pemilik rumah maupun pengguna jalan akan terjamin rasa kenyamanan dan keamanannya. Lampu jalan ini di-ON kan pada saat menjelang malam dan di-OFF kan pada saat menjelang siang oleh pemilik rumah ataupun petugas keamanan kompleks tersebut. Pada pengaktifan lampu jalanan masih sering dilakukan secara manual. Masalah yang sering terjadi yaitu lampu jalanan tetap menyala pada siang hari dikarenakan para penghuni rumah atau satpam perumahan enggan atau lupa untuk mematikannya. Dengan latar belakang tersebut, maka dirancanglah sebuah alat yang dapat mengontrol lampu jalanan dengan menggunakan Personal Computer (PC). Dengan adanya alat ini, daya yang digunakan untuk penerangan jalan akan sedikit lebih hemat dan pemilik rumah atau petugas satpam tidak lagi repot-repot mematikan lampu jalanan tersebut, serta satpam perumahan akan selalu mengontrol kondisi lampu yang terlihat dari PC. Alat ini menggunakan mikrokontroller AT89S51 sebagai antarmuka personal komputer dengan lampu jalanan yang bertegangan AC yang akan dikendalikan. Selain perangkat keras (rangkaian antarmuka AT89S51 dan rangkaian Relay), juga menggunakan perangkat lunak yang dibuat dengan software Visual Basic 6. Diharapkan hasil perancangan ini dapat di aplikasikan terhadap seluruh kompleks perumahan agar memberikan kemudahan dalam pengoperasian lampu jalanan yang dapat dikontrol melalui PC.
2
Sebelum menginjak lebih jauh ke dalam system control ini, ada baiknya membahas tentang komunikasi serial. Komunikasi serial merupakan komunikasi data dengan pengiriman data secara satu per satu dengan menggunakan satu jalur kabel data. Sehingga komunikasi serial hanya menggunakan 2 kabel data yaitu kabel data untuk pengiriman yang disebut transmit (Tx) dan kabel data untuk penerimaan yang disebut receive (Rx). Kelebihan dari komunikasi serial adalah jarak pengiriman dan penerimaan dapat dilakukan dalam jarak yang cukup jauh dibandingan dengan komunikasi parallel tetapi kekurangannya adalah kecepatan lebih lambat daripada komunikasi parallel.
Gambar 1.rangkaian RS232
Peralatan-peralatan yang digunakan dalam sistem kontrol ini antara lain : 1. Mikrokontroler AT89S51 Mikrokontroler AT89S51 merupakan salah satu jenis Mikrokontroler CMOS 8 bit yang memiliki performa yang tinggi dengan disipasi daya yang rendah, cocok dengan produk MCS-51. Kemudian memiliki sistem pemograman 3
kembali Flash Memori 4 Kbyte dengan daya tahan 1000 kali write/erase. Disamping itu terdapat RAM Internal dengan kapasitas 128 x 8 bit. Dan frekuensi pengoperasian hingga 24 MHz. Mikrokontroller ini juga memiliki 32 port I/O yang terbagi menjadi 4 buah port dengan 8 jalur I/O, kemudian terdapat pula sebuah port serial dengan kontrol serial full duplex, dua timer/counter 16 bit dan sebuah osilator internal dan rangkaian pewaktu. Mikrokontroller ini memiliki 40 konfigurasi pin. Fungsi dari tiap tiap dapat dikelompokkan menjadi sumber tegangan, kristal, kontrol, dan input-output. AT89S51 bisa digunakan sebagai antarmuka antara perangkat yang dikendalikan dengan komputer yang berisi program kendali sebagai pengendali peralatan diluar computer. AT89S51 merupakan chip tunggal yang terdiri dari : CPU, ram internal, 4 port paralel, interupsi (eksternal interuption, timer/counter, serial interuption). Adapun fungsi bagian-bagian dari mikrokontroller AT89S51 secara singkat bisa dipaparkan sebagai berikut : Port 0 (pin 32-39): merupakan port dua arah yang bisa difungsikan sebagai input atau output data. Selain itu port ini bisa difungsikan sebagai bus alamat dan data untuk dimultipleks dengan memori eksternal. Port 1 (pin 1-8) : merupakan port dua arah yang bisa difungsikan sebagai input atau output data. Khusus P1.5`(MOSI), P1.6 (MISO) dan P1.7 (SCK) digunakan untuk In System Programming. Port 2 (pin 21-28): merupakan port dua arah yang dapat difungsikan sebagai input dan sebagai output, juga bisa difungsikan sebagai bus alamat yang digunakan untuk mengakses memori eksternal. Port 3 (pin 10-17): selain bisa difungsikan sebagai input dan output data, juga dapat digunakan sebagai serial port (Tx, Rx), sumber interupsi external (Int0, Int1), masukan counter (T0,T1) dan sinyal Read, Write. 4
Gambar 2. Konfigurasi pin AT89S51
2. Driver relay Relay merupakan salah satu komponen elektronik yang terdiri dari lempengan logam sebagai saklar dan kumparan yang berfungsi untuk menghasilkan medan magnet. Rangkaian relay ini berfungsi sebagai saklar elektronik yang dapat menghidupkan/mematikan peralatan elektronik (dalam hal ini Lampu jalanan) pada rangkaian di bawah, untuk menghubungkan dengan rangkaian 220VAC menggunakan relay yang dikendalikan oleh tegangan dari mikrokontroller. Pada rangkaian ini digunakan relay 12 Volt, ini berarti jika kaki positif relay (kaki 1) dihubungkan ke sumber tegangan 12 Volt dan negative relay (kaki 2) dihubungkan ke ground, maka kumparan menghasilkan medan magnet, dimana medan magnet ini akan menarik logam yang mengakibatkan saklar (kaki 3) terhubung ke kaki 4 dan kaki 7 terhubung ke kaki 8. Dengan demikian jika kita gunakan gunakan kaki 3 dan kaki 4 pada relay sebagai saklar untuk menghidupkan /mematikan lampu dengan cara mengaktifkan dan menonaktifkan relay.
5
Gambar 3. Rangkaian driver relay 3. Program aplikasi visual basic Program aplikasi ini dibuat dengan menggunakan program Visual Basic6 (VB6) yang dirancang untuk mengendalikan enam belas peralatan listrik yang dapat dikendalikan lewat personal komputer (PC). VB6 merupakan bahasa pemrograman berorientasi objek yang berjalan pada sistem operasi Windows. Objek atau sering juga disebut kontrol digunakan sebagai penghubung (interface) antara program aplikasi dengan user yang diletakan pada sebuah parent object yaitu form. Object atau kontrol, diantaranya label, text box, button, shape, image mempunyai property, event dan metoda. Visual Basic menyediakan fasilitas untuk mengakses serial port. Pengaksesan serial port dilakukan dengan cara menggunakan kontrol MSComm. Kontrol MSComm pada VB menyediakan fasilitas komunikasi antara program aplikasi pengendali peralatan yang dibuat dengan port serial untuk keperluan pengiriman dan penerimaan data serial. Setiap MSComm menangani satu port serial, sehingga untuk menggunakan lebih dari satu port serial memerlukan MSComm sebanyak port serial yang digunakan. Properti MSComm yang sering digunakan antara lain: CommPort : untuk menentukan nomor port serial yang akan dipakai. Setting : untuk menset nilai baud rate, parity, jumlah bit data, jumlah bit stop. 6
PortOpen : untuk membuka port serial yang dihubungkan dengan MSComm. Input : untuk mengambil data yang ada pada buffer penerima. Output : untuk menulis data pada buffer kirim.
Peralatan-peralatan di atas dirancang menjadi sistem implementasi interface computer sebagai pengontrol lampu jalanan di kompleks perumahan. Spesifikasi dari perancangan dan implementasi interface computer sebagai pengontrol lampu jalanan di kompleks perumahan adalah sebagai berikut : Sistem ini terdiri atas dua bagian utama, dimana masing-masing bagian tersusun atas komponen perangkat keras (hardware) dan komponen perangkat lunak (software). Pada alat menggunakan computer desktop yang dapat menjalankan program Visual Basic 6 beserta Port serial yang digunakan. Alat ini bekerja dengan sistem dua arah yaitu PC dapat menampilkan kondisi dari lampu (telesignalling) dan dapat menampilkan tombol untuk mengontrol lampu tersebut.(telecontroll) Pengiriman dan penerimaan data dilakukan secara serial menggunakan Rs-232 yang terhubung dengan mikrokontroller AT89S51. Alat ini dapat mengendalikan lampu sebanyak 16 lampu. Pada pemasangannya jarak lampu terhadap PC sekitar 100 hingga 500 meter.
Cara Kerja Sistem Pada perancangannya alat ini menggunakan dua buah mikrokontroller , hal ini dikarenakan port yang ada pada mikrokontroller tidak mencukupi pada proses input dan output. Pada mikrokontroller yang pertama berfungsi sebagai pengirim data untuk pengontrol lampu, sedangkan pada mikrokontroller kedua berfungsi sebagai penerima data untuk melihat kondisi lampu yang ditampilkan di komputer.
7
Pengiriman data untuk meng-ON dan OFF kan lampu (telecontrol) Pada perancangan ini, untuk mengontrol lampu yaitu dengan mengklik tombol ON atau tombol OFF yang ada pada form pada layer komputer. Pada form akan menampilkan kondisi lampu sesuai pada tempatnya. Komputer akan mengirim 8- bit ke mikrokontroller melalui komunikasi secara serial RS232. Pada mikrokontroller data akan diolah dan dikonversi. Untuk menyalakan lampu mikrokontroller harus mengeluarkan logic 1 dan untuk mematikannya harus berlogic 0. mikrokontroller akan mengirimkan sinyal data 16 output (port 0 dan port 2) ke 16 rangkaian driver relay untuk mengON atau OFF kan lampu sesuai dengan tombol yang ditekan pada layer computer. Menampilkan kondisi lampu (Telesignalling) Setelah data dikirim untuk menyalakan dan mematikan lampu, kondisi lampu akan di tampilkan melalui layer pada computer. Untuk pengiriman datanya dimulai dari rangkaian AC converter atau sama konsepnya dengan rangkaian catu daya yang akan mengubah tegangan 0-220 Volt menjadi 0-5 Volt. Pada setiap lampu akan terpasang trafo, maka sebanyak output dari 16 transformator akan terhubung dengan rangkaian converter tersebut. Hasil dari 16 rangkaian converter tadi langsung dihubungkan ke input mikrokontroller (port 1 dan port 2). Ketika lampu mati maka converter akan memberikan logic rendah 0 dan ketika lampu menyala converter akan memberikan logic tinggi 1.Pada mikrokontroller data tersebut akan di olah dan dikonversi untuk dikirim ke computer melalui RS232. Mikrokontroller akan mengirimkan data 8-bit ke computer. Data yang deterima dari mikrokontroller akan ditampilkan berupa tampilan kotak berwarna yang mengartikan kondisi pada lampu. Jika kotak berwarna merah berarti lampu dalam kondisi mati dan jika kotak berwarna biru berarti lampu dalam kondisi menyala seperti gambar 4. 8
Gambar 4. Contoh tampilan Form pada computer untuk menampilkan kondisi lampu
Diagram blok
Gambar 5. Blok diagram cara kerja alat Fungsi setiap blok PERSONAL COMPUTER (PC) : sebagai interface dengan manusia untuk menampilkan data pada hardware. RS-232 LEVEL CONVERTER : berfungsi menerima data lewat IC MAX 232 untuk menghubungkan PC server dengan mikrokontroler sehingga dapat PERSONAL COMPUTER (PC) RS-232 LEVEL KONVERTER MIKROKONTROLLER AT89S51 (1) DRIVER RELAY LAMPU JALANAN CATU DAYA CONVERTER AC to DC Transformator MIKROKONTROLLER AT89S51(2) 9
berkomunikasi. CONVERTER AC TO DC: Berfungsi mengetahui kondisi dari lampu dengan mengubah tegangan AC ke tegangan DC seperti halnya catu daya. CATU DAYA : berfungsi untuk memastikan keluaran tegangan yang dibutuhkan oleh komunikasi serial dan mikroprosesor sebesar +5V stabil sedangkan untuk relay driver dan relay digunakan +12V. MIKROKONTROLLER AT89S51 : sebagai antarmuka antara perangkat yang dikendalikan dengan komputer yang berisi program kendali sebagai pengendali peralatan diluar computer. DRIVER RELAY: sebagai rangkaian pemisah level tegangan rendah DC dengan rangkaian AC220/380 volt. LAMPU JALANAN: Merupakan objek berupa lampu yang dialiri tegangan 220 V dari PLN yang akan dikontrol dari PC. Untuk satu unit lampu jalan dibutuhkan setidaknya sekitar 250 watt.
Analisisa Rangkaian Pada alat pengontrol lampu jalanan ini lampu akan dikontrol melalui sebuah PC . Pada PC terdapat Program Visual Basic akan menampilkan kondisi lampu dan tombol ON-OFF untuk menyalakan dan mematikan lampu jalanan. Data akan dikirim setelah tombol ON atau OFF ditekan. Rangkaian antarmuka AT89S51 ini menerima data lewat IC MAX 232 untuk mengubah level tegangan timbal balik antara TTL dan RS232. IC MAX 232 berisikan dua buah RS232 Line driver dan dua buah RS232 line receiver dan dilengkapi dengan pelipat tegangan DC meskipun catu terpasang +5 Volt IC ini sanggup melayani level tegangan RS232 antara -10 volt sampai +10 volt. Data karakter yang dilewatkan IC MAX232 ini diumpankan melalui port serial AT89S51 yang telah diisi program assembly. AT89S51 akan mendeteksi setiap pengiriman data karakter dari port serial komputer, selanjutnya mengaktifkan atau menonaktifkan bitbit pada port yang terhubung dengan peralatan yang akan dikendalikan dan kembali menunggu untuk menerima data berikutnya. Pada rangkaian driver relay ini untuk meng-aktifkan dan men-nonatifkan relay digunakan transistor NPN 2SC945.dari gambar 2 terlihat negative relay 10
dihubungkan ke kolektor dari transistor,ini berarti jika transistor aktif maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0V. hal ini ini akan mengaktifkan relay dan lampu akan menyala. Sebaliknya jika transistor tidak aktif, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 12 Volt, keadaan ini menyebabkan relay tidak aktif dan lampu akan mati. Kumparan pada relay akan menghasilkan tegangan singkat yang besar ketika relay dinonaktifkan dan ini dapat merusak transistor yang ada pada rangkaian. Untuk mencegah kerusakan pada transistor tersebut sebuah diode harus dihubungkan ke relay tersebut. Diode dihubungkan secara terbalik sehingga secara normal diode ini tidak menghantarkan. Penghantaran hanya terjadi ketika relay dinonaktifkan, pada saat ini arus akan terus mengalir melalui kumparan dan arus ini akan dialirkan ke diode. Tanpa adanya diode arus sesaat yang besar itu akan mengalir ke transistor, yang mengakibatkan kerusakan pada transistor. Pada rangkaian terdapat converter AC to DC yang digunakan untuk membaca kondisi dari lampu. Rangkaian converter ini menggunakan konsep catu daya yang mengkoversi tegangan jala-jala 0-220 V menjadi 0-5V. pada saat lampu menyala maka tegangan bernilai 220 V, dengan trafo tegangan 220 V diubah menjadi 12 V. Karena output masih berbentuk gelombang AC maka disearahkan gelombangnya oleh diode 1N4148 dan kapasitor 4700F serta diregulasi menjadi 5 V. sebaliknya jika lampu mati maka tegangan menjadi 0V dan output pada converter pun menjadi 0V. kemudian dari hasil converter ini langsung dihubungkan ke mikrokontroller yang akan mengirim data 8-bit ke computer melalui RS232 untuk ditampilkan secara visual.
11
Gambar 6. Flowchart program sistem kerja mikrokontroller
Gambar 7. Simulasi rangkaian penerima data dari tegangan lampu mikrokontroller. mulai Inisialisasi serial/data yang masuk CEK DATA Tanpilkan data ke driver relay Inisialisasi data untuk perbandingan Data sama Data beda selesai mulai Inisialisasi yang masuk dari converter CEK DATA Kirim data karakter ke computer secara serial Inisialisasi data untuk perbandingan Data sama Data beda selesai AT89S51 P1B0T2 1 P1B1T2EX 2 P1B2 3 P1B3 4 P1B4 5 P1B5MOSI 6 P1B6MISO 7 P1B7SCK 8 RST 9 P3B0RXD 10 P3B1TXD 11 P3B4T0 14 P3B5T1 15 XTAL2 18 XTAL1 19 GND 20 P2B0A8 21 P2B1A9 22 P2B2A10 23 P2B3A11 24 P2B4A12 25 P2B5A13 26 P2B6A14 27 P2B7A15 28 P0B7AD7 32 P0B6AD6 33 P0B5AD5 34 P0B4AD4 35 P0B3AD3 36 P0B2AD2 37 P0B1AD1 38 P0B0AD0 39 VCC 40 P3B2INT0 12 P3B3INT1 13 P3B6WR 16 P3B7RD 17 PSEN 29 ALEPROG 30 EAVPP 31 VCC GND RS232 C1+ C1- C2+ C2- T1IN T2IN R1OUT R2OUT GND R2IN R1IN T2OUT T1OUT V+ V- VCC DB9 VCC 10uF 10u t1(2) t1(2) r1(1) r1(1) Bus1 c1+(3) c1-(4) c2+(5) c2-(6) c1+(3) c1-(4) c2-(6) c2+(5) r2n(7) r2n(7) r2n(7) r1t(8) r1t(8) 220V LAMPU 11MHz 20p 20pF 10k 100u c 1 ( 1 7 ) c2(10) c1(17) c2(10) rst(18) rst(18) trafo 4148 N4148 470u 7805 LINE VREG COMMON VOLTAGE 1k XMM1 12
Gambar 8. Simulasi rangkaian pengirim data dari mikrokontroller ke rangkaian driver relay
Kesimpulan Dari simulasi di atas, dapat disimpulkan bahwa pengaturan lampu jalan pada komplek perumahan dapat diatur menggunakan Personal Computer dengan memanfaatkan mikrokontroller AT89S51 dan relay, serta mengaplikasikan software Visual Basic pada PC untuk mengatur kerja lampu jalan dengan mikrokontroler sebagai interfacenya. Dengan demikian, pengaturan kerja lampu dapat dikendalikan dari jarak jauh menggunakan PC.
[1]. Rahmat 1) , Budi Nugroho 2) . MIKROKONTROLLER AT89S51 SEBAGAI ANTARMUKA PENGENDALI PERALATAN LISTRIK DENGAN PERSONAL KOMPUTER. http://journal.uii.ac.id/index.php/Teknoin/article/download/2151/1959 [13 September 2011]
[2]. Abdul Rizal Nugraha, Dr. Ir. Hartono Siswono, MT. DESIGN AND SIGNAL LIGHTS AUTO ON TRAVEL CHANNEL MOVER RAIL AT89S51 MICROCONTROLLER USING ONE GAUGE. http://papers.gunadarma.ac.id/index.php/industry/article/viewFile/140/1 31 [14 September 2011]
[3]. Sitorus, Kristanto Adynata.PERANCANGAN PEMANAS AIR KOLAM OTOMATIS BERBASIS ATMEGA8535. http://repository.usu.ac.id/bitstream/123456789/14230/1/09E02814.pdf [14 september 2011]
[4]. Universitas Bina Nusantara. INTERFACE MIKROKONTROLER DAN KOMPUTER SECARA SERIAL. http://ibnubudir.files.wordpress.com/2008/08/komunikasi-serial mikrokontroler-dengan-pc.pdf [15 September 2011]
[5]. Portal Majalah Kelistrikan Indonesia. MENANAM LAMPU LED, SOLUS PENERANG JALAN. http://www.listrikindonesia.com/lampu_led__solusi_penerang_jalan_15 2.htm [21 Oktober 2011]