49 SISTEM PENGONTROL PERALATAN RUMAH TANGGA MELALUI TEKNOLOGI SMS Kiki Prasanjaya,Amril Zukhri,A.Hafid Paronda Program Studi Teknik Elektro Fakultas Teknik Universitas Islam “45” (UNISMA) Universitas Islam 45 Bekasi Jl.Cut Meutia No. 83, 17113 Telp. 021-88344436, 021-8802015 Ext. 124 ABSTRAK Pengontrolan atau pengendalian peralatan rumah tangga ini menggunakan Teknologi komunikasi yang berbasis Handphone dengan fasilitas SMS. Untuk proses kerjanya, Handphone mengirimkan data 10 bit yang terdiri dari 1 bit start, 8 bit data, dan 1 bit stop dalam taraf tegangan RS (Recommended Standart) dan kemudian di rubah oleh oleh IC MAX232 sehingga tegangannya menjadi taraf TTL (Transistor Transistor Logic), sebab Mikrokontroler bekerja pada taraf TTL. Dalam proses penerimaan sinyalnya, diterjemahkan dalam bentuk kode bilangan Heksadesimal, sehingga bisa digunakan untuk mengaktifkan Mikrokontroler dengan tujuan agar peralatan rumah tangga seperti Televisi, AC, Kipas dan lain-lainnya dapat di On atau Di Offkan. Dalam pengoperasiannya, alat pengontrol ini tidak banyak mengalami kesulitan, karena sangat mudah dan efisien, hanya membutuhkan sebuah pesan yang pengirimannya dapat dilakukan dimana saja atau kapanpun dengan cepat dan efektif Kata Kunci : Teknologi komunikasi, SMS, IC MAX232 PENDAHULUAN Di Era Globalisasi seperti saat ini, kemajuan teknologi khususnya di bidang elektronika berkembang dengan pesat, perkembangan itu secara otomatis dapat mempengaruhi terhadap sektor kehidupan yang menjadi serba mudah, praktis dan segala sesuatu dapat dilakukan sesuai dengan yang diinginkan. Untuk menunjang perkembangan itu perlu adanya inovasi-inovasi yang dapat menyederhanakan sebuah permasalahan Sebagai mahasiswa sudah menjadi kewajiban untuk mengedepankan nilai-nilai kreatif dalam mengembangkan ilmu elektronika dimana hasil kreatif ini dapat dimanfaatkan secara optimal sesuai kebutuhan. Saat ini penggunaan telepon genggam sebagai media komunikasi hampir tidak dapat dipisahkan lagi dari kehidupan kita. Dengan telepon genggam kita dapat berkomunikasi dari manapun dengan cepat, efektif dan dengan adanya fitur SMS (Short JREC Journal of Electrical and Electronics Vol 2. No.2 50 Message Service) membuat komunikasi ini menjadi lebih semakin ekonomis.SMS ini memiliki banyak keunggulan dibandingkan dengan melakukan komunikasi secara biasa. Misalnya pada saat telepon genggam penerima dalam keadaan tidak aktif, maka pesan yang dikirimkan tersebut akan disimpan didalam server penyediaan layanan SMS dan baru akan dikirimkan jika nomor tujuan dalam keadaan aktif kembali. Disamping itu tidak dapat perbedaan biaya pengiriman walaupun pengiriman dalam keadaan rooming. Juga biaya penggunaan pulsa lebih terkontrol. Dari uraian diatas penulis mencoba untuk membuat suatu sistem pengontrol rumah tangga menggunakan SMS dimana sistem ini dapat menyalakan dan mematikan berbagai peralatan listrik dalam rumah tangga sesuai dengan pesan yang kita kirim atau masuk. Sekaligus juga penulis mengangkat sebuah judul yang paling tepat adalah “ Sistem Pengontrol Peralatan Rumah Tangga Melalui Teknologi SMS “ manfaat dari pembuatan alat ini yaitu kita dapat mengontrol peralatan listrik rumah tangga kita lebih mudah, praktis dan efisien serta tidak memakan waktu yang banyak, alat ini juga dapat dikembangkan dalam dunia industri. TINJAUAN PUSTAKA Telekomunikasi Prinsip dasar dari telekomunikasi adalah bahwa pengiriman informasi yangterjadi berupa pengiriman sinyal elektronik. Olehnya itu informasi yang akan dikirimkan, baik itu berupa informasi suara manusia, suara musik bahkan informasi gambar, harus diubah dahulu menjadi sinyal-sinyal listrik. Perubahan ini dapat dilakukan melalui sebuah alat pengubah yang disebut Tranduser. Ditinjau dari segi media atau bahan perantara yang dipakai untuk menyampaikan informasi tersebut, maka secara garis besar komunikasi tersebut dapat dibagi menjadi 2 sistem, yaitu : 1. Sistem komunikasi yang menggunakan saluran fisis 2. Sistem komunikasi yang menggunakan saluran nonfisis Untuk memilih salah satu dari kedua macam sistem diatas adalah sangat tergantung pada kondisi dari tempat yang hendak mengadakan hubungan komunikasi. Pada sistem yang tidak menggunakan saluran, frekuensi yang akan dikirimkan harus digeser ke frekuensi yang lebih tinggi kemudian dipancarkan. Perlunya pergeseran frekuensi ke frekuensi yang lebih tinggi antara lain karena : Frekuensi yang lebih tinggi lebih mudah dipancarkan Untuk mengadakan informasi yang satu dengan informasi yang lain Untuk memungkinkan pengiriman kanal informasi dalam jumlah yang lebih banyak JREC Journal of Electrical and Electronics Vol 2. No.2 51 Khusus untuk jalur media penghubung radio, gelombang yang bisa digunakan untuk carrier akan beroperasi pada frekuensi-frekuensi yang lebih tinggi dari frekuensi siaran biasa. Gelombang inilah yang disebut dengan gelombang Mikro ( Microwave ) dan gelombang inilah yang biasa digunakan untuk pengiriman informasi dengan sistem radio ( radio akses ). Yang dimaksud dengan sistem Radio Akses atau Jaringan Lokal Akses Radio ( JARLOKAL ) adalah sistem tranmisi radio yang digunakan sebagai media yang menghubungkan antara pelanggan dengan sentral local. Dengan demikian perangkat radio ini digunakan untuk mengatasi adanya kesulitan pemasangan jaringan lokal di kota-kota besar. Namun perlu diingat, sistem ini juga memiliki beberapa keterbatasan pengguna spektrum frekuensi serta adanya interferensi. Oleh sebab itu didalam aplikasinya hal-hal tersebut harus menjadi pertimbangan yang utama. Keuntungan dan kerugian Radio Akses, antara lain : Keuntungan : Mampu menediakan pelayanan telekomunikasi pada daerah remote dan pada area yang terisolasi. Instalasi perangkat relatif lebih cepat sehingga dapat digunakan untuk mempercepat pemasaran jasa telekomunikasi. Kapasitasa fleksibel ( dapat diatur ) sesuai dengan kebutuhan trafik. Dapat dikonfigurasi sesuai dengan area geografi. Efisiensi penggunaan spektrum frekuensi ( 1 RF untuk 4 kanal ) Tidak memerlukan perencanaan yang ketat. Kerugian : Spektrum frekuensi terbatas ( apabila pelanggan bertambah banyak ) Adanya Interferensi ( adanya gangguan seperti, hujan, badai dan lain-lain ) Perkembangan Telepon Seluler Perkembangan teknologi telepon seluler jaringan wireless hingga saat ini dibagi menjadi 3 generasi. Gernerasi yang pertama adalah dimulai dari tahun 1970-an di Amerika ( di Eropa pada awal tahun 1980-an ) Advanced Mobile Phone Service (AMPS) pertama kali diperkenalkan di New Jersey dan Chicago pada tahun 1987. AMPS merupakan sistem wireless analog yang cukup sukses di Amerika. AMPS berhasil memberikan pelayanan telepon bergerak yang dapat mejangkau sebagian besar JREC Journal of Electrical and Electronics Vol 2. No.2 52 daratan Amerika Serikat. Namun AMPS masih banyak memiliki kelemahan, yaitu antara lain dalam hal mobilitas pengguna yang sangat terbatas karena belum adanya kemampuan handover yang menyebabkan pembicaraan dari pengguna akan segera putus apabila dia berada diluar jangkauan area, efisiensi yang sangat kecil karena keterbatasan kapasitas spektrum yang menyebabkan hanya sedikit pengguna saja yang dapat berbicara dalam waktu bersamaan, dan sistem ini tidak dapat dioptimasi lebih lanjut karena keterbatasan kemampuan kompresi dan coding data. Selain dari hal-hal tersebut, sistem ini harus mempergunakan perangkat dan peralatan yang berat dan tidak praktis serta masih sangat mahal untuk ukuranwaktu itu. Di Eropa telepon seluler ditandai dengan dilunjurkannya paling tidak 9 standar sistem analog di awal tahun 1980-an. Seperti Nordic Mobile Telephone (NMT) di Skandinavia, Total Access Communication System (TACS) di Ingris, C450 di Jerman, dan lain-lain. Dimana satu sama lain tidak saling berinterkoneksi. Generasi yang ke dua telepon seluler dipelopori dari kawasan Eropa yang diawali pada kebutuhan bersama terhadap satu sistem jaringan baru yang dapat menjadi standar jaringan yang berlaku dan dapat diterapkan diseluruh kawasan Eropa. Untuk mendapatkan lebih banyak pelanggan, maka dirombaklah sistem analog dengan sistem digital. Sistem baru ini diperkenalkan dengan nama Global Standart For Mobile Communication (GSM). Generasi yang kedua di Amerika Serikat ditandai dengan di luncurkannya standar jaringan baru yang juga bersistem digital yang diberi nama Digital AMPS (D-AMPS) disebut juga TDMA ( Time Division Multiple Access ). Sistem digital lainnya yang muncul di Amerika adalah IS-95 atau CDMA One, yang merupakan sistem digital yang berbasis teknologi CDMA ( Code Division Multiple Access ) dan diperkenalkan oleh Qualcomm pada pertengahan 1990-an. Untuk negara-negara Asia, pertama kali mereka mengadopsi sistem telepon wireless digitaldengan menerapkan teknologi jaringan GSM. Diperkenalkannya sistem telepon wireless atau seluler digital memberikan beberapa kelebihan, yaitu antara lain suara yang dihasilkan lebih jernih, efesiensi spektrum atau frekuensi menjadi meningkat, serta kemampuan optimasi sistem yang ditunjukkan dengan kemampuan kompresi dan coding data digital. Handset yang diperlukan untuk sistem ini juga menjadi sangat simpel, kecil, dan ringan, karena digunakannya chip digital untuk SIM (Subscriber Indentification module ). Teknologi chip digital juga memungkinkan penambahan fitur-fitur baru sebagai layanan tambahan, seperti Voice Mail, Call Waiting, dan Short Message Service ( SMS ). SMS ini sendiri merupakan fitur GSM yang paling popular hinggasaat ini. Hingga bulan September 2004, diketahui pengguna SMS di dunia hingga 23 Milyar kiriman pesan SMS per bulan. SMS sendiri merupakan paket pesan singkat sebesar maksimal 160 byte. JREC Journal of Electrical and Electronics Vol 2. No.2 53 Teknologi wireless generasi yang ketiga hingga saat ini dikembangkan oleh suatu kelompok yang diakui dan merupakan kumpulan para ahli dan pelaku bisnis yang berkompeten dalam bidang teknologi wireless di dunia. Kesepakatan generasi ketiga tertuang dalam Internasional Mobile Telecommunications 2000 ( IMT 2000) dan antara lain memutuskan bahwa standar generasi ketiga akan bercabang menjadi tiga standar sistem yang akan diberlakukan di dunia, yaitu Enhanced Datarates For GSM Evolution (EDGE), Wideband-CDMA (WCDMA), dan CDMA 2000. Short Message Service ( SMS ) SMS ( Layanan pesan pendek ) adalah suatu layanan tanpa kabel yang diterima dan memungkinkan transmisi pesan alphanumeric antara pelanggan seluler dan sistem eksternal seperti pos elektronik, dan voice mail sistem. Layanan SMS pertama kali muncul di Eropa pada tahun 1991 di Amerika Utara. SMS pada awalnya tersedia diatas jaringan tanpa kabel digital yang dibangun oleh pelopor seperti Bellsouth Mobilitas, Primeco, Nextel, dan lain-lain. Jaringan tanpa kabel digital ini didasarkan pada GSM, CDMA dan TDMA. SMS menyediakan suatu mekanisme untuk mengirimkan pesan pendek ke dan dari alat tanpa kabel. Layanan ini menggunakan suatu SMSC ( Short Message Service Center), yang bertindak sebagai suatu store-and-forward sistem untuk meningkatkan pesan. Jaringan tanpa kabel menyediakan mekanisme yang diperlukan untuk menemukan dan mengangkut pesan pendek antar MSCS dan stasiun tanpa kabel. SMS mendukung beberapa mekanisme masukan yang mengizinkan interkoneksi dengan tujuan dan sumber pesan berbeda. Suatu karakteristik pembeda layanan SMS adalah bahwa suatu handset yang aktif biasa menerima atau menyampaikan suatu pesan singkat pada setiap waktu, tidak terikat apakah suatu panggilan suara atau panggilan data dalam proses ( dalam beberapa implementasi, ini tergantung pada MSC atau SMSC ). SMS juga menjamin penyerahan pesan pendek oleh jaringan itu. Beberapa keuntungan dan manfaat dari SMS adalah sebagai berikut : Penyerahan pesan yang dijamindan dapat dipercaya Komunikasi yang singkat untuk suatu pesan singkat Penyampaian pesan kepada para pelanggan pada waktu yang sama Kemampuan untuk menerima informasi berbeda Kemampuan untuk mengakses E-Mail Pengintegrasian dengan aplikasi internet JREC Journal of Electrical and Electronics Vol 2. No.2 54 Struktur Jaringan Dan Arsitektur SMS SS7 BSS SME HLR VLR SME SMSC SMCG SMSC SME Mobile Station SME Gambar 1. Stuktur dasar jaringan SMS Short Message Entities ( SME ) SME adalah alat yang bisa menerima atau mengirimkan pesan singkat. SME bisa ditempatkan di Fixed Network, Mobile Station, ataupun pusat lainnya. Short Message Service Center ( SMSC ) SMSC adalah kombinasi perangkat keras dan lunak yang bertanggung jawab penyiaran, penyinpanan dan penyampaian suatu pesan pendek antara suatu SME dan Mobile Station. SMS Gateway / Interworking Mobile Switching Center SMS Gateway MSC (SMS-GMSC) adalah MSC yang mampu menerima pesan singkat dari suatu SMSC, dengan berhubungan dengan HLR untuk menyampaikan informasi dan mengirimkan pesan ke MSC untuk diteruskan ke Mobile Station. SMS Interwoking MSC (SMS-IWMSC) Adalah MSC yang mampu menerima suatu pesan pendek dari jaringan bergerak kepada SMC yang sesuai. SMS-GSMC / SMS-ICMSC secara khas terintergrasi dengan SMSC. Home Location Register ( HLR ) JREC Journal of Electrical and Electronics Vol 2. No.2 55 HLR adalah databese yang digunakan untuk penyimpanan yang permanen. Jika stasiun tujuan sedang tidak bias diakses ketika penyerahan pesan dicoba, HLR menginformasikan SMSC sampai stasiun tujuan dapat dikenali oleh jaringan bergerak untukdapat diakses, dan dengan begitu pesan dapat dikirimkan. Visitor Location Register ( VLR ) VLR adalah databese yang berisi informasi yang terus menerus tentang para langganan yang sedang menjelajahi ke dalam HLR lain. Informasi inidiperlukan oleh MSC untuk melayani para pelanggan. Mobile Switching Center ( MSC ) MSC berfungsi sebagai switching ke dandari telepon dari sistem data lainnya. MSC akan menyampaikan pesan singkat kepada jaringan bergerak yang spesifik melalui stasiun pangkalan yang sesuai. Base Station Sistem ( BSS ) Semua hubungan transmisi dari isyarat radio elektromagnetik antara MSC dan jaringan bergerak dilakukan oleh stasiun pangkalan ( BSS ). BSS terdiri dari Base Station Controller ( BSCs ) dan Base Transceiver Station ( BTSs ), atau biasa disebut Cell. BSC mengendalikan satu atau lebih BTSs yang bertanggung jawab atas tugas memonitor ketika langganan pindah atau bergerak dari satu BTS ke BTS lain, dengan mengabaikan apakah pelanggan dalam BTS yang sama atau berbeda. Mobile Divice Mobile Divice adalah terminal tanpa kabel yang mampu menerima dan mengirim pesan pendek atau singkat. Pada umumnya alat ini terdapat pada telepon seluler digital, tetapi baru-baru ini aplikasi SMS telah diperluas untuk terminal lain seperti POS, Handeld komputer, dan Personal digital Assistance ( PDA ). Infrastruktur pemberian isyarat jaringan tanpa kabel didasarkan pada standar SS7. Mikrokontroler AT89C51 JREC Journal of Electrical and Electronics Vol 2. No.2 56 AT89C51 adalah mikrokontroler keluaran Atmel dengan 4K byte Flash PEROM (Programmable and erasable Read Only Memory), AT89C51 merupakan memori dengan teknologi nonvolatile memori, isi memori tersebut dapat diisi ulang ataupun dihapus berkali-kali. Memori ini biasa digunakan untuk menyimpan instruksi (perintah) berstandar MCS-51 code sehingga memungkinkan mikrokontroler ini bekerja pada mode single chip operation (mode operasi keping tunggal) yang tidak memerlukan internal memori ( memori luar) untuk menyimpan sourse code tersebut. Struktur Memori AT89C51 mempunyai stuktur memori yang terdiri atas : RAM internal, memori sebesar 128 byte yang biasanya digunakan untuk menyimpan variable atau data yang bersifat sementara. Special Function register (Register Fungsi khusus), memori yang terdiri dari registerregister yang mempunyai fungsi-fungsi khusus yang disediakan oleh mikrokontroler tersebut, seperti timer, serial dan lain-lain. Flash PEROM, memori yang digunakan untuk menyimpan instruksi-instruksi MCS51. AT89C51 mempunyai stuktur memori yang terpisah antara RAM Internal dan Flash PEROMnya. RAM internal dialamati oleh RAM Address Register (register alamat RAM) sedangkan Flash PEROM yang menyimpan perintah-perintah MCS-51 dialamati oleh register alamat program. Dengan adanya struktur memori yang terpisah tersebut, walaupun RAM Internal dan Flash PEROM mempunyai alamat awal yang sama, yaitu alamat 00, namun secara fisiknya kedua memori tersebut tidak saling berhubungan. Mikrokontroler AT89C51 dapat digunakan untuk mengakses memori eksternal dengan cara multipleks alamat memori dengan data dan mengirim sinyal pengontrol pada memori eksternal melalui sarana Program Store Enable ( PSEN /PROG), Address Latch Enable (ALE), Read ( RD ), dan Write ( WR ). Mikrokontroler AT89C51 juga memiliki sarana port serial Universal Asynchronous Receiver/Transmitter (UART). Umumnya port serial pada mikrokontroler selalu dianggap bekerja secara asinkron, namun pada aplikasi tertentu, port serial dapat bekerja secara sinkron untuk menambah sarana input/output bagi mikrokontroler. Perbedaan dari kedua cara transmisi data tersebut adalah sinyal yang digunakan untuk mendorong data seri. JREC Journal of Electrical and Electronics Vol 2. No.2 57 Memori Program Memori program berfungsi sebagai sarana untuk menyimpan program pengendali mikrokontroler. Memori program terdapat dalam Flash PEROM. Program yang disimpan ke dalam memori program tidak akan berubah meskipun mikrokontroler kehilangan catu daya karena bersifat nonvolatile. Memori program mikrokontroler memiliki lokasi memori untuk layanan interupsi (0000h – 0023h) dan lokasi memori untuk layanan instruksi (0024h – 0FFFh). Saat mikrokontroler mendapat sinyal reset, mikrokontroler akan menjalankan program mulai dari lokasi memori nomor 0000h dengan melakukan proses fetch dan execute cycles siap melayani instruksi berikutnya. Gambar 2.2 menunjukkan peta memori program mikrokontroler AT89C51. Bagian Program Awal dari Program Utama Awal dari Program Layanan Interupsi INT0 Awal dari Program Layanan Interupsi Timer 0 Awal dari Program Layanan Interupsi INT1 Awal dari Program Layanan Interupsi Tmer 1 Awal dari Program Layanan Interupsi Serial Program Selengkapnya Lokasi Memori 0000H 0003H 0008H 0013H 001BH 0023H 0FFFH Akhir Program Gambar 2. Peta Memori Program (Sutanto, 2001) Memori data terletak pada RAM. Data yang ditulis pada memori data akan hilang bila mikrokontroler tidak mendapat catu daya karena bersifat volatile. Secara keseluruhan, RAM memiliki kapasitas 256 byte. Lokasi memori $00 - $18 berisi register serbaguna, $20 - $28 berisi register level bit, $30 - $7F untuk keperluan umum, $80 - $FF berisi SFR sebagai register pengatur perilaku mikrokontroler. Gambar 2.3 menunjukkan peta memori data pada mikrokontroler AT89C51. JREC Journal of Electrical and Electronics Vol 2. No.2 58 Lokasi Memori $00 R0 R1 R2 R3 R4 R5 R6 R7 R0 R1 R2 R3 R4 R5 R6 R7 $10 R0 R1 R2 R3 R4 R5 R6 R7 $18 R0 R1 R2 R3 R4 R5 R6 R7 $08 $20 Bit. No $00...$07 Bit. No $08...$0F Bit. No $10...$17 Bit. No $18...$1F Bit. No $20...$27 Bit. No $28...$2F Bit. No $30...$37 Bit. No $38...$3F $28 Bit. No $40...$47 Bit. No $48...$4F Bit. No $50...$57 Bit. No $58...$57 Bit. No $60...$67 Bit. No $68...$6F Bit. No $70...$77 Bit. No $78...$7F $30 Memori untuk keperluan umum sebanyak $50(80) byte dengan nomor memori $30...$7F $7F $80 Special Function Register (SFR) : Akumulator, Stack Pointer, Program Status Word, Register B, Data $FF Pointer, Port, Timer/Counter Unit, Serial Unit, Power Control Gambar 3. Peta Memori Data (Sutanto, 2001) Instruksi Pada dasarnya mikrokontroler menjalankan instruksi satu persatu. PC merupakan register di dalam mikrokontroler yang mengatur pengambilan instruksi secara berurutan. Meskipun demikian, program yang kerjanya hanya berurutan saja tidaklah cukup untuk keperluan yang lebih kompleks. Oleh karena itu, diperlukan instruksi yang dapat mengatur dan mempengaruhi alur program dengan cara mengubah nilai PC dari nilai sebelumnya. Mikrokontroler menjalankan instruksi dengan kecepatan dalam siklus 1 mikro detik (μS) pada frekuensi clock 12 Mhz. Mikrokontroler memiliki 256 perangkat instruksi. Seluruh perangkat instruksi dikelompokkan menjadi lima bagian, yaitu : JREC Journal of Electrical and Electronics Vol 2. No.2 59 1. Instruksi transfer data, untuk memindahkan data antara register ke register, memori ke memori, register ke memori, antarmuka ke register,dan antarmuka ke memori. 2. Instruksi aritmatika, untuk melaksanakan opersi penjumlahan, pengurangan, perkalian, dan pembagian. 3. Instruksi logika dan manipulasi bit, untuk melaksanakan operasi logika AND, OR, XOR, perbandingan, pergeseran, dan komplemen data. 4. Instruksi percabangan bersyarat dan percabangan tanpa syarat, untuk mengubah urutan pelaksanaan program. 5. Instruksi stack, input/output, dan kontrol, untuk mengatur penggunaan stack, membaca dan menulis port I/O, serta pengontrolan. Konstruksi Internal Menunjang semua kemampuan mikrokontroler AT89C51, diperlukan rangkaian pendukung eksternal, yaitu rangkaian power on reset dan rangkaian kristal yang dihubungkan ke osilator. Rangkaian power on reset berfungsi untuk memberi umpan sinyal reset logika tinggi dalam waktu sesaat mempengaruhi Program Counter (PC). Rangkaian kristal berfungsi untuk membangkitkan osilator internal mikrokontroler yang menjadi sumber sinyal bagi Central Processing Unit. Pada bagian internal, mikrokontroler AT89C51 dilengkapi dengan Flash Programmable Erasable Read Only Memory (Flash PEROM) berkapasitas 4 kbyte, Random Access Memory (RAM) berkapasitas 128 byte, Special Function Register (SFR), dan Central Processing Unit (CPU), sebagaimana terlihat pada Gambar 2.3 Lewat sarana tersebut, mikrokontroler dapat menerima dan mengeluarkan sinyal digital untuk mengendalikan rangkaian eksternal. Seluruh fasilitas tersebut dimiliki oleh mikrokontroler AT89C51 yang dikemas dalam satu keping (one chip microcomputer). JREC Journal of Electrical and Electronics Vol 2. No.2 60 INT0 INT1 RST Interrupt Control Program Counter Flash PEROM RAM SFR I/O Port Timer CPU Oscilator Serial Port Clock External TXD RXD P0.......P3 T0 T1 Gambar 4. Konstruksi Internal Mikrokontroler AT89C51 (Sutanto, 2001) Konstuksi Port Mikrokontroler AT89C51 memiliki 40 kaki, yang terdiri dari 4 port paralel selebar 8 bit 2 arah (bidirectional) dan port serial. Masing-masing port mempunyai konstruksi rangkaian internal elektronik pembentuk port yang dilengkapi dengan penyangga 3 kondisi (tri state buffer) B1 dan B2 (Gambar 2.5.). Penyangga B1 dan B2 akan mengirim data ke jalur data internal ketika mikrokontroler mendapat instruksi yang bersifat ambil, ubah, simpan (read, modify, write). Instruksi-instruksi tersebut diambil oleh penyangga B1 dari output latch (Q) atau oleh penyangga B2 dari eksternal mikrokontroler (port) dan diolah di dalam inti prosesor kemudian dikembalikan ke input latch (D). Port 0 yang berfungsi sebagai port paralel pada saat diperlukan dapat berubah fungsi sebagai saluran alamat dan data serta merupakan satu-satunya konstruksi port yang tidak memiliki pull up resistance. Port 1 berfungsi sebagai port paralel merupakan konstruksi port dasar yang dibangun dan dimodifikasi untuk keperluan konstruksi port lainnya. Port 2 berfungsi sebagai port paralel pada saat diperlukan dapat berubah fungsi sebagai saluran alamat. Port 3 berfungsi sebagai port paralel pada saat diperlukan dapat pula berubah fungsi untuk berbagai keperluan, seperti Transmit Data (RXD) dan Receive Data (TXD) berfungsi sebagai input/output data seri, Interrupt 0 ( INT0 ), Interrupt 1 ( INT1), Timer 0 (T0), Timer 1 (T1) berfungsi untuk menerima sinyal interupsi dari rangkaian JREC Journal of Electrical and Electronics Vol 2. No.2 61 eksternal mikrokontroler, Write ( WR ) dan Read ( RD ) berfungsi untuk mengontrol P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST RXD/P3.0 TXD/P3.1 INT0/P3.2 INT1/P3.3 T0/P3.4 T1/P3.5 WR/P3.6 RD/P3.7 XTAL2 XTAL1 GND 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 AT89C51 memori data atau memori program yang ditambahkan di luar mikrokontroler. 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 VCC P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 EA/VPP ALE/PROG PSEN P2.7/A15 P2.6/A14 P2.5/A13 P2.4/A12 P2.3/A11 P2.2/A10 P2.1/A9 P2.0/A8 Gambar 5. Konfigurasi mikrokontroler AT89C51 (Susanto 1997) Fungsi-fungsi kaki (pin) yaitu pin 40 (Vcc) sebagai suplai tegangan, pin 20 (GND) sebagai ground atau pertanahan, pin 30 (ALE/PROG) sebagai keluaran ALE atau Address latch enable menghasilkan pulsa-pulsa untuk memancing byte rendah alamat selama akses memori internal dan juga berfungsi sebagai masukan pulsa, pin 29 (PSEN) sebagai Program Store Enable sinyal baca untuk memori program eksternal, Pin31 digunakan pada saat mikro akan di isi program dari alat penulis program, maka pin31 tersebut diberikan tegangan sebesar 12 volt. Sedangkan pada saat tidak digunakan untuk mengisi program, tegangannya berada pada 0 volt. atau 5 volt. Kalau kondisi 0 Volt berarti program yang didalam diabaikan yang berarti mikro akan menggunakan progam dari external EPROM, sedangkan kalau kondisi 5 volt atau logika „1‟ berarti mikrokontroler menggunakan program dari internal EPROM. Pin9 adalah berfungsi sebagai „reset‟. Cara kerja dari reset ini adalah apabila pin 9 mendapat tegangan sebesar 5 volt, maka pin 9 akan mereset seluruh program pada mikrokontroler, sehingga mikro akan kembali membaca program dari awal. Pin 18 dan 19 berfungsi untuk membangkitkan osilasi yang dibutuhkan oleh mikrokontroler untuk bekerja. Pada pin 18 dan 19 kita sambungkan dengan kristal 11,0592 Mhz, maka mikrokontroler akan bekerja pada frekuensi ± 11, 0592 Mhz yang mana dengan frekuensi tersebut mudah untuk membangkitkan baud rate pada kecepatan 19200 bps. Untuk menstabilkan osilator tersebut maka kita pasangkan capasitor secara paralel yang besarnya 33pF. Pin 11, untuk mengirim data serial ke handphone dimulai dengan mengisikan data pada serial buffer, setelah serial buffer terisi, maka secara otomatis mikrokontroler melalui pin 11 tersebut akan JREC Journal of Electrical and Electronics Vol 2. No.2 62 mengirimkan bit-bit, dimulai dari start bit, data bit dan stop bit secara serial satu persatu, setelah ke 10 bit tersebut lengkap, maka indikator Ti pada SCON akan bernilai „1‟, kalau belum lengkap Ti akan berlogika „0‟. Pada saat Ti berlogika „1‟ lah maka kita boleh mengirimkan data berikutnya melalui serial buffer yang mana taraf tegangannya masih TTL, diterima oleh MAX232 pada pin11 yaitu T1 in, yang mana Ti in ini merupakan masukan TTL yang akan dirubah menjadi RS232 yang akan dikeluarkan pada Ti out (pin14). Pada pin 14 ini kita hubungkan ke pin 3 pada DB 9 yang selanjutnya data akan dikirimkan melalui kabel data ke handphone, dan handphone akan menerima balasan SMS dari mikrokontroler yang berisi laporan data yang kita inginkan. . B1 Jalur Data Ke Latch VCC Jalur Alamat/Data Baca Latch . D . Q . RST . Q . . . A T1 B . V P0.X T . T2 B2 . Baca Sinyal Luar Baca Latch . Jalur Data Ke Latch VCC B1 . D . Q . RST . Q . P1.X B2 Baca Sinyal Luar Baca Latch . Jalur Alamat/Data . B1 . T1 B Jalur Data Ke Latch . D . Q . RST . Q . VCC . A . . V T P2.X T2 B2 Baca Sinyal Luar Baca Latch . VCC B1 Jalur Data Ke Latch . . D . Q . RST . Q . P.3.2 (INT0) P.3.3 B2 Baca Sinyal Luar P.3.1 (RXD) . . - Input UART - Kontrol Interupsi - Timer 0/1 (INT1) P.3.4 (TO) P.3.5 (T1) Gambar 6. Bagan Internal Port Mikrokontroler AT89C51 (Sutanto, 2001) Perangkat Timer/Counter Mikrokontroler AT89C51 memiliki dua perangkat timer/counter 16 bit yang dapat diatur melalui perangkat lunak, yaitu Timer 0 dan Timer 1. Timer 0 dan Timer 1 terdapat pada SFR digunakan untuk membentuk pencacah biner. Pencacah biner untuk Timer 0 dibentuk oleh register JREC Journal of Electrical and Electronics Vol 2. No.2 63 TL0 dan TH0 ( Timer 0 Low Byte dan Timer 0 High Byte) pada lokasi memori data $8A dan $8C. Pencacah biner untuk Timer 1 dibentuk oleh register TL1 dan TH1 ( Timer 1Low Byte dan Timer 1 High Byte) pada lokasi memori data $8B dan $8D. Apabila mikrokontroler diaktifkan pada frekuensi 12 MHz, maka Timer 0 atau Timer 1 melakukan perhitungan waktu sekali dalam 1μS secara independen, tidak tergantung pada pelaksanaan instruksi yang lainnya. Apabila perioda waktu telah dilampaui, Timer 0 atau Timer 1 segera menginterupsi mikrokontroler untuk memberi tahu bahwa perhitungan prioda waktu telah selesai dilaksanakan. Untuk mengatur kerja Timer 0 dan Timer 1 dipakai 2 register pengatur, yaitu register TMOD (Timer Mode Register) pada lokasi memori data $89 dan register TCON (Timer Control Register) pada lokasi memori data $88. Masing-masing register berkapasitas 8 bit. Register TMOD adalah register yang digunakan untuk pemilihan mode operasi timer. Register TMOD dibagi menjadi 2 bagian, dari bit 0 sampai dengan bit 3 dipakai untuk keperluan mode Timer 0 dan dari bit 4 sampai dengan bit 7 dipakai untuk keperluan mode Timer 1. Mode operasi timer dapat diatur menjadi empat mode pencacahan, yaitu pencacah biner 13 bit, pencacah biner 16 bit, pencacah biner 8 bit, dan gabungan pencacah biner 16 bit dengan 8 bit. Register TCON adalah register yang digunakan untuk mengontrol operasi timer. Register TCON dibagi menjadi 2 bagian, dari bit 0 sampai dengan bit 3 dipakai untuk keperluan INT0 dan INT1, dari bit 4 sampai dengan bit 7 dipakai untuk keperluan mengontrol Timer 0 dan Timer 1. Gambar 2.7 dan 2.8 menunjukkan denah register TMOD dan TCON. MSB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 LSB Bit 0 Gate C/T M1 M0 Gate C/T M1 M0 Timer 1 Timer 0 Gambar 7 Denah Register TMOD (Sutanto, 2001) JREC Journal of Electrical and Electronics Vol 2. No.2 64 MSB Bit 7 Bit 6 Bit 5 TF1 TR1 TF0 Timer 1 Bit 4 TR0 Bit 3 Bit 2 Bit 1 LSB Bit 0 IE1 IT1 IE0 IT0 Timer 0 Gambar 8. Denah Register TCON (Sutanto, 2001) Seperti ditunjukkan pada Gambar 2.8, jika instruksi yang diberikan pada register TMOD membuat keadaan C/ T bernilai 0 maka posisi saklar SW1 terhubung ke osilator internal. Bit Gate (G) bernilai 0 membuat output gerbang OR selalu bernilai 1 sehingga tidak terpengaruh oleh keadaan nilai 0 atau 1 pada INT1. Dalam hal ini, saklar SW2 hanya dikendalikan lewat bit TR1 pada register TCON. Jika TR1 bernilai 1 maka saklar SW2 tertutup sehinga sinyal dari SW1 disalurkan ke sistem pencacah biner. Sebaliknya, jika instruksi yang diberikan pada register TMOD membuat keadaan C/ T bernilai 1 maka posisi saklar SW1 terhubung ke sumber sinyal eksternal. Bit G bernilai 1 membuat output gerbang OR akan mengikuti keadaan INT1. Saat INT1 bernilai 0 apa pun keadaan bit TR1 output gerbang AND selalu bernilai 0 dan membuat saklar SW2 terbuka. Setiap kali pencacah biner melimpah dari $FFFF menjadi $0000 maka bit TF0 atau TF1 pada register TCON bernilai 1. JREC Journal of Electrical and Electronics Vol 2. No.2 65 XTAL1 SW1 = 0 Ke Atas SW2 = 0 Terbuka SW1 = 1 Ke Bawah SW2 = 1 Tertutup SW1 TL1 TH1 SW2 Osilator TMOD XTAL2 G C/T M1 M0 G C/T M1 M0 Limpahan Pencacah T1/P3.5 TCON INT1/P3.3 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 Gambar 9 Bagan Timer/Counter (Sutanto, 2001) Komunikasi Data Port serial AT89C51 dapat digunakan untuk komunikasi data secara sinkron maupun asinkron. Komunikasi data serial secara sinkron merupakan bentuk komunikasi data yang memerlukan sinyal clock untuk sinkronisasi, sedangkan komunikasi asinkron tidak memerlukan sinyal clock pada sinkronisasi. Pengiriman data pada komunikasi serial 89C51 dilakukan dimulai dari bit yang paling rendah (LSB) hingga bit yang paling tinggi (MSB). Dalam Tugas Akhir ini penulis tidak menjelaskan tentang komunikasi data secara sinkron. Komunikasi Serial Selain transmisi paralel, ada juga transmisi secara serial. Keuntungan transmisi seri adalah dapat digunakannya satu saluran komunikasi, salah satu contoh pada tugas akhir ini multiplex. Berdasarkan arahnya komunikasi data serial dibagi menjadi : 1. Simplex Pada sistem ini komunikasi terjadi satu arah pada pengiriman (M) ke penerima (N) dengan catatan bahwa penerima (N) tidak bisa mengirim ke pengirim (M). 2. Half Duplex Merupakan komunikasi dua arah, misalnya antara M dan N. pada saat M mengirim data, N hanya dapat menerima saja, demikian juga sebaliknya. 3. Full Duplex JREC Journal of Electrical and Electronics Vol 2. No.2 66 Merupakan komunikasi dua arah yang mana antara pengirim (M) dan penerima (N) dapat saling berhubungan. Pada saat bersamaan kedua pihak yang berkomunikasi dapat mengirim atau menerima data. Komunikasi serial hanya menggunakan satu saluran tranmisi, sehingga dapat digunakan oleh banyak pihak, maka dipakai tata cara multiplexing Ada dua jenis komunikasi serial yaitu : Komunikasi serial Asinkron, yang mana pola satuan dari informasi (bit) utamanya terbagi dalam karakter-karakter. Komunikasi serial sinkron, yang melewatkan karakter-karakter yang dikirim secara back to back. Komunikasi Asinkron Komunikasi data asinkron tidak memerlukan sinyal clock sebagai sinkronisasi, namun pengiriman data harus diawali dengan start bit dan diakhiri dengan stop bit. Sinyal clock yang merupakan baud rate dari komunikasi data ini dibangkitkan oleh masing-masing penerima dan pengirim data dengan frekuensi yang sama. Penerima perlu mendeteksi adanya start bit sebagai awal pengiriman data, lalu komunikasi data terjadi antara dua buah shift register yang ada pada pengirim maupun penerima. Setelah delapan bit data diterima, penerima akan menunggu adanya stop bit yang menandai bahwa satu byte data telah terkirim dan penerima siap untuk menunggu pengiriman data berikutnya.aplikasi dari proses komunikasi asinkron biasanya digunakan untuk mengakses komponen-komponen yang mempunyai fasilitas UART (Universal Asinkronous Receiver/Transmiter) seperti port serial PC atau port serial mikrokontroler. Gambar 10 Kemasan data seri asinkron Universal Asynchronous Transmitter/Receiver (UART) UART merupakan salah satu sarana di dalam chip AT89C51 yang sangat berharga, sehingga IC dengan 40 kaki ini bisa melakukan komunikasi seri asinkron dengan mudah. MCS51 dilengkapi dengan sarana komunikasi data seri, sebagai anggota keluarga MCS51 AT89C51 juga mempunyai sarana itu selengkapnya. Sarana komunikasi seri tersebut bisa bekerja dalam 4 macam mode, 1 mode bekerja sebagai sarana komunkasi seri sinkron, tiga lainnya merupakan sarana komunikasi seri asinkron. Keempat macam mode kerja tersebut adalah : JREC Journal of Electrical and Electronics Vol 2. No.2 67 1. Mode 0 – bekerja sebagai sarana komunikasi data seri sinkron, data seri dikirim dan diterima melalui kaki RxD,sedangkan kaki TxD dipakai menyalurkan clock yang diperlukan komunikasi data sinkron. Data ditranmisikan per 8 bit dengan kecepatan transmisi data (Baud rate) tetap, sebesar 1/12 frekuensi kerja dari AT89C51 2. Mode 1 – mode ini dan 2 mode berikutnya merupakan sarana komunikasi seri asinkron. Data seri dikirim melalui kaki TxD, dan diterima dari kaki RxD. Data ditransmisikan per 10 bit, terdiri atas 1 bit Start („0‟), 8 bit data dan 1 bit stop („1‟). Kecepatan transmisi data (Baud Rate) ditentukan lewat Timer 1, bisa diatur untuk berbagai kecepatan. 3. Mode 2 - Data seri dikirim melalui kaki TxD, dan diterima dari kaki RxD. Data ditransmisikan per 11 bit, terdiri atas 1 bit Start („0‟), 8 bit data, 1 bit data tambahan (bit ke 9) dan 1 bit stop („1‟). Kecepatan transmisi data (Baud Rate) hanya bisa dipilih 1/32 atau 1/64 frekuensi kerja dari AT89C51. 4. Mode 3 - Data seri dikirim melalui kaki TxD, dan diterima dari kaki RxD. Data ditransmisikan per 11 bit, terdiri atas 1 bit Start („0‟), 8 bit data, 1 bit data tambahan (bit ke 9) dan 1 bit stop („1’). Sesungguhnya Mode 2 dan 3 sama persis, perbedaannya adalah kecepatan transmisi data (Baud Rate) mode 3 ditentukan lewat Timer 1, bisa diatur untuk berbagai kecepatan, persis sama dengan mode 1. Sedangkan untuk kecepatan transmisi (Baud Rate) merupakan suatu hal yang amat penting dalam komunikasi data seri asinkron, mengingat dalam komunikasi data seri asinkron clock tidak ikut dikirimkan, sehingga harus diusahakan bahwa kecepatan transmisi mengikuti standard yang sudah ada. Dalam AT89C51, clock untuk transmisi data dibangkitkan dengan sarana Timer 1 seperti yang digambarkan dalam diagram Gambar 2. Untuk keperluan ini, Timer 1 dioperasikan sebagai 8 bit auto reload timer (mode 2), artinya TL1 bekerja sebagai timer 8 bit menerima clock dari osilator kristal yang frekuensinya sudah dibagi 12 terlebih dulu, setiap kali pencacah (counter) nilainya menjadi 0 maka nilai yang sebelumnya sudah disimpan di TH1 secara otomatis diisikan lagi ke TL1, sehingga TL1 akan menghasilkan clock yang frekuensinya diatur oleh TH1, clock ini berikutnya dibagi lagi dengan 32 sebelum dipakai sebagai clock untuk UART. Hubungan frekuensi pada sistem tersebut dinyatakan dengan persamaan berikut : JREC Journal of Electrical and Electronics Vol 2. No.2 68 Ket : K = Konstanta SMOD = 2 32 = Lama pengiriman data 12 = Frekuensi 256 = Kapasitas RAM Keseluruhan Kalau kecepatan transmisi sudah ditentukan dan frekuensi kristal sudah dipastikan, maka nilai yang disimpan di TH1 bisa dihitung berdasarkan persamaan berikut : Dalam persaman di atas, K adalah konstanta yang nilainya 1 atau 2, tergantung pada nilai yang tersimpan di bit SMOD dalam register PCON. Jika SMOD=‟0‟ K bernilai 1 dan K akan bernilai 2 kalau SMOD=‟1‟. Perlu dicacat, setelah AT89C51 di-reset, SMOD akan bernilai „0‟, artinya jika tidak diatur lebih lanjut K bernilai 1. Untuk mendapatkan kecepatan transmisi yang umum dipakai dalam komunikasi data seri asinkron (1200 Baud, 2400 Baud, 4800 Baud, 9600 Baud dan 19200 Baud), dari persamaan di atas bisa diturunkan ternyata frekuensi kristal yang paling tepat adalah 11.059 MHz. Meskipun angka ini agak aneh, tapi karena banyak dipakai kristal dengan frekuensi ini amat mudah diperoleh dipasar. Karena kristal 11.059 MHz dipilih agar bisa membangkitkan kecepatan transmisi data seri standard, dalam sistem berbasis AT89C51 yang tidak menggunakan sarana komunikasi data seri asinkron lebih baik dipilih kristal dengan frekuensi 12 MHz, sehingga clock untuk timer bisa merupakan frekuensi bulan 1 MHz. Bahasa Assembly Untuk dapat digunakan, mikrokontroler harus diprogram terlebih dahulu. Bahasa pemrograman yang digunakan biasanya adalah bahasa assembly. Bahasa assembly merupakan bahasa pemrograman tingkat rendah. Program ditulis dalam kode mnemonic, dinamakan sebagai kode sumber yang belum bisa diterima oleh prosesor untuk dijalankan dan harus diterjemahkan dulu menjadi bahasa mesin dalam bentuk kode biner. Program sumber ditulis menggunakan editor biasa. Selanjutnya program sumber diterjemahkan ke bahasa mesin dengan menggunakan compiler. JREC Journal of Electrical and Electronics Vol 2. No.2 69 Sama halnya dengan bahasa pemrograman lainnya, bahasa assembly dapat dibuat secara modular, sehingga dapat dipecah dalam bentuk modul-modul kemudian diintegrasikan kembali. Keistimewaan bahasa assembly dibandingkan dengan bahasa pemrograman lainnya, adalah: 1. Ukuran program relatif kecil, sehingga lebih menghemat media penyimpanan program. 2. Lebih dekat dengan hardware, sehingga seluruh kemampuan perangkat keras dapat dimanfaatkan secara maksimal. Gambar 11 Bagan Kerja Proses Bahasa Assembly (Sutanto, 2001) Komunikasi Serial RS_232 Komunikasi RS-232 bersifat asinkron artinya sinyal clock menggunakan start bit dan internal clock pada masing-masing komputer. Gambar dibawah ini menunjukkan bentuk sinyal RS-232.tidak dikirimkan bersamaan dengan data. Masing-masing word disinkronkan seperti yang terlihat pada gambar di bawah ini. Mark Start -10V 0 Space 1 2 3 4 5 6 7 Stop +10V Gambar 12. Sinyal RS-232 Salah satu perangkat atau komponen yang sering digunakan adalah IC MAX-232 yang memiliki charge pump yang dapat menghasilkan tegangan +10V dan –10V dari satu catu daya 5V. Salah satu JREC Journal of Electrical and Electronics Vol 2. No.2 70 aplikasi dari penggunaan IC MAX-232 adalah untuk keperluan komunikasi serial dengan berbagai jenis mikrokontroler. Bentuk diagram pin dan rangkaian umum RS-232 adalah sebagai berikut : Gambar 13 Diagram pin IC MAX-232 dan rangkaian umum Keterangan dan fungsi kaki-kaki IC MAX232 adalah sebagai berikut : 1. Kaki 1 - 3 (C1+, V+ dan C1-) adalah untuk pengganda tegangan dari 5V menjadi 10V. 2. Kaki 4 - 6 (C2+, C2-, dan V-) untuk merubah tegangan dari +10V menjadi –10V. 3. Kaki 8 - 9 dan 12 – 13 (R2 IN / R2 OUT dan R1 IN / R1 OUT) tegangan sinyal data RS232 diterima pada Pin R2 IN dan dirubah menjadi TTL lalu dikeluarkan pada Pin R2 OUT. 4. Kaki 7, 10, 11, dan 14 ( T2 OUT / T2 IN dan T1 IN / T1 OUT) pengiriman data serial dalam logika TTL dimasukkan ke Pin T1 IN selanjutnya dirubah levelnya menjadi logika RS232 dan dikeluarkan pada Pin T2 OUT. 5. Kaki 15 sebagai Ground. 6.Kaki 16 sebagai VCC 5V Proses Perubahan level TTL ke RS232 IC digital, termasuk mikrokontroler, umumnya bekerja pada level tegangan TTL, yang dibuat atas dasar tegangan catu daya +5 volt. Rangkaian input TTL menganggap tegangan kurang dari 0,8 volt sebagai level „0‟ dan tegangan lebih dari 2 volt dianggap sebagai level tegangan „1‟ level tegangan ini sering dikatakan sebagai level tegangan TTL. Untuk menjamin output bisa diumpankan ke input dengan baik, tegangan output TTL saat level „0‟ dijamin lebih rendah dari 0,4 volt, atau 0,4 lebih rendah dari tegangan yang dituntun oleh input TTL. Sedangkan tegangan output TTL pada level „1‟ dijamin lebih tinggi dari 2,4 volt, atau 0,4 volt lebih tinggi dari tegangan yang dituntut oleh input TTL. Beda tegangan sebesar 0,4 volt ini disebut sebagai noise margin dari TTL. JREC Journal of Electrical and Electronics Vol 2. No.2 71 Hampir semua komponen digital bekerja pada level tegangan TTL, dengan demikian dalam membentuk saluran RS232 diperlukan pengubahan level tegangan timbal balik antara DB9 dan IC MAX 232 yaitu : RS232 Line Driver, berfungsi mengubah level tegangan TTL ke level tegangan RS232. RS232 Line Receiver, berfungsi mengubah level tegangan RS232 ke level tegangan TTL. Agar bisa bekerja pada level tegangan –12 Volt sampai + 12 Volt, tegangan catu daya untuk IC ini adalah –12 Volt dan +12 Volt, hal ini dirasakan sangat merepotkan. Untuk mengatasi kerepotan catu daya ini, belakangan beredar IC MAX232 yang berisikan 2 buah RS232 Line Driver dan 2 buah RS232 Line Receiver, tapi dalam IC tersebut dilengkapi pula dengan pengganda tegangan DC, sehingga meskipun catu daya untuk IC MAX232 hanya +5 Volt, tapi sanggup melayani level tegangan RS232 antara –10 Volt sampai +10 Volt. Gambar 14 Level Tegangan TTL Kabel Data Konektor handphone Siemens S25, S35, M35, C35 dapat dilihat pada gambar 2.15 Gambar 15 Konektor Handphone S23, C35, M35, S25 JREC Journal of Electrical and Electronics Vol 2. No.2 72 Gambar 16 Skematik Diagram Interface S25, C25, M35 dengan PC Dari semua skematik yang ada dapat dilihat bahwa semuanya hampir sama baik koneksi dengan RS232 port maupun pada bagian power supply-nya namun hanya berbeda pada bagian koneksi di port handphone-nya. Dari kondisi demikian bukanlah tidak mungkin dibuat suatu interface universal untuk berbagai tipe handphone dengan menggunakan kabel interface khusus untuk tiap-tiap handphonenya. Penyangga ULN2803 ULN2803 berfungsi untuk membalik keadaan sinyal logika tinggi menjadi logika rendah dan sinyal logika rendah menjadi logika tinggi. Umumnya ULN2803 digunakan sebagai komponen pendukung JREC Journal of Electrical and Electronics Vol 2. No.2 73 misalnya pada rangkaian kontaktor relay, rangkaian pengendali motor DC, dan sebagainya. ULN2803 memiliki 18 pin, yaitu 8 pin untuk saluran input ( 1 – 8 ), 8 pin untuk saluran output (11 – 18 ), dan 2 pin untuk terminal catu daya (VCC dan GND). Pada bagian internal ULN2803 tersusun oleh delapan buah transistor NPN yang membentuk rangkaian darlington. Masing-masing pasangan transistor darlington memiliki tahanan basis sebesar 7.2 KΏ. Pada bagian kolektor transistor Q1 dan Q2 terhubung ke dioda untuk terminal VCC dan pada bagian kolektor transistor Q1 dengan bagian emitor transistor Q2 terhubung ke dioda untuk saluran output dan sebagai pengaman terhadap arus balik (bias reverse) jika terjadi induksi balik dari beban yang bersifat induktif. Gambar 2.16 menunjukkan konstruksi internal ULN2803A. Gambar 17 Konstruksi Internal ULN2803 Blok Diagram Perancangan. Feedback Relay 1 TTL-RS Feedback Relay 2 Feedback 232 Mikro Feedback Relay 3 kontroler Feedback Relay 4 Gambar 18. JREC Journal of Electrical and Electronics Vol 2. No.2 Data Cable Handphone 74 Blok Diagram Perancangan. Prosedur/Langkah-langkah Perakitan Sebelum menguraikan langkah-langkah perakitan alat dan pembuatan Program, penulis akan terlebih dahulu melampirkan komponen-komponen apa saja yang digunakan pada rangkaian Pengontrol peralatan rumah tangga melalui teknologi SMS ini. Tabel 3.1menunjukan daftar komponen lengkap. Daftar komponen lengkap Tabel 2 Tabel komponen lengkap No. No. Komponen Nama Komponen 1. R1 Resistor 4.7 ohm 2. R2 Resistor 4.7 ohm 3. R3 Resistor 1K 4. R4 Resistor 1K 5. R5 Resistor 1K 6. R6 Resistor 1K 7. R7 Resistor 8K2 8. C1 Kapasitor 4.7 u 9. C2 Kapasitor 0.1 u 10. C3 Elko 4.7u/50v 11. C4 Elko 4.7u/50v 12. C5 Elko 4.7u/50v 13. C6 Kapasitor 33p 14. C7 Kapasitor 33p 15. C8 Elko 4.7u/50v 16. C9 Kapasitor 10 u JREC Journal of Electrical and Electronics Vol 2. No.2 75 17. C10 Elko 220u/25v 18. C11 Kapasitor 0.1 u 19. X1 Kristal 11.0592 Mhz 20. D1 Led 21. D2 Led 22. D3 Led 23. D4 Led 24. D5 Dioda IN4007 25. D6 Dioda 4007 26. F1 Fuse 5A 27. TRAFO Trafo 2A 28. SW1 Saklar ON/OFF 29. U1 IC ATMEL AT89C51 30. U2 IC MAX232 31. U3 IC ULN 2803 32. U4 IC LM7805 33. K1 RELAY 12V 34. K2 RELAY 12V 35. K3 RELAY 12V 36. K4 RELAY 12V 37. JI Stop kontak 220 V 38. J2 Stop kontak 220 V 39. J3 Stop kontak 220 V 40. J4 Stop kontak 220 V 41. J5 Stop kontak 220 V JREC Journal of Electrical and Electronics Vol 2. No.2 76 Proses Perakitan Alat Pada proses perakitan alat, pertama-tama penulis akan menjelaskan bagaimana proses pembuatan tata letak komponen sampai dengan proses penyolderan. Proses-proses tersebut akan diuraikan sebagai berikut A. Proses pembuatan tata letak komponen Alat-alat yang diperlukan pada proses ini terdiri dari kertas polos, sebuah pencil, pulpen dan penggaris. Pertama-tama akan dibuat ukuran komponen yang digunakan sesuai dengan ukuran kakinya masing-masing pada kertas polos atau pada kertas HVS, usahakan agar jarak antar kaki komponen yang satu dengan yang lainnya tidak saling bersentuhan. Aturlah tata letak komponen ini serapi mungkin sesuai dengan yang diinginkan B. Proses pembuatan Layout Alat-alat yang diperlukan adalah selembar kertas polos, pencil, pulpen dan pengaris. Setelah pembuatan tata letak komponen telah selesai maka, langkah selanjutnya adalah perancangan layout. Pada perancangan ini akan menggunakan sarana Protel pada komputer. Sebelum proses pembuatanya, terlebih dahulu merancang Layout itu pada selembar kertas polos, setelah pembuatan itu selesai, salinlah hasil rancangan tersebut pada sarana Protel. Pada saat penyalinan usahakan dibuat sebagus dan serapi mungkin jangan sampai jalur yang satu dengan yang lainnya saling bersentuhan karena akan mengakibatkan hubung singkat ( konslet ) pada saat komponen dipasang dan diaktifkan C. Proses Print out Layout Setelah pembuatan Layout di Protel selesai, print out kan hasil rancangan tersebut dengan menggunakan Printer Laser di selembar plastik transparan D. Proses pemindahan Layout ke PCB Pada proses ini akan digunakan alat-alat seperti strika, isolasi ( Plakban ) dan kain bersih. Pertama-tama, letakkan hasil printout yang menggunakan plastik transparan tersebut di bagian atas yang terlapisi tembaga pada PCB, dan usahakan serapi mungkin jangan sampai miring, kemudian berikan isolasi agar tidak goyang, setelah itu lapisi plastik transparan tadi dengan menggunakan kain bersih, tujuan pemberian kain bersih adalah agar plastic trasparan tersebut tidak meleleh pada saat penekanan yang menggunakan JREC Journal of Electrical and Electronics Vol 2. No.2 77 strika. Setelah itu panaskan strika sampai benar-benar panas kemudian tekanlah dengan perlahan-lahan ke layout yang akan dicetak pada papan PCB kurang lebih 6-7 detik. Lihatlah hasil cetakan tadi apakah sudah benar-benar sempurna, apabila belum lakukanlah berulang-ulang sampai hasil cetakan sudah benar-benar sempurna. E. Proses pelarutan Alat dan bahan yang digunakan adalah larutan ferro Chlorit, air bersih, ember ataupun baskom dan tiner. Campurlah larutan Ferro Chlorit dengan air bersih secukupnya, setelah itu masukan papan PCB yang telah tercetak layout kedalam larutan, kemudian goyanglah larutan tadi secara perlahan-lahan agar tembaga yang tidak terlapisi jalur layout lamakelamaan akan menipis dan hilang karena terkikis oleh larutan Ferro Chlorit. Apabila sudah selesai maka angkat papan PCB tersebut lalu kemudian cuci dengan air bersih dan bersihkan dengan tiner. F. Proses pengeboran Pada proses pengeboran ini akan digunakan bor dengan mata bor sesuai dengan besarnya kaki komponen yang digunakan. Sebelum proses pengeboran maka akan dilakukan suatu proses yang sangat penting yaitu melakukan proses penitikan pada masing-masing titik kaki komponen yang akan dibor dengan menggunakan penitik yang bisa terbuat dari paku ataupun sejenisnya. Tujuan pemberian titik pada setiap titik kaki komponen adalah agar pada saat pengeboran lebih mudah melakukannya dengan hasil yang memuaskan. G. Proses pemasangan komponen pada PCB Pada proses ini sebenarnya tidak begitu sulit dibandingan dengan proses-proses sebelumnya karena hanya memasang komponen sesuai dengan letaknya masing-masing, tetapi pada proses pemasangan komponen seperti IC, dioda, relay, elco dan sebagainya yang memiliki perbedaan antara kutub yang satu dengan kutub yang lain, harus lebih teliti dan jangan sampai terbalik karena apabila sampai terbalik maka akan terjadi hubung singkat pada saat rangkaian diaktifkan. H. Proses penyolderan Ini adalah proses terakhir dalam perancangan alat. Pada proses penyolderan ini pertamatama kita panaskan terlebih dahulu solder sampai benar-benar panas, lalu tempelkan solder dan timah secara bersamaan pada kaki komponen yang akan disolder, setelah selesai lihat hasil solderannya apakah sudah sempurna ( hasil solderan yang sempurna adalah lancip dan mengkilap ) apabila kurang sempurna sedotlah hasil solderan tersebut JREC Journal of Electrical and Electronics Vol 2. No.2 78 dengan menggunakan penyedot timah, tetapi usahakan proses penyolderannya cukup satu kali karena apabila dilakukan berulang-ulang maka akan mengakibatkan komponen dan jalur layoutnya akan menjadi rusak. Pada saat penyolderan kaki IC usahakan sehati-hati mungkin karena jarak kaki yang satu dengan yang lain sangat berdekatan dan apabila kaki yang satu dengan yang lain terhubung maka akan terjadi hubung singkat pada saat rangkaian diaktifkan. Perancangan Perangkat lunak ( Flow Chart ) Start Inisialisasi Serial Port Matikan Semua Relay Baca SMS Baru Pada Handphone Tidak SMS berisi SMS menanyakan kondisi relay? Kontrol Relay ? Tidak Tidak Kirim SMS balasan berisi Atur On/off Relay 1-4 sesuai dengan SMS Yang baru masuk ya kondisi relay 1-4 Saat ini Hapus SMS dari yaKotak Masuk End Gambar 19. Flow Chart JREC Journal of Electrical and Electronics Vol 2. No.2 ya 79 Pertama kali yang dilakukan adalah menginisialisai serial port yaitu mengatur Baud Rate sebesar 19200 bps, selanjutnya adalah mematikan seluruh Relay. Setiap saat Mikrokontroler melakukan pembacaan apakah ada SMS yang baru masuk pada handphone, bila ada maka Mikrokontroler akan melakukan pengecekan apakah SMS yang baru tersebut berisi kontrol Relay, bila iya maka pesan SMS tersebut akan disimpan di memori Mikrokontroler dan pesan yang ada pada handphone akan di hapus oleh Mikrokontroler, setelah pesan dihapus barulah di kontrol on/off Relay sesuai dengan pesan yang diterima tadi. Kemudian Mikrokontroler akan melihat kondisi pada Relay melalui tegangan yang didapatkan dari umpan balik Relay yaitu port P1.4 sampai dengan P1.7. Selanjutnya Mikrokontroler akan mengontrol handphone untuk mengirimkan pesan SMS yang berisi kondisi Relay. Gambar Rangkaian Lengkap Disini penulis akan memperjelaskan fungsi sebenarnya dari komponen utama sampai dengan komponen pendukung yang dibutuhkan untuk perakitan alat pada Tugas Akhir ini dalam bentuk rangkaian lengkap perancangan. Di dalam rangkaian ini akan terlihat secara jelas tentang awal proses pengiriman data mulai dari permintaan mikrokontroler dalam bentuk karakter (AT+CMGL=0) ke handphone sampai dengan handphone mengirimkan pesan yang berupa perintah untuk mengontrol perangkat elektronik. Gambar 3.4 menunjukan gambar rangkaian lengkap perancangan. F1 +5V 8 4 J2 FB1 9 8 K2 K2 1 2 AC OUT 1 J3 FB2 +12V 1 2 AC OUT 2 +5V C7 33p 18 +5V R4 1K R5 1K R6 1K 8 K3 K3 R3 1K 9 VC C 4 9 13 16 1 K1 K2 K3 K4 4 18 17 16 15 14 13 12 11 13 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8 C6 33p 4.7u/50V J4 FB3 1 2 AC OUT 3 1 +12V C9 10u D1 D2 D3 D4 U4 LM7805 2 D5 VOUT 3 GN D C11 0.1u VIN 1 +12V IN40079VAC C10 + 8 4 6 D6 2200u/25V IN40079VAC 5 1 TRAFO GND JREC Journal of Electrical and Electronics Vol 2. No.2 FB3 FB4 FB2 FB1 +12V 8 9 K4 K4 16 R7 8K2 +5V ULN2803 16 IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8 1 FB1 FB2 FB3 FB4 X1 11.0592MHz XTAL2 10 U3 1 2 3 4 5 6 7 8 4 GN D ALE/PROG 1 2 3 4 5 6 7 8 19 1 LINE 220VAC 2 +12V 13 30 RST 5 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 XTAL1 + C5 4.7u/50V 29 PSEN 31 C8 C2- 4 20 R2IN GN D C2+ V- 8 T2IN 15 10 3 EA/VPP MAX232 1 P3.0/RXD P3.1/TXD P3.2/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD 9 C+ C1- 10 11 12 13 14 + C4 4.7u/50V 15 16 17 ON/OFF K1 K1 COM 2 16 9 R2OUT 14 T1OUT 7 T2OUT 13 R1IN 6 R2 4.7 12 R1OUT 11 T1IN V+ VC C U2 R1 4.7 + TO HP 5 9 4 8 3 7 2 6 1 39 38 37 36 35 34 33 32 GN D + DB9 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 5A J1 2 9 C3 4.7u/50V P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 AT89C51 21 22 23 24 25 26 27 28 1 40 C2 0.1 +12V 13 U1 C1 4.7u SW1 1 16 + +12V J5 FB4 1 2 AC OUT 4 80 Gambar 20. Gambar Rangkaian Lengkap Cara Kerja Rangkaian Untuk mengontrol peralatan rumah tangga, maka cara kerja rangkaian dimulai dari pengaturan kecepatan komunikasi sebesar 19200 bps. Sementara untuk mengirim 1 byte data dibutuhkan 10 bit data yg terdiri 1 start bit, 8 bit data, 1 stop bit. Jadi kecepatan 19200 bps ini setara dengan 1920 Bps. Lebarnya sinyal 1 bit adalah 1/19200 = 52 mikro detik. Mikrokontroler setiap saat mengirim karakter AT+CMGL=0 ke hp. Hasil keluaran dari mikrokontroler adalah dalam taraf TTL (Transistor Transistor Logic) Keluaran mikrokontroler pada pin TxD ini dihubungkan ke pin T1in dari ICL232 yang mana akan menghasilkan taraf tegangan RS-232 (Recomanded Standart) pada pin T1Out-nya. Sinyal dalam taraf RS-232 ini diumpankan ke kabel interface handphone yang selanjutnya masuk ke hp. Hp akan menerima data ini, dan diproses sebagai permintaan agar Hp mengirimkan data SMS yang belum dibaca melalui port komunikasi pada Hp. Bila ada SMS masuk yang belum dibaca, maka hp mengirimkan karakter-karakter yang sesuai dengan pesan yang belum dibaca tersebut melalui port komunikasi Hp yang selanjutnya diteruskan oleh kabel data untuk masuk ke pin R1in dari ICL232. Sinyal tegangan yang diterima oleh R1in ini masih dalam taraf RS-232 akan diubah menjadi taraf tegangan TTL dan dikeluarkan pada pin R1Out yang selanjutnya diterima oleh mikrokontroler pada pin RxD-nya. Data SMS yang dikirim dari handphone masuk ke db 9 (tegangannya masih berupa tegangan RS-232) pin-pin yang digunakan pada db9 adalah pin 2, 3, 5. Pin 2 (penerima data dari hanphone untuk masuk ke mikrokontroler) dari pin 2 (db9) masuk ke pin 13 MAX-232 (pin R1 in) yaitu menerima data dalam bentuk RS232 dan akan dirubah menjadi data dalam bentuk TTL pada pin R1 out nya (pin 12). Sebelum masuk ke MAX-232 diberikan R1 (2,2 Kohm) sebagai pengaman. Dari pin 12 (R1out) data diteruskan ke mikrokontroler masuk pada pin10 (pin 10 bisa dipergunakan sebagai penerima data serial). Didalam mikrokontroler data serial tadi ditampung di serial buffer. Setelah data itu lengkap maka ada indikator bahwa data tersebut telah lengkap 10 bit, yang mana 1 start 8 data 1 stop, maka di mikrokontroler tersebut indikatornya (Ri) menjadi „1‟ jika belum lengkap r1= „0‟. Keterangan Ri adalah bit indikator bahwa data serial telah lengkap diterima terdapat pada speciual function register (SFR=128 byte) SCON. JREC Journal of Electrical and Electronics Vol 2. No.2 81 +5V + C3 4.7u/50V U2 R2 4.7 4.7 9 14 7 13 R2OUT T1OUT T2OUT R1IN R1OUT T1IN C+ MAX232 10 T2IN C1C2+ R2IN 6 V- 8 GND R1 C2- 12 11 Ke RxD Microcontroller Dari TxD Microcontroller 1 + 3 C4 4.7u/50V 4 + 5 C5 4.7u/50V 15 5 9 4 8 3 7 2 6 1 12 11 10 9 8 7 6 5 4 3 2 1 2 V+ 16 VCC DB9 Connector Interface Siemens C45 + C8 4.7u/50V Gambar 21. Gambar rangkaian TTL-RS (MAX) 232 Setelah data ini lengkap diterima barulah data ini dipindahkan ke akumulator agar data yang terdapat dalam serial buffer tidak tertimpa oleh data berikutnya yang akan masuk, maka diproseslah data pada mikrokontroler, data tersebut dibandingkan byte per byte apakah telah cocok dengan format data setting S1 s/d S4, apabila data telah cocok, maka mikrokontroler akan memerintahkan untuk mengontrol (on/off) relay. Sebagai contoh penulis akan menghidupkan relay 1. Maka dari mikrokontroler akan mengirimkan logika „1‟ pada pin 1 (port 1.0) pin ini akan terhubung pada pin1 dari IC ULN2803 (pada ULN2803 didalamnya terdiri dari 2 transistor NPN, dan pada pin1 nya adalah Basis) sehingga apabila diberikan tegangan „1‟ maka transistor akan bekerja, sementara pin18 (out) adalah Colector dari transistor tersebut, maka apabila transistor tersebut mendapat triger dan bekerja maka tegangan pada colector akan low (rendah). Sementara pada relay (mempunyai kaki. 1-2 gulungan relay, 6-5 normali open, , 4-3 normali open). Pin1 pada relay telah mendapakan +12 Volt, semantara pin 2 mendapatkan supply dari colector yaitu pin 18, karena pin 18 tersebut sudah di triger dan dalam kondisi low, maka pada relay terdapat beda tegangan, sehingga arus mengalis melintasi gulungan relay, sehingga relay bekerja. Pin 6 dan 5 pada relay berfungsi sebagai saklar yang dihubungkan ke perangkat elektronik, jadi apabila saklar menutup maka alat elektronik seolah-olah akan dinyalakan. Pada rangkaian relay ke stop kontak terdapat kapasitor C 1nF/1KV yang berfungsi untuk meredam apabila terjadi bunga api pada saat dilakukan pengontakan sehingga dapat mengamankan peralatan elektronik yang akan di kontrol. Fungsi Dioda 1N4007 berfungsi untuk menjaga agar tegangan pada tetap 12 volt juga berfungsi sebagai pengaman. Trafo yang kita gunakan adalah trafo step down CT1A. Tegangan input primer 220 Volt, tegangan sekunder pada pin CT terhadap pin 9Volt adalah 9 Volt AC, CT terhadap 12 Volt = 12Volt AC, sementara tegangan yang dibutuhkan oleh rangkaian adalah tegangan DC, untuk merubah tegangan AC ke DC yang dibutuhkan, digunakan dioda D1 dan D2 (IN4007) dioda ini berfungsi menyarahkan tegangan yang keluar dari sekundar trafo. Agar didapatkan tegangan keluaran yang diinginkan yaitu VDC, maka kita JREC Journal of Electrical and Electronics Vol 2. No.2 82 tambahkan capacitor (220 mikrofarad) yang berfungsi untuk meratakan tegangan yang telah disearahkan oleh dioda tersebut. Sehingga didapatlah tegangan keluaran yang besarnya ± 13 volt, tegangan ini masih belum murni tegangan DC, tapi sudah bisa kita gunakan untuk mensupply tegangan pada relay. Sedangkan supply tegangan untuk rangkaian yang dibutuhkan adalah sebesar 5 volt DC. Dari tegangan yang didapatkan diatas (13 Volt DC) kalau kita lihat dengan menggunakan Osciloscop tegangan tersebut masih belum murni VDC, tegangan tersebut masih beriak (bergelombang), sehingga kita tambahkan LM7805 sebagai regulator (bisa kita analogikan sebagai Dioda Zener, yang berfungsi meratakan tegangan menjadi murni DC dan didapatkanlah tegangan yang diinginkan yaitu sebesar 5 Volt D. ANALISA DAN PEMBAHASAN Setelah selesai melaksanakan proses perancangan alat maka, langkah selanjutnya penulis akan menyempurnakan alat tersebut dengan cara mengadakan uji coba dan sekaligus menganalisanya Proses Uji Coba Alat Untuk mempermudah mengontrol peralatan listrik yang ada didalam rumah tangga, maka dibuatlah alat pengontrol yang dapat mematikan dan menghidupkan peralatan tersebut. Disini penulis akan mencoba alat tersebut dengan mengirimkan SMS ke Handphone pengontrol dengan isi pesan adalah S1 off, s2 on, s3 off, s4 on maka handphone tersebut akan mengirimkan pesan tadi dalam bentuk data yang terdiri dari 10 bit lalu masuk ke kabel data dan diterima oleh pin 13 (pin R1 in) ICMAX 232 (tegangan data masih dalam taraf RS) dan kemudian akan dirubah menjadi data dalam bentuk taraf TTL pada pin R1 out nya (pin 12). Dari pin 12 (R1 out) data diteruskan ke Mikrokontroler dan diterima oleh pin 10 yang berfungsi sebagai penerima data serial lalu data tersebut (data lengkap 10 bit) langsung di tampung di Akumulator sehingga menyebabkan data tadi diproses oleh Mikrokontroler untuk mengontrol peralatan rumah tangga yang ada pada S1 sampai dengan S4. Tabel 2. Tabel Uji Coba No. SAKLAR 1. Saklar 1 PERINTAH SMS Mematikan peralatan pada KETERANGAN Kondisi Relay 1 OFF (K1) stop kontak 1 (J1) 2. Saklar 2 Menyalakan peralatan pada Kondisi Relay 2 ON (K2) stop kontak 2 (J2) JREC Journal of Electrical and Electronics Vol 2. No.2 83 3. Saklar 3 Mematikan peralatan pada Kondisi Relay 3 OFF (K2) stop kontak 3 (J3) 4. Saklar 4 Menyalakan peralatan pada Kondisi Relay 4 ON (K4) stop kontak 4 (J4) Listing Program Untuk Kondisi MHMH ;R2 = Time to send ;R3 = New SMS Location ;R4 = ADC ;R5 = Setting ;R6 - R7 = Delay ;10h = Counter of Sender ;11-1Fh = Sender “INISIALISASI PORT SERIAL Start: Mov TMod,#20h ; masukan timer mode(8 bit register)dengan 20 h (8 bit auto reload) Mov Pcon,#80h ; masukan (power control register) dengan 80 h (menggandakan Baud Rate) Mov Th1,#FDh ; masukan timer 1 dengan FDH (253) Mov SCon,#50h ; masukan (serial port control register) yang merupakan 8 bit UART ; Baud = 19200 bps Setb Tr1 ; aktifkan timer 1 “MATIKAN SEMUA RELAY Clr P1.0 Clr P1.1 Clr P1.2 Clr P1.3 ; non aktifkan relay 0 ; non aktifkan relay 1 ; non aktifkan relay 2 ; non aktifkan relay 3 Setb Tr0 ; aktifkan timer 0 “BACA SMS BARU PADA HANDPHONE ; Dilakukan pembacaan SMS baru yang masuk, yaitu dengan mengirimkan karakter AT+CMGL=0 ke Hp melalui jalur data HP. Check_New_SMS: Mov Dptr,#Read_Command ; isi petunjuk data (Dptr) dengan Read Command Check_New_SMS_1: JREC Journal of Electrical and Electronics Vol 2. No.2 84 Clr A Movc A,@A+Dptr Jz Read_New_SMS Mov Sbuf,A Jnb Ti,$ Clr Ti Inc Dptr Sjmp Check_New_SMS_1 ; lakukan pengiriman data karakter satu per satu ; Baca SMS baru yang akan memiliki 2 kemungkinan yaitu yang pertama apabila kalau ada pesan baru maka karakternya : AT + CMGL=0 + CMGL=_1,2,50 keterangan : 1= daftar inbox, 2= lokasi pesan pada HP, 50 = panjang pesan ; dan apabila tidak ada pesan baru maka karakternya : AT + CMGL =0 OK ; Dari perbedaan respon diatas terlihat apabila ada pesan baru yang berupa pesan balasan dari HP, yang terletak pada baris kedua dimulai dari karakter „+‟. Untuk itu perlu dilakukan pembacaan terhadap karakter ganti baris (0Ah). Read_New_SMS: Jnb Ri,$ Mov A,Sbuf Clr Ri Cjne A,#0Ah,Read_New_SMS Cpl P1.1 ; Setelah karakter 0A didapati tunggu karakter berikutnya, jika karakter tidak berisi „+‟ maka ini berarti tidak ada pesan baru Wait_Read_1:Jnb Ri,$ Mov A,Sbuf Clr Ri Cjne A,#'+',No_New_Message ; menunggu karakter yang masuk, jika 0 lompat ke R1 (JnbR1,$) ; karakter yang masuk simpan ke Akumulator ; bandingkan apakah data karakter = „+‟ ; Apabila pesan baru masuk maka cari lokasinya, lokasi itu terletak dibelakang karakter spasi dan didepan karakter „ , „ Get_Message_Location: Jnb Ri,$ Mov A,Sbuf Clr Ri Cjne A,#' ',Get_Message_Location JREC Journal of Electrical and Electronics Vol 2. No.2 85 ; Jika karakter yang diterima = spasi („ „ ) maka tunggu karakter berikutnya Get_Message_Location_1: Jnb Ri,$ Mov A,Sbuf Clr Ri Mov 1Fh,A ; sub rutin pembacaan lokasi pesan pada Sim Card ; simpan data yang masuk ke RAM 1Fh ( penampung lokasi pesan sementara ) ; Setelah data ditampung pada RAM 1Fh, selanjutnya baca karakter berikutnya. Jika karakter berikutnya adalah „,‟ maka pesan tersebut tersimpan pada lokasi Sim Card < 10, tetapi jika karakter selanjutnya bukan „,‟ maka ini berarti pesan tersimpan pada lokasi Sim Card > 10 (2 digit) Get_Message_Location_2: Jnb Ri,$ Mov A,Sbuf Clr Ri Cjne A,#',',Get_Message_Location_3 Mov A,1Fh Anl A,#0Fh Mov R3,A Sjmp Get_Message_Location_4 No_New_Message: Ajmp Adjust_Condition ; bandingkan lokasi pesan 3 dengan „,‟ yang ada pada Akumulator ; isikan 1Fh ke dalam Akumulator ; isikan akumulator ke R3 (tempat menyimpan pesan) ; lompat ke Adjust Condition ; Di karenakan lokasi pesan adalah 2 digit maka nilai yang tersimpan pada RAM 1Fh yang merupakan nilai puluhan dikalikan dengan 10 dan selanjutnya ditambahkan dengan data yang baru diterima Get_Message_Location_3: Anl A,#0Fh A Mov 1Eh,A Mov A,1Fh Anl A,#0Fh Mov B,#0Ah Mul AB Add A,1Eh Mov R3,A Get_Message_Location_4: Jnb Ri,$ Mov A,Sbuf Clr Ri Cjne A,#0Ah,Get_Message_Location_4 ; And kan data 0Fh dengan data yang ada di Akumulator : isikan akumulator ke dalam 1 Eh : isikan 1Fh ke Akumulator : And kan nilai/data 0Fh ke Akumulator ; isikan nilai/data 0Ah ke B ; kalikan Akumulator dengan B ; tambahkan hasil perkalian(akumulator) diatas dengan 1Eh ; lokasi dari hexadecimal ; jika 0 lompat ke Ri ; bandingkan akumulator yang bernilai 0Ah dengan lokasi pesan 4 JREC Journal of Electrical and Electronics Vol 2. No.2 86 MENGHILANGKAN SMS CENTER ; Pesan yang masuk ikut menyertakan SMS Center dari nomor pengirim. Data ini tidak diperlukan sehingga program akan mengabaikan sejumlah data sesuai panjang dari SMS Centernya. SMS_Center: Jbc Ri,SMS_Center_1 Sjmp SMS_Center ; jika SMS Center 0, lompat ke Ri ; Bila ada yang masuk , lakukan perhitungan SMS Center SMS_Center_1: Jnb Ri,$ Mov A,Sbuf Clr Ri Acall Ascii_To_Hex Mov B,#02h Mul AB Add A,#03h Mov R7,A ; panggil Ascii ke Hex ; isikan nilai 02h ke B ; kalikan A dengan B ; tambahkan nilai 03h dengan Akumulator ; isiakan Akumulator ke R7 ; Panjangnya SMS Center telah tersimpan di R7, maka abaikan data yang masuk sebanyak R7 SMS_Center_2: Jnb Ri,$ Mov A,Sbuf Clr Ri Djnz R7,SMS_Center_2 ; turunkan SMS Center 2 ke R7 ; Selanjutnya dilakukan penyimpanan nomor HP pengirim pada RAM Sender: Jnb Ri,$ Mov A,Sbuf Clr Ri Mov 11h,A Acall Ascii_To_Hex Jnb A.0,Sender_1 Inc A Sender_1: Add A,#02h Mov 10h,A Mov R7,A Mov R0,#12h ; isikan akumulator ke 11h (sebagai pengirim) ; panggil Ascii ke Hex ; naikkan Akumulator ; tambahkan nilai 02h ke Akumulator ; isikan akumulator ke 10h (tempat pengiriman) ; isikan Akumulator ke R7 ; isikan 12h (sebagai pengirim) ke R0 Sender_2: Jnb Ri,$ Mov A,Sbuf JREC Journal of Electrical and Electronics Vol 2. No.2 87 Clr Ri Mov @R0,A Inc R0 Djnz R7,Sender_2 ; isikan akumulator ke RAM R0 ; naikkan R0 ; Kemudian dilakukan pengabaian informasi-informasi yang tidak diperlukan yaitu sebanyak 20 karakter (seperti waktu pengiriman berupa jam, tanggal , bulan, dan tahun) MEMPEROLEH PESAN ; Setelah informasi-informasi diatas diterima, barulah isi pesan diterima.Proses pengindentifikasian pesan dengan cara menampung pesan ini pada RAM 21h dan seterusnya dan kemudian dibandingkan dengan kombinasi 17data sah (valid) yang telah disimpan pada Mikrokontroler. Mov R1,#21h Get_Message: Jnb Ri,Get_Message Clr Ri Mov @R1,Sbuf Mov R7,#0Fh Inc R1 Cjne R1,#80h,Get_Message Sjmp Compare_MHMH Override: Djnz R7,Get_Message_1 ; isikan serial buffer ke RAM R1 yang bernilai 21h ; bandingkan pesan yang bernilai 80h dengan R1 MEMBANDINGKAN PESAN Compare_MHMH: Mov Dptr,#MHMH Mov R1,#21h Compare_MHMH_B: Clr A Movc A,@A+Dptr ; bandingkan pesan yang masuk dengan kondisi MHMH ; isikan data/karakter MHMH ke data pointer ; isikan nilai 21h (pesan disimpan) ke R1 (tempat Penyimpanan pesan) Jz Valid_MHMH Mov B,@R1 Cjne A,B,Compare_MHHM Inc Dptr Inc R1 Sjmp Compare_MHMH_B ; isikan dan clear akumulator dengan data pointer RAM ke Akumulator ; jika 0 tetapkan kondisi MHMH ; isikan RAM R1 ke B ; bandingkan A,B dengan kondisi pesan MHHM ; naikkan data pointer ; naikkan R1 ; lompat dan bandingkan ke MHMH_ B Valid_MHMH: Mov 20h,#05h Ajmp Handle ; isikan 05h ke 20h ; lompat ke Handle JREC Journal of Electrical and Electronics Vol 2. No.2 88 PENGATURAN KONDISI RELAY DENGAN PESAN MHMH Handle: Mov A,20h Mov C,A.0 Mov P1.3,C Mov C,A.1 Mov P1.2,C Mov C,A.2 Mov P1.1,C Mov C,A.3 Mov P1.0,C ; isikan 20h ke akumulator ; isikan akumulator 0 (20h) ke C ; isikan C ke pin P1.3 pada Mikrokontroler ; isikan akumulator 1 ke C ; isikan C ke in P1.2 pada mikrokontroler ; isikan akumulator 2 ke C ; isikan C ke pin P1.1 pada mikrokontroler ; isikan akumulator 3 ke C ; isikan C ke pin P1.0 pada mikrokontroler PENGHAPUSAN PESAN Delete_Message: Mov Dptr,#Delete_Command Delete_Message_1: Clr A Movc A,@A+Dptr Jz Delete_Message_2 Mov Sbuf,A Jnb Ti,$ Clr Ti Inc Dptr Sjmp Delete_Message_1 Delete_Message_2: Mov A,R3 ; isikan perintah hapus pesan ke data pointer ; isikan dan clear RAM akumulator dengan data ponter ke akumulator ; masukkan akumulator ke serial buffer ; masukkan R3 (yang merupakan lokasi pesan pada Sim Card ke Akumulator ; R3 berisikan angka Hexadesimal, misalkan R3 bernilai 1Fh (33h) maka data yang dikirimkan ke HP adalah „3‟ atau 33h dan „1‟ atau 31h Mov B,#0Ah Div AB Jz Delete_Message_3 Add A,#30h Mov Sbuf,A Jnb Ti,$ Clr Ti Delete_Message_3: Mov A,#30h Add A,B Mov Sbuf,A Jnb Ti,$ Clr Ti Mov Sbuf,#0Dh ; isikan nilai 0Ah ke B ; bagikan AB ; tambahkan nilai 30h ke akumulator ; isikan akumulator ke serial buffer ; isikan akumulator ke serial buffer ; tambahkan A dengan B ; isikan akumulator ke serial buffer ; isikan nilai 0Dh ke serial buffer JREC Journal of Electrical and Electronics Vol 2. No.2 89 Jnb Ti,$ Clr Ti Delete_Message_4: Acall Delay Ajmp Check_New_SMS ; panggil delay ; lompat ke cek SMS baru PENGATURAN KONDISI PESAN Adjust_Condition: Acall Delay Jbc Ri,Adjust_Condition Acall Delay Ajmp Check_New_SMS Send_Condition: Mov A,10h Add A,#2 Mov B,#2 Div AB Mov R7,A ; kirimkan kondisi pesan ; isikan 10h (pengirim pesan) ke akumulator yang merupakan panjangnya no. telpon pengirim ; tambahkan akumulator dengan nilai 2 ; isikan nilai 2 ke B ; bagikan AB ; isikan akumulator ke R7 Clr A Mov C,P1.7 CPL.C Mov A.0,C Mov C,P1.6 Mov A.1,C Mov C,P1.5 Mov A.2,C Mov C,P1.4 Mov A.3,C ; isikan P1.7 ke C ; merupakan 1 bit data ; isikan C ke akumulator 0 ; isikan P1.6 ke C ; isikan C ke akumulator 1 ; isikan P1.5 ke C ; isikan C ke akumulator 2 ; isikan P1.4 ke C ; isikan C ke akumulator 3 Send_Condition_MHMH: Cjne A,#05h,Send_Condition_MHHM Mov A,#31 Add A,R7 Mov R7,A Acall Send_Request Acall Send_Prefix Mov Sbuf,#'1 ; bandingkan kondisi MHHM dengan Akumulator yang bernilai 05h ; isikan Akumulator dengan 31 yang merupakan Panjang nomor pengirim ; tambakan dengan R7, .hasil jumlah ini adalah total panjang Pesan yang akan dikirimkan untuk kondisi MHMH. ; masukkan Akumulator ke R7 ; panggil Sub Rutin Send_Request ; panggil Sub Rutin Send Prefix ; kirimkan karakter „1‟ dan „C‟ yang merupakan panjangnya isi pesan untuk kondisi MHMH Jnb Ti,$ Clr Ti Mov Sbuf,#'C' Jnb Ti,$ JREC Journal of Electrical and Electronics Vol 2. No.2 90 Clr Ti Mov Dptr,#MHMH Ajmp Send_Message ; lompat ke Sub Rutin pengiriman isi pesan ; Kirimkan data awal sesuai dengan format pengirman pesan yaitu yang terdapat pada Send_Char_1 yang berisikan data 001100 Send_Prefix: Acall Delay Jbc Ri,Send_Prefix Mov Dptr,#Send_Char_1 Send_Prefix_1: Clr A Movc A,@A+Dptr Jz Send_Phone_Number Mov Sbuf,A Jnb Ti,$ Clr Ti Inc Dptr Sjmp Send_Prefix_1 ; Kirimkan panjang No. Hp dan No. HP yang dituju. Send_Phone_Number: Mov Sbuf,#30h Jnb Ti,$ Clr Ti Mov R7,10h Inc R7 Mov R0,#11h ; Mengirimkan No. Hp ( Send_Char_1 : db „001100‟,#0 ) Send_Phone_Number_1: Mov Sbuf,@R0 Inc R0 Jnb Ti,$ Clr Ti Djnz R7,Send_Phone_Number_1 ; Mengirimkan pesan ( Send_Char_2 : db „0000AA‟,#0 ) Mov Dptr,#Send_Char_2 Send_Data_Coding: Clr A Movc A,@A+Dptr Jz Send_Data_Coding_1 Mov Sbuf,A Jnb Ti,$ ; isikan RAM Akumulator dan data pointer ke Akumulator ; jika 0 kirim data Coding 1 ; isikan Akumulator ke Serial buffer JREC Journal of Electrical and Electronics Vol 2. No.2 91 Clr Ti Inc Dptr Send_Data_Coding_1: Ret ; kirimkan data Coding 1 ; Mengirimkan perintah AT+CMGS=0 Send_Request: Mov Dptr,#Ask_To_Send Send_Request_1: Clr A Movc A,@A+Dptr Jz Send_Request_2 Mov Sbuf,A Jnb Ti,$ Clr Ti Inc Dptr Sjmp Send_Request_1 ; isikan pertanyaan pengiriman ke data pointer ; isikan lalu hapus RAM dan data Pointer ke Akumulator ; jika 0 kirim pertanyaan 2 ; isikan Akumulator ke Serial Buffer ; Kirimkan panjangnya total total pesan di R7 Send_Request_2: Mov A,R7 Mov B,#0Ah Div AB Add A,#30h Mov Sbuf,A Jnb Ti,$ Clr Ti Mov A,B Add A,#30h Mov Sbuf,A Jnb Ti,$ Clr Ti Mov Sbuf,#0Dh Jnb Ti,$ Clr Ti Ret Send_Message: Clr A Movc A,@A+Dptr Jz Send_Footer Mov Sbuf,A Jnb Ti,$ Clr Ti Inc Dptr Sjmp Send_Message ; isikan nilai R7 ke Akumulator ; isikan 0Ah ke B ; isikan 30h ke Akumulator ; isikan Akumulator ke Serial Buffer ; isikan B ke Akumulator ; tambahkan Akumulator dengan 30h ; isikan Akumulator ke Serial Buffer ; isikan nilai 0Dh ke Serial Buffer ; isikan lalu hapus RAM Akumulator data pointer ; isikan Akumulator ke Serial Buffer ; lompat ke Send_Message JREC Journal of Electrical and Electronics Vol 2. No.2 92 ; Kirimkan karakter 1Ah ( Chrl-Z) yang merupakan akhir dari pengiriman pesan Send_Footer: Mov Sbuf,#1Ah Jnb Ti,$ Clr Ti ; isikan 1Ah ke Serial Buffer ; Tunggu hinggapesan selesai dikirimkan Wait_Until_Send_Complete: Acall Delay Jbc Ri,Wait_Until_Send_Complete Ret ; Sub Rutin ini berfungsi mengubah nilai ASCII menjadi Hexadesimal. ASCII „0‟ yang bernilai 30h akan diubah menjadi 00h. ASCII „1‟ yang bernilai 31h menjadi 01h. ASCI A = 41h menjadi 0Ah ASCII B = 42h menjadi 0Bh ASCII C = 43h menjadi 0Ch ASCII D = 44h menjadi 0Dh ASCII E = 45h menjadi 0Eh ASCII F = 46 menjadi 0Fh Ascii_To_Hex: Cjne A,#39h,Not_39 Less_Or_Equal_39: Anl A,#0Fh Ret Not_39: Jc Less_Or_Equal_39 Mov B,#37h Clr C Subb A,B Ret Short_Delay: Mov R7,#FFh ; isikan FFh ke R7 Djnz R7,$ Ret Delay: Mov R1,#10h Delay_1: Mov R6,#FFh ; isikan 10h ke R1 ; isikan FFh ke R6 Delay_2: Mov R7,#FFh Djnz R7,$ Djnz R6,Delay_2 Djnz R1,Delay_1 Ret ; Di bawah ini merupakan kumpulan-kumpulan perintah untuk berkomunikasi dengan HP JREC Journal of Electrical and Electronics Vol 2. No.2 93 Delete_Command : db 'AT+CMGD=',#0 Select_To_SIM : db 'AT+CPMS="SM"',#0Dh,#0 Select_To_ME : db 'AT+CPMS="ME"',#0Dh,#0 Read_Command : db 'AT+CMGL=0',#0Dh,#0 Ask_To_Send : db 'AT+CMGS=',#0 Send_Char_1 : db '001100',#0 Send_Char_2 : db '0000AA',#0 ; perintah untuk hapus pesan ; perintah untuk pilih SimCard ; perintah untuk pilih ME ; perintah ke Hp untuk mengirimkan SMS baru Yang belum dibaca oleh Mikrokontroler ; perintah untuk pengiriman pesan ;next --> phone number ;next --> message MHMH : db 'D318E86D36B3407319E8ED6681E633D0DB6C6681E634D0DB0D', Hasil Uji Coba Alat Dari uji coba diatas maka data yang diterima oleh mikrokontroler adalah sebagai berikut : AT+CMGL=0 +CMGL: 02,0,44 059126811642040C9126189576549100005051606182021CD318E8ED6681E632D0DB6C6681E633 D0DBCD02CD69A0B7D90C OK Maka terjemahannya adalah : 05 = adalah panjangnya SMS center pengirim 91 = International Code (tanda +) 26 81 16 42 = adalah 62186124 04 = SMS-deliver 0C = Panjangnya nomor telepon pengirim 91261895765491 = Nomor telepon pengirim adalah +628159674519 00 = TP-PID ( Protocol Identifier ) 00 = TP-DCS ( Data Coding Scheme ) 50 51 60 61 82 02 = tanggal SMS masuk 15/06/05 jam 16:28:20 1C = Panjangnya pesan D318E86D36B3407319E8ED6681E633D0DB6C6681E634D0DB0D Isi pesan adalah = S1 off, s2 on, s3 off, s4 on Analisa Dari hasil uji coba yang telah dilakukan maka penulis menganalisa bahwa dengan diterimanya pesan seperti diatas membuat Mikrokontroler akan mematikan peralatan 1 dengan cara mengirimkan logika 0 ke pin 1 (P1.0), menyalakan peralatan 2 dengan cara mengirimkan logika 1 ke pin 2 (P1.1), JREC Journal of Electrical and Electronics Vol 2. No.2 94 mematikan peralatan 3 dengan cara mengirimkan logika 0 ke pin 3 (P1.2), menyalakan peralatan 4 dengan cara mengirimkan logika 1 ke pin 4 (P1.3). Bila pin 2 (P1.1) dan pin 4 (P1.3) berlogika 1 maka Transistor NPN 2 (pin 2) dan Transistor NPN 4 (pin 4) dalam ULN2803 akan mendapat bias dan membuat tegangan pada kolektornya (pin 17 dan pin 15) akan rendah. Dengan demikian terdapat beda potensial listrik antara ujung-ujung gulungan Relay sehingga Relay bekerja. Akibatnya lagi, dengan bekerjanya Relay, maka Steker 2 dan Steker 4 akan terhubung dengan jala-jala listrik 220V, dan apabila pada Steker 2 dan Steker 4 dipasangkan peralatan listrik, maka peralatan itu akan bekerja. Untuk menanyakan keadaan peralatan tersebut, maka pesan yang dikirim adalah S?, maka baca kondisi Relay 1 hingga 4 yaitu dengan melihat tegangan yang jatuh pada pin 5 – 8 ( P1.4 – P1.7 ) dari Mikrokontroler. Untuk mengantisipasi apabila ada SMS yang masuk tetapi tujuannya berbeda, maka Mikrokontroler akan membandingkan satu per satu data tersebut dengan data yang telah disetting pada saat pembuatan program yang terdiri dari 17 karakter format setting Dari hasil penelitian dan hasil kerja yang dilakukan oleh penulis dalam Tugas Akhir ini maka penulis dapat menarik kesimpulan dan sekaligus memberi saran sebagai berikut : SIMPULAN Mempermudah mengontrol peralatan listrik rumah tangga, maka di buatlah alat pengontrol yang dapat di On atau di Offkan dengan hanya mengirimkan SMS. Alat pengontrol ini bekerja dengan tegangan 5 V Dc dengan frekuensi 11,0592 Mhz (12 Mhz) dan berkecepatan Transmisi (Baud Rate) 19200 bps. Mikrokontroler setiap saat dalam siklus 1 mikro detik mengirimkan karakter AT+CMGL=0 ke Handphone, dengan maksud menayakan adakah SMS baru yang diterima tetapi belum pernah dibaca oleh Mikrokontroler. Pesan dikirim oleh handphone berupa data 10 bit (1 bit start, 8 bit data, 1 bit stop) dalam taraf RS (Recommended Standart) yang kemudian dirubah menjadi taraf tegangan TTL (Transistor Transistor Logic) oleh IC MAX232, sebab Mikrokontroler bekeja pada taraf tegangan TTL Untuk mengontrol Peralatan listrik rumah tangga, maka Mikrokontroler membandingkan data yang masuk secara byte per byte dengan format setting S1 sampai dengan S4, apabila cocok maka data tersebut berlogika 1. Handphone yang digunakan bermerek Siemens dengan tipe S 25, S 35, M 35, C 35 karena alat pengontrol peralatan rumah tangga melalui teknologi SMS ini mengggunakan perintah AT COMMAND. JREC Journal of Electrical and Electronics Vol 2. No.2 95 SARAN Alat pengontrol peralatan rumah tangga ini akan lebih sempurna dan menjadi sederhana apabila menggantikan beberapa komponen, yang antara lain : 1. Mikrokontroler AT89C51 diganti dengan Mikrokontroler AT89C2051, karena Mikrokontroler jenis ini memiliki sarana Port lebih sedikit dengan pin berjumlah 20 sehingga bentuk fisiknya relatif lebih kecil. 2. IC ULN2803 diganti dengan IC ULN2003, karena IC jenis ini hanya memiliki 16 pin sehingga bentuk fisiknya relatif lebih kecil. 3. Relay diganti dengan Optocouplers, dengan menggunakan Optocouplers alat pengontrol ini akan bekerja lebih cepat. Untuk perkembangan lebih lanjut, maka alat pengontrol peralatan rumah tangga ini sangat bermanfaat bila diaplikasikan pada dunia Industri. DAFTAR PUSTAKA ATMEL CORP, Data Sheet Book ATMEL, Atmel Corp, Norway 1997. Wasito S, Data Sheet Book, Elek Media Komputindo, Jakarta 1985. Inter Corp, 8 Bit Emmbedded Controller Data Book, Inter Corp Santa Clara, California 1989. Pettersson Lars, SMS And The Format, GSM, Norway 1995. Paulus Andi Nelwan, Teknik Antar Muka Dan Pemograman Mikrokontroler AT89C51, Elek Media Komputindo, Jakarta 1994. JREC Journal of Electrical and Electronics Vol 2. No.2