ii
POMPA AIR LISTRIK BERBASIS
POMPA AIR LISTRIK BERBASIS MIKROKONTRO
MIKROKONTROLLER
LLER
AT89S51
AT89S51
HALAMAN JUDUL HALAMAN JUDUL SKRIPSI SKRIPSIUntuk memenuhi sebagian persyaratan Untuk memenuhi sebagian persyaratan
Mencapai derajat Sarjana S-1 Mencapai derajat Sarjana S-1
Diajukan oleh : Diajukan oleh : MARSUDI MARSUDI 06519038 06519038
PROGRAM STUDI TEKNIK ELEKTRO PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS TEKNIK DAN ILMU KOMPUTER FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS MERCU BUANA UNIVERSITAS MERCU BUANA
YOGYAKARTA YOGYAKARTA
2009 2009
ii ii HALAMAN PERSETUJUAN HALAMAN PERSETUJUAN Skripsi Skripsi
Desain Pengaturan Otomatis Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mi
Pompa Air Listrik Berbasis Mikrokontroller AT89S51krokontroller AT89S51 Dipersiapkan dan disusun oleh
Dipersiapkan dan disusun oleh Marsudi (06519038) Marsudi (06519038)
Telah dipertahankan di depan tim Penguji Telah dipertahankan di depan tim Penguji
Pada
Pada tanggal tanggal Juni Juni 20092009
Susunan Tim Penguji Susunan Tim Penguji Dosen Pembimbing I Dosen Pembimbing I Supatman, S.T., M.T. Supatman, S.T., M.T. Dosen Pembimbing II Dosen Pembimbing II Yudianingsih, S.T., M.T. Yudianingsih, S.T., M.T. Penguji Penguji Nama Penguji Nama Penguji
Skripsi ini telah
Skripsi ini telah diterima sebagai salah satu persyaratanditerima sebagai salah satu persyaratan Untuk memperoleh gelar Sarjana Teknik
Untuk memperoleh gelar Sarjana Teknik
Dekan Fakultas Teknik dan Ilmu Komputer, Dekan Fakultas Teknik dan Ilmu Komputer,
Dr. Ir. Sasongko Pramono Hadi, DEA. Dr. Ir. Sasongko Pramono Hadi, DEA.
ii ii Pompa Air Listrik Berbasis Mi
Pompa Air Listrik Berbasis Mikrokontroller AT89S51krokontroller AT89S51 Dipersiapkan dan disusun oleh
Dipersiapkan dan disusun oleh Marsudi (06519038) Marsudi (06519038)
Telah dipertahankan di depan tim Penguji Telah dipertahankan di depan tim Penguji
Pada
Pada tanggal tanggal Juni Juni 20092009
Susunan Tim Penguji Susunan Tim Penguji Dosen Pembimbing I Dosen Pembimbing I Supatman, S.T., M.T. Supatman, S.T., M.T. Dosen Pembimbing II Dosen Pembimbing II Yudianingsih, S.T., M.T. Yudianingsih, S.T., M.T. Penguji Penguji Nama Penguji Nama Penguji
Skripsi ini telah
Skripsi ini telah diterima sebagai salah satu persyaratanditerima sebagai salah satu persyaratan Untuk memperoleh gelar Sarjana Teknik
Untuk memperoleh gelar Sarjana Teknik
Dekan Fakultas Teknik dan Ilmu Komputer, Dekan Fakultas Teknik dan Ilmu Komputer,
Dr. Ir. Sasongko Pramono Hadi, DEA. Dr. Ir. Sasongko Pramono Hadi, DEA.
iii iii HALAMAN PERSEMBAHAN HALAMAN PERSEMBAHAN
Persembahanku…
Persembahanku…
Aku Bersembah sujud hanya kepada-Mu
Aku Bersembah sujud hanya kepada-Mu
Hanya Engkau yang patut disembah… Allah
Hanya Engkau yang patut disembah… Allah SWT
SWT
Untukmu…
Untukmu…
Ayah dan Ibunda
iv
Tingkatan ilmu seseorang
Dapat dilihat dari perilakunya
Bukan dari kata-katanya
Bangkit dan lakukanlah
Karena kewajiban kita adalah tanggungjawab kita
Bukan orang lain
Dimana ada usaha
Di situ pasti ada jalan
Hambatan bukanlah sesuatu yang harus kita hindari
Melainkan tantangan yang harus kita hadapi
v INTI SARI
Kemajuan ilmu pengetahuan dan teknologi berperan mewujudkan kehidupan yang lebih baik. Teknologi elektronika merupakan salah satu teknologi yang telah melekat di dalam kehidupan manusia, berbagai alat elektronika praktis dan fleksibel telah banyak diciptakan sehingga membantu memudahkan manusia dalam memenuhi kebutuhannya. Berbagai macam peralatan dengan sistem pengoperasian secara manual semakin ditinggalkan beralih pada peralatan yang serba otomatis, sehingga peralatan otomatis lebih mendominasi dalam kehidupan manusia.
Alat bantu Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51didesain dengan operasional yang sederhana sehingga mudah pengoperasiannya Setelah kabel konektor AC dihubungkan ke jala-jala listrik 220Volt AC maka alat ini akan bekerja yaitu mengendalikan secara otomatis mesin listrik pompa air. Alat ini berfungsi untuk menghidupkan atau mematikan mesin listrik pompa air, jika air pada bak penampung kosong maka alat ini akan menghidupkan mesin listrik pompa air dan jika air pada bak penampung airnya penuh maka alat ini akan mematikan mesin listrik pompa air.
Dengan alat yang merupakan Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51diharapkan mesin listrik pompa air dapat bekerja secara otomatis. Alat ini dilengkapi dengan saklar Full Half , jika saklar pada posisi Full maka mesin listrik pompa air akan mengisi air sampai bak penampung penuh, jika saklar pada posisi Half maka mesin listrik pompa air akan mengisi bak penampung air 50% saja, hal ini diperlukan pada saat musim kemarau yang biasanya debit air menurun.
vi
Alhamdulillah, puji syukur penulis panjatkan ke hadirat Allah SWT yang telah melimpahkan Rahmat dan Karunia-Nya sehingga penulis dapat melaksanakan dan menyusun laporan Tugas Akhir Skripsi dengan judul “ Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51” dengan baik.
Skripsi ini merupakan salah satu syarat untuk menyelesaikan pendidikan program S-1 di Fakultas Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.
Dalam penulisan laporan proyek akhir ini, penulis mendapatkan banyak bantuan dan bimbingan serta saran dari berbagai pihak, maka pada kesempatan ini penulis mengucapkan banyak terima kasih kepada :
1. Bapak Prof. Dr. Djoko Wahyono, M.Si., Apt., selaku Rektor Universitas Mercu Buana Yogyakarta.
2. Bapak Dr. Ir.Sasongko Pramono Hadi, DEA., selaku Dekan Fakultas Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.
3. Bapak Supatman, S.T., M.T. selaku dosen pembimbing utama Fakultas Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.
4. Ibu Yudianingsih, ST., MT. selaku dosen pembimbing pendamping Fakultas Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.
vii
5. Seluruh Dosen dan karyawan pada Fakultas Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.
6. Dan tidak lupa semua rekan mahasiswa pada Fakultas Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta, yang telah memberikan dukungan dan motivasi kepada penulis.
7. Semua pihak yang tidak mampu penulis sebutkan, yang telah membantu dalam penelitian dan dalam penyusunan skripsi.
Penulis menyadari bahwa dalam penyusunan laporan ini tidak lepas dari kesalahan dan kekurangsempurnaan, maka kritik dan saran yang konstruktif dari semua pihak, akan penulis terima dengan senang hati untuk kesempurnaan laporan ini. Akhirnya penulis berharap semoga laporan ini bermanfaat bagi penulis dan semua pihak yang membutuhkan serta dapat menjadi amal ibadah yang diterima di sisi-Nya. Amien.
Yogyakarta, Mei 2009
viii
HALAMAN JUDUL ... i
HALAMAN PERSETUJUAN ... ii
HALAMAN PERSEMBAHAN ... iii
HALAMAN MOTO ... iv
INTI SARI ... v
KATA PENGANTAR ... vi
DAFTAR ISI ... viii
DAFTAR GAMBAR ... xi
DAFTAR TABEL ... xii
DAFTAR LAMPIRAN ... xiii
BAB I PENDAHULUAN ... 1
1.1. Latar Belakang Masalah ... 1
1.1.1. Permasalahan ... 2
1.1.2. Keaslian Penelitian ... 2
1.2. Batasan Masalah ... 3
1.3. Manfaat yang Diharapkan ... 3
1.4. Tujuan Penelitian ... 4
1.5. Sistematika Penulisan ... 4
BAB II TINJAUAN PUSTAKA ... 6
2.1. Tinjauan Pustaka ... 6
2.2. Landasan Teori ... 7
2.2.1. Mikrokontroller ... 7
2.2.1.1. Hardware Mikrokontroller ... 8
2.2.1.2. Instruksi MCS-51... 11
2.2.1.3. Sistem Interupsi AT89S51 ... 14
2.2.1.4. Sistem Timer AT89S51 ... 15
ix
2.2.2.1. Saklar ... 20
2.2.2.2. Rile ... 21
2.2.3. LED ... 24
2.2.4. Transistor Sebagai Saklar ... 25
2.2.5. Flow Chart ... 27
2.3. Hipotesis ... 28
BAB III METODOLOGI PENELITIAN ... 29
3.1. Bahan dan Alat Penelitian ... 29
3.1.1. Bahan Penelitian ... 29
3.1.1.1. Sistem Minimum Mikrokontroller AT89S51 ... 29
3.1.1.2. Transistor ... 29
3.1.1.3. Saklar ... 29
3.1.1.4. Rile ... 30
3.1.1.5. Pompa Air ... 30
3.1.1.6. Catu Daya Teregulasi ... 30
3.1.2. Alat Penelitian ... 30
3.1.2.1. Komputer ... 30
3.1.2.2. Kabel ISP Programmer ... 31
3.1.2.3. Multimeter ... 31 3.2. Langkah Penelitian ... 32 3.2.1. Perancangan Alat ... 32 3.2.1.1. Perancangan Hardware ... 32 3.2.1.2. Perancangan Software... 40 3.2.2. Realisasi Sistem ... 44
BAB IV PENGUJIAN DAN PEMBAHASAN ... 45
4.1. Hasil Pengujian ... 45
4.1.1. Sistem Minimum AT89S51 dan Output Rile ... 45
4.1.2. Water level Sensor ... 46
4.1.3. Saklar Mode ... 46
4.1.4. Pengujian Sistem ... 47
x
4.2.2. Analisis Program ... 49
4.2.3. Analisis Sistem Keseluruhan ... 53
BAB V KESIMPULAN ... 55
5.1. Kesimpulan ... 55
5.2. Saran ... 55
xi
DAFTAR GAMBAR
Gambar 2.1. Diagram Blok Mikrokontroller AT89S51 ... 9
Gambar 2.2. Konfigurasi Pena AT89S51 (40-lead PDIP) ... 10
Gambar 2.3. Denah susunan bit dalam register TMOD ... 18
Gambar 2.4. Denah susunan bit dalam register TCON ... 19
Gambar 2.5. (a) Simbol push button saat OFF dan (b) Simbol push button saat OFF ON ... 20
Gambar 2.6. Bentuk fisik salah satu saklar push button ... 21
Gambar 2.7. Simbol Saklar ... 21
Gambar 2.8. Bentuk fisik salah satu Saklar ... 21
Gambar 2.9. Simbol dan Prinsip Kerja Rile SPDT ... 23
Gambar 2.10. Simbol dan Prinsip Kerja Rile DPDT ... 23
Gambar 2.11. Bentuk fisik dan simbol lampu LED ... 24
Gambar 2.12. (a) Transistor pada daerah saturasi. (b) Ekuivalen transistor sebagai saklar on (Malvino, 1985: 123) ... 26
Gambar 2.13. Transistor pada daerah cut off (Malvino, 1985:124) ... 26
Gambar 2.14. Simbol-simbol Flow Chart ... 27
Gambar 3.1. Diagram Blok Pemanfaatan Mikrokontroller AT89S51 ... 32
Gambar 3.2. Rangkaian regulator Catu Daya +12V dan +5V ... 33
Gambar 3.3. Water level Sensor ... 34
Gambar 3.4. Saklar Mode Pengisian (Full / Half ) ... 35
Gambar 3.5. Rangkaian Output Rile ... 35
Gambar 3.6. Rangkaian reset ... 37
Gambar 3.7. Sistem Minimum AT89S51 ... 37
Gambar 3.8. Sistem Kontrol Pemanfaatan Mikrokontrol AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air ... 39
Gambar 3.9. Bentuk Program Assembler ... 41
Gambar 3.10. Flow Chart Program Pengatur Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51 ... 42
xii
Tabel 4.2. Titik Kerja Transistor Sensor 2 Q2 ... 46 Tabel 4.3. Titik Kerja Transistor Sensor 3 Q3 ... 46 Tabel 4.4. Kebenaran Kontrol Pompa Air Otomatis { f(input) = output }... 49
xiii
DAFTAR LAMPIRAN
Lampiran 1. Gambar Rangkaian Sistem Kontrol ... 57
Lampiran 2. Lay out Komponen dan PCB Sistem Kontrol ... 58
Lampiran 3. Source Code Program Assembly Mikrokontroller AT89S51 ... 59
1 1.1. Latar Belakang Masalah
Kebutuhan teknologi tepat guna dan sepadan tidak hanya di industri., tetapi juga pada alat-alat rumah tangga. Pada implementasinya teknologi yang sederhana sudah banyak merambah pada alat-alat rumah tangga, alat bantu dalam rumah tangga biasanya sangat sederhana, dengan sentuhan teknologi sedikit alat yang sangat sederhana bisa mempunyai kemampuan yang sangat besar, misalnya dengan menambahkan sistem otomasi pada alat tersebut.
Pada mesin listrik pompa air yang digunakan untuk mengambil air tanah dalam sumur, biasanya dioperasikan secara manual, dengan menghidupkan dan mematikan saklar manual. Proses ini tentu cukup merepotkan disamping memerlukan tenaga juga membutuhkan waktu, kemungkinan air yang dimasukkan dalam bak penampung dapat tumpah karena melebihi kapasitas.
Mesin listrik pompa air ini sebenarnya bisa dioperasikan secara otomatis dengan sedikit sentuhan teknologi, dengan menggunakan peralatan yang otomatis dan sederhana dalam mengoperasikan, sehingga dapat meringankan tenaga dan menghemat waktu untuk memenuhi kebutuhan air dalam rumah tangga.
Kebutuhan peralatan yang dapat dioperasikan secara otomatis sangat diperlukan dalam rumah tangga, seiring dengan kemajuan teknologi, maka perlu diusahakan suatu alat Penerapan Mikrokontroller AT89S51 sebagai pengendali otomatis mesin listrik pompa air.
2
1.1.1. Permasalahan
Berdasarkan latar belakang di atas permasalahan yang dapat dirumuskan adalah :
1. Kebanyakan mesin listrik pompa air yang ada di pasaran dioperasikan secara manual.
2. Mesin listrik pompa air yang dioperasikan secara manual untuk mengambil air tanah, dalam memenuhi kebutuhan rumah tangga kadang-kadang pada saat dibuka kran air tidak mengalir. Hal ini dikarenakan bak penampungan air kosong, sehingga harus menghidupkan mesin listrik pompa air terlebih dahulu sebelum menggunakan air. Untuk keperluan tersebut diperlukan waktu dan tenaga.
3. Mesin listrik pompa air yang dioperasikan secara manual jika dihidupkan akan mengisi bak penampung air secara terus menerus. Jika bak penampung sudah tidak mempu menampung air dan mesin tidak segera dimatikan maka air akan meluap, hal ini termasuk dalam kategori pemborosan.
4. Di pasaran belum ada alat yang menerapkan mikrokontroller AT89S51 sebagai pengendali otomatis pompa air.
1.1.2. Keaslian Penelitian
Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51yang akan dilaksanakan belum pernah dilakukan, kecuali sumber lain yang digunakan sebagai referensi terdapat dalam daftar pustaka.
1.2. Batasan Masalah
Batasan masalah dari penelitian ini adalah :
1. Perancangan perangkat keras pada penerapan mikrokontroller AT89S51 sebagai pengendali otomatis mesin listrik pompa air
2. Perancangan perangkat lunak pada penerapan mikrokontroller AT89S51 sebagai pengendali otomatis mesin listrik pompa air
1.3. Manfaat yang Diharapkan
Jika penelitian ini berhasil dengan baik dan dikembangkan, manfaat yang bias diharapkan adalah sebagai berikut :
1. Untuk ilmu pengetahuan dan teknologi, keberhasilan penelitian Penerapan Mikrokontroller AT89S51 sebagai pengendali otomatis mesin listrik pompa air, dapat digunakan sebagai salah satu bahan referensi dalam perancangan peralatan otomatis berbasis mikrokontrol, untuk alat bantu rumah tangga dan industri kecil.
2. Untuk pembangunan negara, Penerapan Mikrokontroller AT89S51 sebagai pengendali otomatis mesin listrik pompa air, dapat digunakan sebagai salah satu bahan pembelajaran bagi para mahasiswa dan siswa dalam perancangan peralatan otomatis berbasis mikrokontrol untuk industri kecil, menengah dan industri rumah tangga.
4
1.4. Tujuan Penelitian
Penelitian ini bertujuan untuk :
1. Mengetahui unjuk kerja proses pengoperasian mesin listrik pompa air secara manual.
2. Mengetahui proses pengoperasian mesin listrik pompa air menggunakan peralatan yang otomatis akan berpengaruh terhadap penyediaan kebutuhan air dalam rumah tangga.
1.5. Sistematika Penulisan
Pembahasan skripsi ini menggunakan sistematika penulisan sebagai berikut :
BAB I : PENDAHULUAN
Pada bagian ini membahas, latar belakang, permasalahan, keaslian penelitian, faedah yang dapat diharapkan, tujuan penelitian, batasan masalah, metodologi, dan sistematika penulisan.
BAB II : TINJAUAN PUSTAKA
Pada bagian ini membahas, teori penunjang yang berkaitan dengan pembuatan alat dan teori mikrokontrol AT89S51.
BAB III : PERENCANAAN DAN PEMBUATAN ALAT
Pada bagian ini membahas, pembuatan perangkat keras dan pembuatan perangkat lunak.
BAB IV : PENGUJIAN DAN ANALISA
Pada bagian ini membahas, pengujian alat secara keseluruhan yang meliputi perangkat keras, perangkat lunak dan menganalisa data pengujian alat.
BAB V : KESIMPULAN DAN SARAN
Pada bagian ini membahas berdasarkan hasil pengujian dan analisa data kemudian diambil kesimpulan dari kinerja alat tersebut.
6 BAB II
TINJAUAN PUSTAKA
2.1. Tinjauan Pustaka
Penelitian yang dilakukan oleh Djunanda Mieke pada tahun 2003 dengan judul Sistem Pengendalian Aquarium Berbasis Mikrokontroler Dengan
Menggunakan SMS dari Hand Phone. Memelihara ikan dalam aquarium merupakan hal yang biasa dan mudah, tetapi akan memerlukan waktu khususnya bagi orang yang sibuk tetapi mempunyai hobi memelihara ikan terutama dalam proses perawatan ikan mulai dari pemberian makan, mengganti air, menjaga suhu air dan lain-lain. Oleh karena itu dikembangkan metode pemeliharaan ikan dalam aquarium dari jarak jauh yang dapat dikontrol melalui SMS dari Hand Phone. Sistem ini memberi keuntungan bagi mereka yang sibuk bekerja namun senang memelihara ikan dalam aquarium.
Penelitian yang dilakukan oleh Samsu Rizal pada tahun 2005 dengan judul Pemanfaatan Mikrokontroler AT89C51 Sebagai PLC (Programable Logic Controller) salah satu aplikasi yang merupakan perpaduan antara perangkat keras dan parangkat lunak. Rangkaian elektronik yang berbasis mikrokontroler adalah perangkat kerasnya, sedang Bahasa Pemrograman Assembler sebagai perangkat lunaknya.
Penelitian yang dilakukan oleh Imron Muhammad pada tahun 2007 dengan judul Sistem Pengamanan Tambak Ikan Berbasis Mikrokontroler merupakan suatu peralatan pengamanan yang digunakan untuk mengamankan
tambak ikan. Peralatan sistem ini terdiri dari detektor atau sensor, Rile dan alarm yang dihubungkan ke mikrokontroler. LDR yang merupakan komponen detektor cahaya ditempatkan di sekeliling tambak, jika ada obyek yang melewati detektor pada waktu tertentu maka mikrokontroler akan mengaktifkan rile yang dihubungkan ke lampu dan alarm sehingga lampu akan menyala dan alarm akan berbunyi. Mikrokontroler yang merupakan rangkaian utama pada alat ini dihubungkan ke telepon seluler yang akan mengirim teks singkat kepada pemilik tambak. Hasil yang didapat menunjukkan bahwa alat ini dapat bekerja dengan baik, sehingga alat ini dapat menjadi sistem pengamanan yang efektif
2.2. Landasan Teori
Untuk membuat suatu sistem pemanfaatan mikrokontroller AT89S51 sebagai pengendali otomatis mesin listrik pompa air, diperlukan beberapa komponen elektronika seperti LED, transistor, saklar, rile dan mikrokontroler. Berikut ini merupakan teori dasar dari masing-masing komponen yang diperlukan.
2.2.1. Mikrokontroller
Mikrokontroller merupakan perkembangan dari mikroprosesor. Dalam sebuah chip mikrokontroller telah terintegrasi memori, CPU dan I/O. Hal tersebut membuat mikrokontroller dapat langsung dibuat sistem dengan menambahkan sedikit peripheral lain. Sifat mikrokontroller yang mampu diprogram ( programmable) menyebabkan mikrokontroller mempunyai kemampuan aplikasi yang sangat luas.
8
2.2.1.1. Hardware Mikrokontroller
2.2.1.1.1. Spesifikasi
AT89S51 adalah salah satu jenis mikrokontroller buatan Atmel dan merupakan keluarga MCS-51. AT89S51 merupakan mikrokontroller 8-bit dengan spesifikasi sebagai berikut :
1) Kompatibel dengan produk MCS-51
2) 8 Kbytes memori flash internal yang dapat diprogram ulang sampai 1000 kali tulis/hapus.
3) Cakupan tegangan operasi 4,0Volt – 5,5Volt
4) Beroperasi secara penuh pada frekuensi 0 sampai 33 MHz 5) Memiliki tiga tahap penguncian program.
6) 256 X 8-bit RAM internal.
7) Memiliki jalur I/O 32 bit yang dapat diprogram. 8) Dua buah 16 bit Timer/Couters.
9) Memiliki delapan sumber interupsi.
10) Memiliki serial UART yang dapat diprogram. 11) Pengembalian interupt dari mode daya rendah 12) Memiliki Watchdog Timer.
13) Mempunyai 2 data pointer 14) Power-Off flag
Gambar 2.1. Diagram Blok Mikrokontroller AT89S51 (http://www.atmel.com)
10
2.2.1.1.2. Konfigurasi Pin
Gambar 2.2. Konfigurasi Pena AT89S51 (40-lead PDIP) (http://www.atmel.com)
1) Port 0.0/AD0 – port 0.7/AD7 (kaki 32-39). Pada perancangan komponen minimum, port ini dapat digunakan untuk port I/O tujuan umum. Untuk perancangan yang lebih besar (dengan memori luar), port ini menjadi bus data dan alamat multipleks.
2) Port 1 (kaki 1-8). Port ini dipakai untuk port I/O. Pin-pin ini dirancang sebagai P1.0 - P1.7 untuk antarmuka dengan peralatan luar dan jalur Flash-Programer pada P1.5 (MOSI), P1.6 (MISO), dan P1.7 (SCK).
3) Port 2.0/A8 – port 2.7/A15 (kaki 21-28). Port ini dipakai untuk I/O atau sebagai bus byte tinggi alamat untuk rancangan dengan memori luar.
4) Port 3 (kaki 10-17). Port ini dipakai untuk I/O tujuan umum atau untuk fungsi khusus.
5) PSEN (Program store enable, kaki 29). PSEN merupakan keluaran untuk sinyal kendali yang mengijinkan memori program (kode) luar dan biasanya dihubungkan dengan kaki (Output Enable) EPROM yang mengijinkan pembacaan byte-byte program.
6) ALE ( Address Latch Enable, kaki 30). Sinyal keluaran ALE untuk demultiplexing bus data dan alamat. Jika port 0 digunakan sebagai bus data dan bus byte rendah alamat, ALE mengunci alamat ke register luar selama setengah pertama siklus memori. Selanjutnya selama setengah kedua siklus memori, jalur-jalur port 0 disediakan untuk data masukan atau keluaran ketika perpindahan data sedang dilakukan.
7) EA ( External Access, kaki 31). Untuk eksekusi program dari memori luar maka kaki ini harus diberi tegangan rendah.
8) RST ( Reset , kaki 9). Jika diberikan tegangan tinggi selama paling sedikit 2 siklus mesin, maka register internal akan diisi dengan harga tertentu untuk kondisi awal sistem.
2.2.1.2. Instruksi MCS-51
Seperti pada mikrokontroller pada umumnya, AT89S51 mempunyai instruksi MCS-51 dan beberapa fasilitas yang berguna untuk pemrograman. Secara keseluruhan MCS-51 memiliki 255 macam instruksi yang dibagi menjadi 5 kelompok meliputi: instruksi aritmatika, instruksi logika, instruksi transfer data, instruksi manipulasi bit variabel dan instruksi percabangan. Masing-masing kelompok akan dijelaskan sebagai berikut:
12
2.2.1.2.1. Kelompok Instruksi Aritmatika
Kelompok perintah ini dipakai untuk melakukan operasi aritmatika yang meliputi penjumlahan (kode operasi ADD), penjumlahan dengan menyertai sisa/ carry (kode operasi ADDC), pejumlahan satu (kode operasi INC), pengurangan dengan menyertai pinjaman/ borrow (kode operasi SUBB), pengurangan satu (kode operasi DEC), penyetelan desimal pada akumulator (kode operasi DA), perkalian (kode operasi MUL) dan pembagian (kode operasi DIV).
2.2.1.2.2. Kelompok Instruksi Logika
Kelompok perintah ini dipakai untuk melakukan operasi logika. Operasi logika yang dapat dilakukan adalah operasi OR (kode operasi ORL), operasi AND (kode operasi ANDL), operasi Exclusive OR (kode operasi XRL), menghapus akumulator (kode operasi CLR), negasi akumulator (kode operasi CPL), pergeseran bit akumulator (kode operasi RL, RLC, RR, RRC dan SWAP).
2.2.1.2.3. Kelompok Instruksi Transfer Data
Kelompok perintah ini dipakai untuk memindahkan dan penukaran (exchange) data. Operasi pemindahan data yang dapat dilakukan adalah pemindahan data antara register dengan register (kode operasi MOV), memori dengan memori (kode operasi MOV), register dengan memori (kode operasi MOV), memori eksternal dengan akumulator (kode operasi MOVX) dan pemindahan data langsung (direct byte) ke stack /tumpukan (PUSH dan POP). Operasi penukaran data yang dapat dilakukan adalah penukaran data antara akumulator dengan register (kode operasi XCH) , antara akumulator dengan
internal RAM (kode operasi XCH),
internal RAM (kode operasi XCH), niblenible rendah (D0rendah (D0 – – D3) akumulator denganD3) akumulator dengan nible
nible rendah (D0rendah (D0 – – D3) internal RAM (kode operasi XCHD).D3) internal RAM (kode operasi XCHD).
2.2.1.2.4.
2.2.1.2.4. Kelompok Instruksi Manipulasi BitKelompok Instruksi Manipulasi Bit Operasi manipulasi bit
Operasi manipulasi bit yang dapat dilakukan adalah menghapusyang dapat dilakukan adalah menghapus carrycarry dandan bit (kode operasi CLR), mengeset
bit (kode operasi CLR), mengeset carrycarry dan bit (kode operasi SETB),dan bit (kode operasi SETB), mengkomplemen
mengkomplemen carrycarry dan bit (kode operasi CPL), dan bit (kode operasi CPL), operasi AND antaraoperasi AND antara carrycarry dandan bit (kode operasi ANL), operasi OR antara
bit (kode operasi ANL), operasi OR antara carrycarry dan bit (kode operasi ORL), dandan bit (kode operasi ORL), dan memindahkan data dari bit ke
memindahkan data dari bit ke carrycarry atau sebaliknya (kode operasi MOV).atau sebaliknya (kode operasi MOV).
2.2.1.2.5.
2.2.1.2.5. Kelompok Intruksi PercabanganKelompok Intruksi Percabangan
Instruksi ini dapat digunakan saat program yang sedang dilaksanakan akan Instruksi ini dapat digunakan saat program yang sedang dilaksanakan akan melompat ke suatu alamat tertentu. Instruksi percabangan dapat dibedakan atas melompat ke suatu alamat tertentu. Instruksi percabangan dapat dibedakan atas percabanga
percabangan bersyarat n bersyarat dan percabangan tanpa syarat.dan percabangan tanpa syarat. 1)
1) Instruksi percabangan bersyarat, yang termasuk kelompok ini Instruksi percabangan bersyarat, yang termasuk kelompok ini adalah:adalah:
CJNE @R
CJNE @Rnn,#data,alam,#data,alamat at kodekode
CJNE A,#data,alamat kode CJNE A,#data,alamat kode
CJNE A,alamat data,alamat kode CJNE A,alamat data,alamat kode CJNE R
CJNE Rnn,#data,alamat kode,#data,alamat kode
DJNZ R
DJNZ Rnn,alamat kode,alamat kode
DJNZ alamat data,alamat kode DJNZ alamat data,alamat kode JB alamat bit,alamat kode JB alamat bit,alamat kode JNB alamat bit,alamat kode JNB alamat bit,alamat kode JBC alamat bit,alamat kode JBC alamat bit,alamat kode JC alamat kode JC alamat kode JNC alamat kode JNC alamat kode JZ alamat kode JZ alamat kode JNZ alamat kode JNZ alamat kode 2)
2) Instruksi percabangan tanpa syarat, yang termasuk kelompok ini Instruksi percabangan tanpa syarat, yang termasuk kelompok ini adalah:adalah:
ACALL alamat kode ACALL alamat kode LCALL alamat kode LCALL alamat kode SJMP alamat kode SJMP alamat kode AJMP alamat kode AJMP alamat kode LJMP alamat kode LJMP alamat kode JMP @A+DPTR JMP @A+DPTR RET RET RETI RETI
14 14
2.2.1.3.
2.2.1.3. Sistem Interupsi AT89S51Sistem Interupsi AT89S51
Setiap mikrokontroller biasanya memiliki saluran interupsi. Interupsi Setiap mikrokontroller biasanya memiliki saluran interupsi. Interupsi adalah peristiwa perangkat keras yang dipakai untuk mengatur kerja dari adalah peristiwa perangkat keras yang dipakai untuk mengatur kerja dari perangkat lunak mikrokontroller. AT89S51 mempunyai 8 sumber interupsi, yakni perangkat lunak mikrokontroller. AT89S51 mempunyai 8 sumber interupsi, yakni Interupsi Eksternal (
Interupsi Eksternal ( External Interrupt External Interrupt ) yang berasal dari kaki INT0, INT1 dan T2) yang berasal dari kaki INT0, INT1 dan T2 Ext, Interupsi Pewaktu (
Ext, Interupsi Pewaktu (Timer Interrupt Timer Interrupt ) yang berasal dari) yang berasal dari Timer Timer 0 0 ,, Timer Timer 1,1, maupun
maupun Timer Timer 2, Interupsi2, Interupsi Port Port SeriSeri (Serial Port Interrupt)(Serial Port Interrupt) yang berasal dariyang berasal dari bagian penerima dan bagian pengirim
bagian penerima dan bagian pengirim Port Port Seri.Seri.
Semua sumber permintaan interupsi yang dibahas di atas, masing-masing Semua sumber permintaan interupsi yang dibahas di atas, masing-masing bisa diaktifkan atau di-nonaktifkan secara tersendiri lewat bit-bit yang ada dalam bisa diaktifkan atau di-nonaktifkan secara tersendiri lewat bit-bit yang ada dalam register IE (
register IE ( Interrupt Enable Register Interrupt Enable Register ).).
Bit EX0 dan EX1 untuk mengatur interupsi eksternal INT0 dan INT1, Bit EX0 dan EX1 untuk mengatur interupsi eksternal INT0 dan INT1, sedangkan bit ET0 dan ET1 untuk mengatur interupsi
sedangkan bit ET0 dan ET1 untuk mengatur interupsi timer timer 0 dan0 dan timer timer 1, bit ES1, bit ES untuk mengatur interupsi
untuk mengatur interupsi port port seri. Di samping itu ada pula bit EA yang bisaseri. Di samping itu ada pula bit EA yang bisa dipakai untuk mengatur semua sumber
dipakai untuk mengatur semua sumber interupsi sekaligus.interupsi sekaligus. Setelah reset,
Setelah reset, semua bit semua bit dalam dalam register IE register IE bernilai “0”, bernilai “0”, artinartinya sistemya sistem interupsi dalam keadaan non-aktif. Untuk mengaktifkan salah satu sistem interupsi dalam keadaan non-aktif. Untuk mengaktifkan salah satu sistem interupsi, bit pengatur interupsi bersangkutan diaktifkan dan juga EA yang interupsi, bit pengatur interupsi bersangkutan diaktifkan dan juga EA yang mengatur semua sumber interupsi. Misalnya instruksi yang dipakai untuk mengatur semua sumber interupsi. Misalnya instruksi yang dipakai untuk mengaktifkan
mengaktifkan interupsi ekternal Iinterupsi ekternal INT0 adalah NT0 adalah SETB EX0 SETB EX0 disusul dengdisusul dengan SETBan SETB EA.
EA.
Saat AT89S51 menanggapi permintaan interupsi, Program
Saat AT89S51 menanggapi permintaan interupsi, Program Counter Counter diisidiisi dengan sebuah nilai yang dinamakan sebagai vektor interupsi. Vektor interupsi dengan sebuah nilai yang dinamakan sebagai vektor interupsi. Vektor interupsi
merupakan nomor awal dari memori-program yang menampung ISR (
merupakan nomor awal dari memori-program yang menampung ISR ( Interrupt Interrupt Service Routine
Service Routine) untuk melayani permintaan interupsi tersebut. Vektor interupsi) untuk melayani permintaan interupsi tersebut. Vektor interupsi itu dipakai untuk melaksanakan instruksi LCALL, ACALL, AJMP atau LJMP itu dipakai untuk melaksanakan instruksi LCALL, ACALL, AJMP atau LJMP yang diaktifkan secara perangkat keras.
yang diaktifkan secara perangkat keras.
Vektor interupsi untuk interupsi eksternal INT0 adalah 0003H, untuk Vektor interupsi untuk interupsi eksternal INT0 adalah 0003H, untuk interupsi
interupsi timer timer 0 adalah 000BH, untuk interupsi ekternal INT1 adalah 0013H,0 adalah 000BH, untuk interupsi ekternal INT1 adalah 0013H, untuk interupsi
untuk interupsi timer timer 1 adalah 001BH dan untuk interupsi1 adalah 001BH dan untuk interupsi port port seri adalah 0023H.seri adalah 0023H. Jarak vektor interupsi satu dengan lainnya sebesar 8, atau hanya tersedia 8 Jarak vektor interupsi satu dengan lainnya sebesar 8, atau hanya tersedia 8 byte untuk setiap ISR. Jika sebuah ISR memang hanya pendek saja, tidak lebih byte untuk setiap ISR. Jika sebuah ISR memang hanya pendek saja, tidak lebih dari 8 byte, maka ISR tersebut bisa langsung ditulis pada memori-program yang dari 8 byte, maka ISR tersebut bisa langsung ditulis pada memori-program yang disediakan untuknya
disediakan untuknya. ISR . ISR yang lebih panjang dari 8 byte ditulis yang lebih panjang dari 8 byte ditulis ditempat lain, tditempat lain, tapiapi pada memori-program yang ditunjuk oleh vektor interupsi diisikan instruksi pada memori-program yang ditunjuk oleh vektor interupsi diisikan instruksi JUMP ke arah ISR bersangkutan.
JUMP ke arah ISR bersangkutan.
2.2.1.4.
2.2.1.4. SistemSistem TimerTimer AT89S51AT89S51 Timer
Timer 0 dibentuk dengan register TL0 (0 dibentuk dengan register TL0 (timer 0 low bytetimer 0 low byte,, alamatnya padaalamatnya pada RAM internal adalah 6AH) dan register TH0 (
RAM internal adalah 6AH) dan register TH0 (timer 0 high bytetimer 0 high byte, alamatnya 6BH)., alamatnya 6BH). Sedangkan
Sedangkan timer timer 1 dibentuk dengan register TL1 (1 dibentuk dengan register TL1 (timer 1 low bytetimer 1 low byte, alamatnya, alamatnya 6CH) dan register TH1 (
6CH) dan register TH1 (timer 1 high bytetimer 1 high byte, alamatnya 6DH)., alamatnya 6DH). Untuk mengatur kerja
Untuk mengatur kerja timer/counter timer/counter dipakai 2 register tambahan yangdipakai 2 register tambahan yang dipakai bersama oleh
dipakai bersama oleh timer timer 0 dan0 dan timer timer 1. Register tambahan tersebut adalah1. Register tambahan tersebut adalah register TCON (
register TCON (timer timer control register control register , alamatnya 88H dan bisa dialamat secara, alamatnya 88H dan bisa dialamat secara bit) dan register TMOD (
16
TLO, THO, TL1 dan TH1 merupakan SFR (Special Function Register ) yang dipakai untuk membentuk pencacah biner Timer 0 dan Timer 1. Kapasitas keempat register tersebut masing-masing 8 bit, bisa disusun menjadi 4 macam mode (mode 0, mode 1, mode 2 dan mode3) pencacah biner.
Pada Mode 0, Mode 1 dan Mode 2 Timer 0 dan Timer 1 masing-masing bekerja sendiri, artinya bisa dibuat Timer 0 bekerja pada Mode I dan Timer 1 bekerja pada Mode 2, atau kombinasi mode lainnya sesuai dengan keperluan.
Pada Mode 3 TLO, THO, TL1 dan TH1 dipakai bersama-sama untuk menyusun sistem timer yang tidak bisa dikombinasi lain. Susunan TLO, THO, TL1 dan TH1 pada masing-masing mode sebagai berikut:
2.2.1.4.1. Mode 0 Pencacah Biner 13 bit
Pencacah biner dibentuk dengan TLX (maksudnya bisa TLO atau TL1) sebagai pencacah biner 5 bit (meskipun kapasitas sesungguhnya 8 bit), limpahan dan pencacah biner 5 bit ini dihubungkan ke THx (maksudnya bisa THO atau TH1) membentuk sebuah untaian pencacah biner 13 bit, limpahan dan pencacah 13 bit ini ditampung di flip-flop TFX (maksudnya bisa TFO atau TF1) yang berada di dalam register TCON.
Mode ini meneruskan sarana timer yang ada pada mikrokontroller MCS48 (mikrokontroller pendahulu MCS51), dengan maksud rancangan alat yang dibuat dengan MCS48 bisa dengan mudah diadaptasikan ke MCS5 1. Mode ini tidak banyak dipakai lagi.
2.2.1.4.2. Mode 1 Pencacah Biner 16 bit
Mode ini sama dengan Mode 0, hanya saja register TLX dipakai sepenuhnya sebagai pencacah biner 8 bit, sehingga kapasitas pencacah biner yang tersbentuk adalah 16 bit. Seiring dengan sinyal denyut, kedudukan pencacah biner 16 bit ini akan bergerak dari 0000H (biner 0000 0000 0000 0000), 0001H, 0002H ... sampai FFFFH (biner 1111 1111 1111 1111), kemudian melimpah kembali menjadi 0000H.
2.2.1.4.3. Mode 2 Pencacah Biner 8 bit dengan isi ulang
TLx dipakai sebagai pencacah biner 8 bit, sedangkan THx dipakai untuk menyimpan nilai yang diisikan ulang ke TLx setiap kali kedudukan TLx melimpah (berubah dan FFH menjadi 00H). Dengan cara ini bisa didapatkan sinyal limpahan yang frekuensinya ditentukan oleh nilai yang disimpan dalam TH0.
2.2.1.4.4. Mode 3 Gabungan Pencacah Biner 16 bit dan 8 bit
Pada Mode 3 TL0, TH0, TL1 dan TH1 dipakai untuk membentuk 3 untaian pencacah. Yang pertama adalah untaian pencacah biner 16 bit tanpa fasiltas pemantau sinyal limpahan yang dibentuk dengan TL1 dan TH1. Yang kedua adalah TL0 yang dipakai sebagai pencacah biner 8 bit dengan TF0 sebagai sarana pemantau limpahan. Pencacah biner ketiga adalah TH0 yang dipakai sebagai pencacah biner 8 bit dengan TF1 sebagai sarana pemantau limpahan.
18
Register TMOD dan register TCON merupakan register pembantu untuk mengatur kerja Timer 0 dan Timer 1, kedua register ini dipakai bersama oleh Timer 0 dan Timer 1.
a. TMOD (Timer Mode Register )
Register TMOD dibagi menjadi 2 bagian secara simetris, bit 0 sampai 3 register TMOD (TMOD bit 0 s.d. TMOD bit 3) dipakai untuk mengatur Timer 0, bit 4 sampai 7 register TMOD (TMOD bit 4 s.d. TMOD bit 7) dipakai untuk mengatur Timer 1.
Gambar 2.3. Denah susunan bit dalam register TMOD (http://alds-stts.edu/digital/timer.htm)
Pemakaian dari register TMOD adalah:
1) Bit M0/M1 dipakai untuk menentukan Mode timer seperti yang terlihat dalam tabel.
2) Bit C/T* dipakai untuk mengatur sumber sinyal denyut yang diumpankan ke pencacah biner. Jika C/T* = 0 sinyal denyut diperoleh dari osilator kristal yang frekuensinya sudah dibagi 12, sedangkan jika C/T* = 1 maka sinyal denyut diperoleh dari kaki T0 (untuk Timer 0) atau kaki T1 (untuk Timer 1).
3) Bit GATE merupakan bit pengatur saluran sinyal denyut. Bila bit GATE = 0 saluran sinyal denyut hanya diatur oleh bit TRx (maksudnya adalah TR0 atau TR1 pada register TCON). Bila bit
GATE = 1 kaki INT0 (untuk Timer 0) atau kaki INTl (untuk Timer 1) dipakai juga untuk mengatur saluran sinyal denyut.
b. TCON (Timer Control Register )
Register TCON dibagi menjadi 2 bagian, 4 bit pertama (bit 0 s.d. bit 3) dipakai untuk keperluan mengatur kaki INT0 dan INT1.
Gambar 2.4. Denah susunan bit dalam register TCON (http://alds-stts.edu/digital/timer.htm)
Sisa 4 bit dari register TCON (bit 4 s.d. bit 7) dibagi menjadi 2 bagian secara simetris yang dipakai untuk mengatur Timer 0 dan Timer 1, sebagai berikut:
1) Bit TFx (maksudnya adalah TF0 atau TF1) merupakan bit penampung limpahan, TFx akan menjadi „1‟ setiap kali pencacah biner yang terhubung padanya melimpah (kedudukan pencacah berubah dari FFFFH kembali menjadi 0000H). Bit TFx dinolkan dengan instruksi CLR TFO atau CLR TF1. Jika sarana interupsi dari interupsi dari Timer 0/Timer 1 dipakai, TRx dinolkan saat MCS51 menjalankan rutin layanan interupsi (ISR – Interupt Service Routine).
2) Bit TRx (maksudnya adalah TR0 atau TR1) merupakan bit pengatur saluran sinyal denyut, bila bit ini = 0 sinyal denyut tidak disalurkan ke pencacah biner sehingga pencacah berhenti
20
mencacah. Bila bit GATE pada register TMOD = 1, maka saluran sinyal denyut ini diatur bersama oleh TRx dan sinyal pada kaki INT0/INTl.
2.2.2. Saklar dan Rile
2.2.2.1. Saklar
Saklar adalah piranti elektronika yang berfungsi untuk menghidupkan atau mematikan sumber (ON/OFF ) dengan efek mekanik, didalam ilmu elektronika, 2 macam jenis saklar push button, antara lain :
1. Push On
Saklar ini apabila ditekan maka akan menghasilkan pulsa 1, dan kemudian apabila dilepaskan maka akan kembali nol.
2. Push Off
Saklar ini apabila ditekan maka akan menghasilkan pulsa 0, dan kemudian apabila di lepaskan maka akan kembali 1.
Konstruksi dari saklar ini adalah dengan menghubungkan pegas yang terdapat didalam saklar tersebut. Pegas tersebut apabila dilepaskan maka akan kembali ke posisi semula.
Gambar 2.5. (a) Simbol push button saat OFF dan (b) Simbol push button saat OFF ON
Gambar 2.6. Bentuk fisik salah satu saklar push button
Selain saklar di atas juga masih ada lagi skalar ON/OFF berbentuk switch. Prinsip dari saklar ini adalah saklar yang jika ditekan akan berubah keadaan dari OFF menjadi ON , dan untuk mengembalikan keadaan menjadi OFF lagi perlu dilakukan penekanan lagi.
Gambar 2.7. Simbol Saklar
Gambar 2.8. Bentuk fisik salah satu Saklar
2.2.2.2. Rile
Rile adalah saklar magnetis yang dapat menghubungkan rangkaian beban ON dan OFF dengan memberi energi elektromagnetis, yang akan membuka atau menutup kontak pada rangkaian, rile mempunyai variasi aplikasi yang luas baik pada rangkaian listrik maupun elektronis. (Frank D Petruzella 2001:371). Sewaktu arus kontrol melewati kumparan, inti besi lunak akan dimagnetisasi.
22
Armature ditarik oleh inti yang dimagnetisasi. Gerakan armature ini akan menutup kontak 3 dan 4 dan akan membuka kontak 3 dan 5. dengan kata lain gerakan armature tadi telah mengubah posisi kontak 3 (lihat gambar 2.9 dibawah). Kontak – kontak ini dapat digunakan mengontrol arus yang lebih besar dalam rangkaian. Pada pengoperasian dari rile ini tidak membutuhkan tegangan dan arus yang besar apabila tidak disertai beban. Fungsi utama rile adalah mengontrol arus yang lebih besar dalam rangkaian dengan arus kecil yang melewati kumparan. Simbol rile terdiri atas sebuah kumparan dan 2 set kontak, dalam rile mempunyai 2 keadaan yaitu pada saat terbuka ( Normally Open atau NO) dan tertutup ( Normally Close atau NC). Sewaktu arus lewat kumparan, kontak NO tertutup, sebaliknya kontak NC terbuka. ( Frank D Petruzella 2001:372).
Rile terdiri dari kawat penghantar yang digulung pada silinder berinti. Jangkar atau armatur bertumpu pada sebuah batang yang ujungnya tajam dan dengan bantuan sebuah pegas ringan dan baut, sehingga jangkar dapat bertahan pada tumpuannya. Apabila kumparan dialiri arus maka akan menimbulkan medan magnet. Gaya magnetis akan menarik jangkar untuk mendekati inti. Ujung jangkar yang lain akan mendorong pegas kontak sehingga kontak terhubung. Bila kemudian arus menghilang dari kumparan, jangkar akan dilepas dan kontak terputus.
Terdapat beberapa variasi rile baik bentuk, ukuran maupun konfigurasi pensaklaran (kontak). Penggunaan rile disesuaikan dengan keperluan. Konfigurasi atau tipe pensaklaran diidentifikasi sesuai jumlah kutub (p, pole) dan banyaknya
posisi saklar (T, throw). Jumlah kutub dan posisi ini dapat didahului dengan huruf (S, untuk single dan D untuk double) atau dengan angka.
Secara umum ada dua buah konfigurasi rile yaitu :
1. SPDT (satu kutub dua posisi) yaitu rile yang mempunyai dua posisi kontak. Tipe ini mempunyai hubungan kontak kaki 3 dengan kaki 5 dan ketika kumparan diberi arus, hubungan kontak akan berpindah ke kaki 3 dengan kaki 4.
Gambar 2.9. Simbol dan Prinsip Kerja Rile SPDT
2. DPDT (dua kutub dua posisi) yaitu tipe rile yang mempunyai dua kontak terpisah dari tipe pemindah hubungan (kontak), dan digerakkan oleh jangkar melalui batang isolator.
Gambar 2.10. Simbol dan Prinsip Kerja Rile DPDT
Tegangan kerja kumparan rile biasanya 6V, 12V, 24V. Tegangan tersebut menunjukkan kerja yang diperlukan untuk menggerakkan rile.
24
2.2.3. LED
LED ( Light Emitting Diode) merupakan sebuah lampu yang mempunyai daya kecil dan biasanya digunakan sebagai lampu indikator. Daya yang kecil inilah yang menjadi alasan mengapa LED digunakan sebagai lampu indikator pada modul mikrokontroller. LED ini digunakan sebagai indikator keluaran pada pemrograman mikrokontroller. Sebenarnya keluaran juga bisa dilihat pada simulator ketika melakukan simulasi program, tetapi kelemahan simulator adalah tidak bisa dilihat secara langsung hasilnya, karena antara hasil praktik dengan teori jauh berbeda. Artinya bahwa program belum tentu jalan ketika dimasukan ke dalam memori mikrokontroller walaupun telah disimulasikan dengan baik, hal ini bisa juga disebabkan karena hardware yang dibuat ada kesalahan.
Gambar 2.11. Bentuk fisik dan simbol lampu LED
Bentuk-bentuk lampu LED bermacam-macam warnanya dan ukurannya. Tujuannya adalah untuk memenuhi kebutuhan baik mengenai warna, ukurannya maupun dayanya. Bahkan sekarang ini telah muncul beberapa lampu LED yang dapat menampilkan nyala yang berwarna-warni. Warna ini disebabkan oleh bahan pembuatnya.
Untuk menyalakan LED diperlukan arus yang cukup. Besarnya arus yang melewati LED menentukan intensitasnya. Umumnya arus yang mengalir pada LED sebesar 2 sampai 20 mA. Sedangkan penurunan tegangan LED sebesar 1,2 V sampai 2,4 V. Di bawah ini adalah rumus untuk menentukan peggunaan resistor sebagai pembatas tegangan.
R = led led I V Vcc
(Persamaan 2. 1) Dimana : VCC = Sumber teganganVLed = Tegangan kerja LED
ILed = Arus kerja Led
R = Nilai resistansi
2.2.4. Transistor Sebagai Saklar
Transistor adalah salah satu komponen yang dapat digunakan sebagai saklar elektronik. Komponen ini memiliki impedansi yang tinggi saat bersifat sebagai penghantar. Transistor ini bekerja pada daerah jenuh ( saturasi) sebagai saklar tertutup (on) dan daerah mati (cut off ) sebagai sklar terbuka (off ). Pada daerah saturasi arus mengalir tanpa halangan dari terminal kolektor menuju emitor (VCE = 0) dan arus kolektor jenuh IC sat = VCC / RC.. Kondisi seperti ini
menyerupai saklar mekanik dalam keadaan tertutup (on). Untuk membuat transistor induksi diperlukan arus basis yang minimal besarnya IB > IC / .
26
Gambar 2.12. (a) Transistor pada daerah saturasi.
(b) Ekuivalen transistor sebagai saklar on (Malvino, 1985: 123)
pada saat transistor bersifat bukan penghantar ( cut off ) berlaku ketentuan VCE = VCC, IC = 0. dalam hal ini transistor menyerupai saklar mekanik dalam
keadaan terbuka (off ). Kondisi demikian dapat direalisasikan dengan memberikan bias basis IB = 0 atau pada terminal basis diberi tegangan mundur terhadap emitor.
Gambar 2.13. Transistor pada daerah cut off (Malvino, 1985:124)
Analisis perhitungan untuk kondisi saklar secara teori adalah sebagai berikut :
Kondisi cut off
VCE = VCC – IC . RC karena IC = 0 (Persamaan 2. 2)
Maka VVE= VCC
Besar arus basis IB adalah : IB= IC / karena IC = 0, maka IB = 0 A
Kondisi saturasi (jenuh)
VCE = VCC – IC . RC (Persamaan 2. 3)
karena VCE= 0,
maka IC = VCC/ RC (Persamaan 2. 4)
Besar tahanan basis RB untuk mendapatkan arus basis IB pada kondisi
benar-benar saturasi adalah :
RB = (VBB – VBE) / IBsat (Persamaan 2. 5)
adalah
. IB > IC atau IBsat > IC /
2.2.5. Flow Chart
Flow Chart atau diagram alir adalah suatu cara yang sangat sederhana untuk mensistemkan aliran proses sebuah program. Untuk menyajikan jenis operasi sebuah program digunakan simbol-simbol. Ada delapan simbol yang sering digunakan untuk menyusun Flow Chart .
SUB ROUTIN PROSES INPUT KEPUTUSAN TERMINAL KONEKTOR AKHIR HALAMAN KONEKTOR START
28
2.3. Hipotesis
Berdasarkan tinjauan pustaka dan landasan teori, maka pemanfaatan mikrokontroller AT89S51 sebagai pengendali otomatis mesin pompa air dapat diambil hipotesis sebagai berikut :
1. Mikrokontroller dapat digunakan sebagai pengendali otomatis mesin listrik pompa air.
2. Penggunaan peralatan yang otomatis akan memudahkan manusia terhadap proses pengisian tangki air.
29 3.1. Bahan dan Alat Penelitian
Pada penelitian yang berjudul Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air ini memerlukan beberapa bahan dan alat pendukung yang digunakan, antara lain :
3.1.1. Bahan Penelitian
3.1.1.1. Sistem Minimum Mikrokontroller AT89S51
Sistem minimum Mikrokontroller AT89S51 digunakan untuk pengendali utama dari alat ini. Fungsi utama adalah mengolah data dari hasil pembacaan water level sensor untuk mengatur rile.
3.1.1.2. Transistor
Transistor pada rangkaian ini digunakan sebagai saklar untuk mengendalikan rile dan sensor water level. Transistor yang digunakan adalah transistor D400 berjenis NPN.
3.1.1.3. Saklar
Saklar digunakan untuk pemilihan mode pengisian, yaitu mode full dan half . Saklar yang digunakan adalah saklar dip switch.
30
3.1.1.4. Rile
Rile SPDT (satu kutub dua posisi) DC 12 Volt berfungsi sebagai penghubung atau pemutus tegangan 220V AC dengan mesin listrik pompa air.
3.1.1.5. Pompa Air
Pompa air aquarium AC 220V digunakan untuk memompa air ke dalam tangki penampungan air. Pompa air inilah yang dikendalikan secara otomatis oleh alat yang dibuat.
3.1.1.6. Catu Daya Teregulasi
Catu daya teregulasi digunakan sebagi sumber tegangan untuk mencatu rangkaian. Tegangan yang diperlukan adalah +5V dan +12V, digunakan catu daya teregulasi menggunakan IC LM7805 dan LM7812 sehingga diperoleh tegangan yang stabil.
3.1.2. Alat Penelitian
3.1.2.1. Komputer
Komputer digunakan untuk perancangan sistem meliputi desain rangkaian, PCB, dan Program Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis Mesin Pompa Air.
Spesifikasi :
a. Processor AMD Athlon X2
b. RAM ( Random Acces Memory ) 1 Gbyte c. Harddisk 80 Gbyte
d. Sistem Operasi Windows XP e. Tersedia DB-25 Parallel Port Text Editor
Text editor berfungsi sebagai media penulisan teks program yang akan dimasukkan ke dalam mikrokontroller AT89S51. Text editor ini telah tersedia pada fasilitas yang disediakan Windows berupa notepad.
Compiller Assembler kompatible ASM51
Compiller Assembler adalah software untuk mengubah set instruksi dalam bahasa assembly ( *.asm ) menjadi bahasa mesin ( *.hex ). Software yang digunakan adalah MCS51.
Program Downloader
Program downloader adalah Software untuk mentransfer program dalam bahasa mesin ( *.hex ) dari komputer ke mikrokontroller. Software yang digunakan adalah Aec_ISP.
3.1.2.2. Kabel ISP Programmer
Kabel programmer digunakan untuk menghubungkan antara komputer dan rangkaian Mikrokontroller AT89S51. Mikrokontroller diprogram secara in system programming sehingga program dapat langsung didownload pada rangkaian tanpa menggunakan programmer.
3.1.2.3. Multimeter
Multimeter Sanwa YX-360TRE digunakan untuk menguji komponen dan
32
3.2. Langkah Penelitian
Penelitian terdiri dari perancangan alat, realisasi sistem, dan pengujian. Secara prinsip alat Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis Mesin Pompa Air dapat dipisahkan menjadi beberapa bagian yaitu : Rangkaian input berupa water level sensor dan switch mode pengisian, rangkaian kontrol utama berupa mikrokontroller AT89S51, dan rangkaian output berupa rile untuk mengatur hidup dan matinya pompa air. Untuk lebih jelasnya dapat dilihat pada diagram blok dibawah ini.
Gambar 3.1. Diagram Blok Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis Mesin Pompa Air
3.2.1. Perancangan Alat
3.2.1.1. Perancangan Hardware
Perancangan hardware adalah penentuan rangkaian yang akan digunakan dalam alat Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air. Perancangan sesuai dengan diagram blok pada Gambar.3.1. Sistem Minimum AT89S51 (Kontrol Utama) Water level Sensor Mode Pengisian Output Relay Catu Daya Teregulasi M Pompa Air AC 220V
3.2.1.1.1. Catu Daya Teregulasi
Rangkaian Pemanfaatan Mikrokontrol AT89S51 sebagai Pengendali Otomatis Mesin Listrik Pompa Air ini tentu saja membutuhkan sumber tegangan. Untuk menghasilkan tegangan yang stabil, maka catu daya-nya menggunakan IC regulator seri LM 7812 dan LM 7805. IC LM 7812 berfungsi untuk menghasilkan tegangan output sebesar 12 Volt untuk mencatu rile sehingga dapat bekerja. IC LM 7805 berfungsi untuk menghasilkan tegangan output sebesar 5V hal ini dikarenakan pada sistem mikrokontroller membutuhkan tegangan kerja antara 4V – 5,5 V. Agar tidak terjadi perubahan tegangan yang dapat merugikan mikrokontroller AT89S51. Untuk lebih jelasnya dapat dilihat pada rangkaian dibawah ini :
Gambar 3.2. Rangkaian regulator Catu Daya +12V dan +5V
Sebelum tegangan AC 220V AC masuk ke rangkaian regulator, terlebih dahulu tegangan AC 220V AC diturunkan menjadi 12 V dengan menggunakan transformator step down kemudian disearahkan dengan menggunakan dioda bridge (jembatan), tegangan ripple akan diratakan dengan menggunakan kapasitor polar (2200uF/25V).
34
U2 LM 7812 adalah IC regulator tegangan 12V DC dan U3 LM 7805 adalah IC regulator (penstabil) tegangan 5 VDC tegangan kerja yang dibutuhkan oleh mikrokontroller.
3.2.1.1.2. Water level Sensor
Water level sensor adalah rangkaian untuk mendeteksi ketinggian air dalam tangki. Sensor didesain untuk mendeteksi tiga level ketinggian air yaitu kosong (empty), setengah (half ), dan penuh ( full) sehingga diperlukan tiga buah sensor. Sensor water level tersusun dari tiga buah transistor yang difungsikan sebagai saklar. Pada dasar air diberi tegangan +12V DC sebagai tegangan sumber, sedangkan basis dari masing-masing diletakan pada titik – titik tertentu (dasar, tengah dan atas) pada tangki.
Output sensor satu dihubungkan ke Port 1.0 sebagai sensor level atas ( full). Output sensor dua dihubungkan dengan Port 1.1 sebagai sensor level tengah (half ). Output sensor tiga dihubungkan dengan Port 1.2 sebagai sensor dasar tangki (empty).
3.2.1.1.3. Saklar Mode Pengisian
Saklar mode pengisian, berfungsi untuk mengatur jika diinginkan pengisian setengah tangki atau penuh. Saklar dihubungkan ke Port 1.3.
Gambar 3.4. Saklar Mode Pengisian (Full / Half )
3.2.1.1.4. Output Rile
Rangkaian output rile berfungsi sebagai saklar pompa air. Menggunakan prinsip transistor sebagai saklar dihubungkan dengan P0.0.
36
3.2.1.1.5. Sistem Minimum AT89S51
Mikrokontroller AT89S51 digunakan sebagai pengendali utama motor listrik pompa air. Penggunaan AT89S51 pada sistem ini karena mikrokontroller jenis ini banyak beredar di pasaran dan harganya relatif lebih murah dari
mikrokontroller jenis lainnya. Hal ini sesuai dengan hukum ekonomi, dimana semakin banyak barang yang beredar di pasar, maka semakin murah harga barang tersebut. Selain hal tersebut juga dikarenakan pemrogramannya mudah serta tersedianya alat (emulator ) yang digunakan untuk mengisikan ( up-load ) program ke dalam flash memori-nya.
Sistem minimum mikrokontroller AT89S51 mempunyai 4 buah port yang dapat digunakan sebagai masukan atau keluaran. Agar dapat bekerja, AT89S51 membutuhkan sinyal detak (clock ) yang dalam rangkaian ini memanfaatkan osilator internal. Rangkaian ini dapat menggunakan kristal 0 MHz – 33 MHz dan 2 buah kapasitor 30 pF. Untuk perancangan sistem ini menggunakan kristal 11,0592 MHz dan 2 buah kapasitor 30 pF yang terhubung ke pin 18 (XTAL2) dan pin 19 (XTAL1).
Untuk rangkaian power on reset ini diperlukannya 1 buah resistor 10 kΩ, 1 buah kapasitor 10 µF elektrolit dan tombol berupa mikroswitch yang dipasang paralel dengan kapasitornya dan Vcc. Tombol reset ini dihubungkan ke kaki RST ( pin 9 ). Untuk menanggapi reset tersebut, pada pin 9 menerima pulsa transisi dari rendah ke tinggi, sehingga jika saklar ditekan maka rangkaian akan memberi interupsi reset untuk kembali ke keadaan awal.
Gambar 3.6. Rangkaian reset
Tegangan reset minimal adalah sebesar 0,7 Vcc atau sebesar 3,5 Volt, sehingga diperoleh besarnya waktu reset, yaitu :
Vcc = Vc + Vrst 5 V = Vc + 3,5 V Vc = 1,5 V Vc = v
1 et / RC
1,5 = 5 4 10 . 10 / 1 5
t e 1,5 = 5
1 e10t
1,5 = t e 10 5 5 t e 10 5 = 3,5 t e10 = 0,7 -10 t = ln 0,7 -10 t = -0,35667 t = 35,667 msJadi waktu tunda yang dibutuhkan untuk pengosongan kapasitor adalah sebesar 35,667 ms.
Gambar 3.7. Sistem Minimum AT89S51
VCC R E S E T + 10 uF R1 10 K Reset Vrst Vc
38
Perancangan sistem ini menggunakan 3 buah port , yaitu : a. Port 0 digunakan untuk output rile terhubung dengan P0.0
b. Port 1 digunakan untuk input water level sensor dan saklar mode pengisian. P1.0 dihubungkan dengan ouput sensor 1, P1.1 dihubungkan dengan ouput sensor 2 , P1.2 dihubungkan dengan ouput sensor 3, dan P1.3 dihubungkan dengan saklar mode pemilih.
3.2.1.1.6. Sistem Keseluruhan
Dari semua bagian diatas disusun menjadi dua buah rangkaian, yaitu : Rangkaian kontrol utama dan rangkaian catu daya teregulasi. Gambar 3.8 menunjukkan rangkaian keseluruhan dari sistem kontrol pemanfaatan mikrokontrol AT89S51 sebagai pengendali otomatis mesin listrik pompa air.
Gambar 3.8. Sistem Kontrol Pemanfaatan Mikrokontrol AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air
40
3.2.1.2. Perancangan Software
Perangkat lunak adalah program yang diperlukan untuk mengatur sistem kerja dari perangkat keras ( Hardware). Program merupakan urutan instruksi untuk melaksanakan tugas tertentu. Dalam pembuatan program pemanfaatan mikrokontrol AT89S51 sebagai kendali otomatis mesin listrik pompa air ini menggunakan metode Douglas, yaitu menggunakan empat langkah sbb :
a. Pendefinisian permasalahan
Langkah pertama yang harus dilakukan adalah memikirkan secara cermat permasalahan yang ingin diselesaikan menggunakan program. Dalam hal ini permasalahan yang akan diselesaikan adalah membuat program untuk mengendalikan mesin listrik pompa air sehingga dapat digunakan untuk
40
3.2.1.2. Perancangan Software
Perangkat lunak adalah program yang diperlukan untuk mengatur sistem kerja dari perangkat keras ( Hardware). Program merupakan urutan instruksi untuk melaksanakan tugas tertentu. Dalam pembuatan program pemanfaatan mikrokontrol AT89S51 sebagai kendali otomatis mesin listrik pompa air ini menggunakan metode Douglas, yaitu menggunakan empat langkah sbb :
a. Pendefinisian permasalahan
Langkah pertama yang harus dilakukan adalah memikirkan secara cermat permasalahan yang ingin diselesaikan menggunakan program. Dalam hal ini permasalahan yang akan diselesaikan adalah membuat program untuk mengendalikan mesin listrik pompa air sehingga dapat digunakan untuk mengisi tangki air secara otomatis.
b. Representasi kerja program
Sekuen atau formula kerja yang digunakan untuk mengendalikan mesin listrik pompa air sehingga dapat digunakan untuk mengisi tangki air secara otomatis ini disebut Algoritma program. Algoritma berisi urutan-urutan pekerjaan yang harus dijalankan sehingga tujuan dari pembuatan program dapat tercapai dengan baik.
Flow Chart atau diagram alir adalah cara yang sangat sederhana untuk menunjukkan aliran proses sebuah program. urutan proses yang dijalankan dituliskan dalam bentuk-bentuk grafis sehingga lebih mudah dalam melihat urutan proses yang harus dijalankan.
d. Penulisan program
Program yang dimengerti oleh mikrokontroller dan dieksekusi secara langsung adalah program bahasa mesin. Instruksi ditulis dalam bahasa assembly MCS-51. Instruksi tersebut di-compile kedalam bentuk bilangan hexa-decimal yang disebut op-code (operation code).
Gambar 3.9. Bentuk Program Assembler
Mikrokontroller memiliki bahasa assembler khusus, dengan bentuk umum semua instruksinya adalah :
1. Label, merupakan suatu simbol dapat berupa suatu tanda yang mensistemkan nama dari suatu alamat.
2. Mnemonic, merupakan simbol operasi dari suatu instruksi.
3. Operand, merupakan penyedia informasi yang dibutuhkan operasi untuk melakukan fungsinya.
4. Comment, merupakan pemberi keterangan pada instruksi program.
Program pada perancangan rangkaian Pemanfaatan mikrokontrol AT89S51 sebagai pengendali otomatis mesin listrik pompa air merupakan program yang menjalankan fungsi mikrokontroller AT89S51 sebagai pengendali utama. Alur berpikirnya adalah sebagai berikut :
42
a. Algoritma Step 1. Start
Step 2. Seting kondisi awal (default)
Step 3. BacaWater level Sensor dan Saklar Mode Pengisian
Step 4. Apakah semua sensor tidak terendam Step 5. Jika ya lompat kestep 13
Step 6. Apakah Mode Half, dan semua sensor tidak terendam Step 7. Jika ya, lompat kestep 13
Step 8. Apakah semua sensor terendam Step 9. Jika ya lompat kestep 15
Step 10. Apakah Mode Half, dan sensor bawah dan sensor tengah terendam Step 11. Jika ya, Lompat kestep 15
Step 12. Kembali kestep 3
Step 13. Hidupkan Pompa Air Step 14. Kembali kestep 3
Step 15. Matikan Pompa Air Step 16. Stop
b. Flow Chart
START
BACA P1 SIMPAN DI REG A AND KAN DENGAN 00001111
P 0.0 = RELAY A≠00000000 MATIKAN RELAY A≠00001001 A≠00000111 A≠00001111 HIDUPKAN RELAY STOP Y N N N N Y Y Y
Gambar 3.10. Flow Chart Program
c. Source Code
;===================================================== ; PEMANFAATAN MIKROKONTROLLER AT89S51
; SEBAGAI PENGENDALI OTOMATIS MESIN LISTRIK POMPA AIR ; OLEH : MARSUDI
;=====================================================
;---; INISIALISASI PIN - PIN IC
;---RILE BIT P0.0 ; AKTIF HIGH ;---;SETING KONDISI AWAL (DEFAULT)
;---ORG 00H MATIKAN:
CLR RILE ; MATIKAN RILE ;---;PROGRAM UTAMA ;---START: MOV A,P1 ANL A,#00001111B
CEK1: CJNE A, #00001111B, CEK2 SJMP HIDUPKAN
CEK2: CJNE A, #00000111B, CEK3 SJMP HIDUPKAN
CEK3: CJNE A, #00000000B, CEK4 SJMP MATIKAN
CEK4: CJNE A, #00001001B, START SJMP MATIKAN
;---;FUNGSI MENGHIDUPKAN POMPA AIR ;---HIDUPKAN:
SETB RILE SJMP START END
44
3.2.2. Realisasi Sistem
Dalam penyelesaiannya rancang bangun Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air ini melalui beberapa langkah kerja sebagai berikut :
1. Merancang layout pada komputer menggunakan PCB Designer 1.5 2. Mencetak layout yang telah dirancang ke transparasi
3. Membuat layout dalam PCB dengan menggunakan setrika
4. Melarutkan tembaga PCB dengan menggunakan larutan Ferry Clorida 5. Mengumpulkan komponen dan bahan-bahan yang diperlukan
6. Pengujian komponen – komponen yang diperlukan
7. Pengeboran PCB, pemasangan, penyolderan, dan pengawatan 8. Membuat software (program) dengan bahasa assembly
9. Uji coba tiap blok rangkaian untuk mengetahui karakeristik fungsinya 10. Uji coba keseluruhan alat untuk kinerja alat sampai sesuai dengan yang
diharapkan.
11. Pemasangan rangkaian ke dalam box. 12. Mengamati cara kerja rangkaian 13. Manganalisa hasil pengujian 14. Membuat laporan
45 4.1. Hasil Pengujian
4.1.1. Sistem Minimum AT89S51 dan Output Rile
Pengujian sistem minimum dengan memberi program sederhana pada mikrokontroller berupa flip-flop untuk mengatur rile yang terhubung dengan P0.0. Pengujian output rile dilakukan dengan mengontrol lama hidup dan lama mati pompa air. Adapun program dalam mikrokontroller sebagai berikut :
;---; PROGRAM UJI RILE
;---ORG 0H MULAI: SETB P0.0 CALL DELAY CLR P0.0 CALL DELAY JMP MULAI DELAY:MOV R0,#10 DEL1 : MOV R1,#255 DEL2 : MOV R2,#255 DJNZ R2,$ DJNZ R1,DEL2 DJNZ R0,DEL1 RET
Setelah program dijalankan pada mikrokontroller maka rangkaian output rile yang terhubung dengan pompa air aquarium menyala selama beberapa saat kemudian mati beberapa saat. Dari hasil pengujian itu telah didapatkan kesimpulan rangkaian sistem minimum AT89S51 dan output rile dapat digunakan untuk mengendalikan pompa air.
46
4.1.2. Water level Sensor
Water level sensor memanfaatkan transistor sebagai saklar, sehingga untuk melakukan pengujian sensor ini harus dilakukan pengukuran titik kerja masing-masing transistor.
Tabel 4.1. Titik Kerja Transistor Sensor 1 Q1
Kondisi VB VRC VC IC V out
Menggantung 0 V 0,5 V 11,5 V 0,05 mA 4 V
Terendam 2 V 11,5 V 0,5 V 1,15 mA 0,0 V
Tabel 4.2. Titik Kerja Transistor Sensor 2 Q2
Kondisi VB VRC VC IC V out
Menggantung 0 V 0,5 V 11,5 V 0,05 mA 4 V
Terendam 2 V 11,5 V 0,5 V 1,15 mA 0,0 V
Tabel 4.3. Titik Kerja Transistor Sensor 3 Q3
Kondisi VB VRC VC IC V out
Menggantung 0 V 0,5 V 11,5 V 0,05 mA 4 V
Terendam 2 V 11,5 V 0,5 V 1,15 mA 0,0 V
Dari hasil pengukuran titik kerja transistor dan tegangan output sensor dapat diambil kesimpulan water level sensor sudah bekerja dengan memberi nilai logika digital untuk mikrokontroller.
4.1.3. Saklar Mode
Rangkaian input ini hanya terdiri saklar sehingga hanya perlu mengukur tegangan pin yang terhubung dengan saklar. Setelah dilakukan pengukuran saat kondisi saklar OFF tegangan dari Port 1.3 adalah sama sebesar 0 Volt dan pada saat saklar ON tegangan sama dengan 5 Volt. Dari hasil pengukuran dapat disimpulkan rangkaian input sudah bekerja.
4.1.4. Pengujian Sistem
Pada saat saklar mode posisi half, bak belum terisi air, catu daya dihidupkan. Pompa air hidup dan air mengalir dan mengisi bak penampungan air. volume air pada bak penampung semakin naik, sehingga sensor 3 (bawah) akan terendam. Ketika ketinggian air mencapai sensor 2 (tengah) mesin listrik pompa air mati. Jika kran dihidupkan air akan mengalir dari bak penampung, sehingga volume air akan berkurang ketika sensor tengah tidak terendam mesin listrik pompa air tetap mati dan ketika sensor bawah tidak terendam pompa air menyala.
Pada saat saklar mode posisi full, bak belum terisi air, catu daya dihidupkan. Pompa air hidup dan air mengalir dan mengisi bak penampungan air. volume air pada bak penampung semakin naik, sehingga sensor bawah akan terendam. Ketika ketinggian air mencapai sensor tengah mesin listrik pompa air tetap menyala dan ketika semua sensor terendam mesin listrik pompa air mati. Jika kran dihidupkan air akan mengalir dari bak penampung, sehingga volume air akan berkurang ketika sensor tengah tidak terendam mesin listrik pompa air masih tetap mati dan ketika semua sensor tidak terendam pompa air menyala.
Dari hasil pengujian diatas dapat diambil kesimpulan bahwa sistem pemanfaatan mikrokontroller AT89S51 sebagai pengendali mesin listrik pompa air sudah bekerja sesuai dengan perencanaan.
48
4.2. Pembahasan
4.2.1. Analisis Perangkat Keras
Berdasarkan hasil pengujian alat baik pengujian perbagian maupun secara keseluruhan maka dapat diuraikan beberapa permasalahan yang berhubungan dengan kinerja alat :
4.2.1.1. Sistem Minimum dan Output Rile
Sistem minumum yang sudah terhubung dengan interface output rile sudah bekerja sesuai dengan rencana. Hal ini diketahui dari hasil percobaan mengendalikan mesin listrik pompa air menghidupkan dan mematikan beberapa saat. Dengan memanfaatkan program yang telah disusun dan diterapkan pada mikrokontroler yang berupa lampu flip-flop. Ternyata maksud yang diinginkan penulis berhasil sesuai dengan rencana
4.2.1.2. Water Level Sensor dan Saklar Mode
Water level sensor digunakan untuk mendeteksi ketinggian air dalam bak penampungan air. Dari hasil pengujian yang dilakukan dapat diambil kesimpulan bahwa sensor sudah bekerja sesuai dengan rencana. Hal ini diketahui dari hasil pengukuran output sensor yang sudah dapat memberi logika digital mewakili keadaan sensor terendam air dan tidak terendam air. Ketika sensor t erendam maka sensor memberi logika 0 dan ketika tidak terendam akan memberi logika 1.
Saklar mode sudah bekerja sesuai dengan rencana, hal ini dibuktikan dari hasil pengujian bahwa saklar mode sudah dapat memberi logika digital mewakili pemilihan mode full/half.
4.2.2. Analisis Program
Pada sistem pemanfaatan mikrokontrol sebagai pengendali mesin pompa air, dari 32 pin AT89S51 yang tersedia hanya ada 5 pin yang digunakan yaitu 4 pin sebagai input dan 1 pin sebagai output . Semua input diletakkan pada Port yang sama bertujuan agar dalam mengakses input lebih mudah. Port yang digunakan sebagai input adalah Port 1, konfigurasinya sbb:
P1.0 Sensor water level atas P1.1 Sensor water level tengah P1.2 Sensor water level bawah P1.3 Saklar mode pengisian
Sehingga dari kombinasi input sensor dan saklar mode dapat disusun tabel kebenaran sistem kontrol pemanfaatan mikrokontrol sebagai pengendali otomatis mesin listrik pompa air dibawah ini.
Tabel 4.4. Kebenaran Kontrol Pompa Air Otomatis { f(input) = output }
NO Input Output Pompa Air keterangan Saklar Mode Water level Sensor Bawah Tengah Atas
1 0 0 0 0 0 Saklar Mode : 0 = Mode Full 1 = Mode Half Sensor : 0 = Terendam 1 = Menggantung Pompa Air : 0 = Mati 1 = Hidup x = Tidak tentu 2 0 0 0 1 x 3 0 0 1 0 x 4 0 0 1 1 x 5 0 1 0 0 x 6 0 1 0 1 x 7 0 1 1 0 x 8 0 1 1 1 1 9 1 0 0 0 x 10 1 0 0 1 0 11 1 0 1 0 x 12 1 0 1 1 x 13 1 1 0 0 x 14 1 1 0 1 x 15 1 1 1 0 x 16 1 1 1 1 1