Perancangan Alat Pemutus Aliran Listrik Saat Terjadi Gempa Berbasis Mikrokontroller AT89S51
PERANCANGAN ALAT PEMUTUS ALIRAN LISTRIK SAAT TERJADI GEMPA BERBASIS MIKROKONTROLLER AT89S51
TUGAS AKHIR
RONNY PINAR HUTAPEA
0 5 2 4 0 8 0 5 8
PROGRAM STUDI FISIKA INSTRUMENTASI D-3
DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2008
(2)
PERANCANGAN ALAT PEMUTUS ALIRAN LISTRIK SAAT TERJADI GEMPA BERBASIS MIKROKONTROLLER AT89S51
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Ahli Madya
RONNY PINAR HUTAPEA
0 5 2 4 0 8 0 5 8
PROGRAM STUDI FISIKA INSTRUMENTASI D-3
DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2008
(3)
PERSETUJUAN
JuduI : PERANCANGAN ALAT PEMUTUS ALIRAN
LISTRIK SAAT TERJADI GEMPA BERBASIS MIKROKONTROLLER AT89S51
Kategori : TUGAS AKHIR
Nama : RONNY PINAR HUTAPEA
Nomor Induk Mahasiswa : 052408058
Program Studi : D3 FISIKA INSTRUMENTASI
Departemen : FISIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA (USU)
Diluluskan di
Medan, JULI 2008
Diketahui/Disetujui oleh
Departemen Fisika FMIPA USU
Ketua Pembimbing
(DR. Marhaposan Situmorang) (Dr. Eddy Marlianto, MSc.)
(4)
PERNYATAAN
PERANCANGAN ALAT PEMUTUS ALIRAN LISTRIK SAAT TERJADI GEMPA BERBASIS MIKROKONTROLLER AT89S51
TUGAS AKHIR
Saya mengakui bahwa laporan tugas akhir ini adalah hasil kerja saya sendiri,kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, JULI 2008
RONNY PINAR HUTAPEA 052408058
(5)
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala anugerah dan karunianya sehingga penulis dapat menyelesaikan laporan tugas akhir ini.
Ucapan terimakasih saya sampaikan kepada Dr.Eddy Marlianto, MSc. selaku pembimbing pada penyelesaian laporan tugas akhir ini yang telah memberikan panduan dan perhatian kepada penulis untuk menyempurnakan laporan ini. Ucapan terimakasih juga ditujukan kepada ketua jurusan Fisika Instrumentasi bapak DR. Marhaposan Situmorang dan dosen-dosen pengajar pada jurusan Fisika Instrumentasi, dan kawan-kawan mahasiswa Fisika Instrumentasi stambuk 2005 atas segala bantuan dan motivasinya sehingga penulis dapat menyelesaikan laporan ini dengan baik. Dan juga saya tidak lupa mengucapkan terimakasih kepada kedua orang tua penulis yang begitu banyak memberikan materil maupun spiritual pada penulis sehingga penulis dapat menyelesaikan laporan tugas akhir ini. Semoga Tuhan Yang Maha Esa akan membalasnya.
(6)
ABSTRAK
Dari sekian banyak teknologi Instrumentasi, teknologi Instrumentasi mengenai pemutusan arus pada saat terjadi gempa yang secaa otomatis dapat mematikan aliran lisrik guna menghindari kerusakan yang lebih parah dan koban jiwa yang diakibatkan aliran listrik yang masih menyala pada saat terjadi gempa.
Pada hal ini Instrumen pemutus liran listrik pada saat gempa dirangkai dengan Mikrokontroller AT89S51, rangkaian penguat sinyal, seven segmen sebagai tampilan display, power suplay amplifier sebagai sumber tegangan dan dilengkapi dengan buzzer sebagai alarm. Mikrokontroler AT89S51 sebagai pengendali dari sistem, yang berfungsi mengolah data yang masuk dari sensor. Dari perancangan sistem ini diperoleh bahwa alat pemutus aliran listrik ini dapat mengurangi kerugian yang terjadi akibat gempa dengan memberikan peringatan berupa alarm pada saat gempa masih berkekuatan kecil terjadi, dan akan memutuskan aliran listrik apabila terjadi gempa berkekuatan besar.
(7)
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
Daftar isi vi
Daftar Tabel viii
Daftar Gambar ix
Bab 1 Pendahuluan 1
1.1Latar Belakang Masalah 1
1.2Rumusan Masalah 2
1.3Tujuan Penulisan 2
1.4Sistematika Penulisan 3
Bab 2 Tinjauan Pustaka 5
2.1 Perangkat Keras 5
2.1.1 Arsitektur Mikrokontoler AT89S51 5
2.1.2 Konstruksi AT89S51 6
2.1.3 Relay 11
2.1.4 Seven Segmen 12
2.2 Perangkat Lunak 15
2.2.1 Bahasa Assembly MCS-51 15 2.2.2 Software 8051 Editor,Assembler,Simulator ( IDE ) 18 2.2.3 Software Downloader 19
Bab 3 Perancangan Alat dan Bahan 21
3.1 Perancangan Alat 21
3.1.1 Diagram Blok 22
3.1.1 Sistem Kerja Rangkaian 22
3.2 Diagram Alir 23
3.3 Perancangan Power Supply ( PSA ) 24
3.4 Rangkaian Mikrokontroller AT89S51 27
3.5 Rangkaian Display Seven Segmen 26
3.6 Rangkaian Pengendali Alarm 27
3.7 Rangkaian Pengendali Lampu 220 V AC 29
3.8 Penguat Sinyal 31
3.9 Sensor Getaran 31
Bab 4 Pengujian dan Analisa Sistem 33
4.1 Rangkaian Power Supply ( PSA ) 33
4.2 Pengujian Rangkaian Mikrokontroler AT89S51 34
4.3 Pengujian Rangkaian Relay 36
(8)
4.5 Rangkaian Pengendali Alarm 40
Bab 5 Penutup 43
5.1 Kesimpulan 43
5.2 Saran 43
Daftar Pustaka 44
LAMPIRAN
(9)
ABSTRAK
Dari sekian banyak teknologi Instrumentasi, teknologi Instrumentasi mengenai pemutusan arus pada saat terjadi gempa yang secaa otomatis dapat mematikan aliran lisrik guna menghindari kerusakan yang lebih parah dan koban jiwa yang diakibatkan aliran listrik yang masih menyala pada saat terjadi gempa.
Pada hal ini Instrumen pemutus liran listrik pada saat gempa dirangkai dengan Mikrokontroller AT89S51, rangkaian penguat sinyal, seven segmen sebagai tampilan display, power suplay amplifier sebagai sumber tegangan dan dilengkapi dengan buzzer sebagai alarm. Mikrokontroler AT89S51 sebagai pengendali dari sistem, yang berfungsi mengolah data yang masuk dari sensor. Dari perancangan sistem ini diperoleh bahwa alat pemutus aliran listrik ini dapat mengurangi kerugian yang terjadi akibat gempa dengan memberikan peringatan berupa alarm pada saat gempa masih berkekuatan kecil terjadi, dan akan memutuskan aliran listrik apabila terjadi gempa berkekuatan besar.
(10)
BAB I
PENDAHULUAN
I.1. Latar Belakang Masalah
Kemajuan dan perkembangan dunia terus melaju dan berkembang dengan pesat. Hal ini terjadi di berbagai bidang, baik di bidang ekonomi, sosial budaya, maupun bidang-bidang eksakta dan teknologi. namun teknologi pada bidang-bidang penanggulangan bencana alam gempa belumlah cukup memadai sehingga dengan keterbatasan teknologi di bidang bencana alam gempa ini menyebabkan banyak kerugian yang terjadi baik itu dalam bidang perekonomian maupun bidang bidang yang lain.
Berkaitan dengan hal di atas, perlu dibuat suatu alat yang dapat meminimalkan kerugian dan bahaya yang ditimbulkan oleh gempa tersebut. terutama kerugian yang ditimbulkan oleh aliran listrik yang tetap menyala sewaktu gempa berlangsung.
Alat pemutus aliran listrik secara otomatis adalah jawabannya, Kehadiran alat pemutus aliran listrik secara otomatis tersebut diharapkan dapat meminimalkan kerugian yang terjadi akibat tidak terputusnya aliran listrik walau gempa sedang terjadi maupun sesudahnya.
Untuk itu penulis ingin mencoba merancang suatu sistem yang dapat membantu mengatasi hal tersebut dan menuangkannya dalam bentuk skripsi dengan judul “Perancangan alat pemutus aliran listrik saat terjadi gempa berbasis mikrokontroller AT89S51”. Bahasa yang digunakan dalam pembahasan skripsi ini adalah bahasa pemrograman Assembler
(11)
Dengan adanya alat ini diharapkan masyarakat akan sedikit merasa lega karena bahaya yang ditimbulkan oleh listrik yang tidak terkontrol saat musibah berlangsung dapat diatasi secara otomatis sehingga dengan adanya alat ini masyarakat tidak perlu lagi takut akan efek yang terjadi apabila listrik tetap menyala sewaktu terjadi gempa.
I.2. Rumusan Masalah
Mengacu pada hal diatas, pada tugas akhir ini akan merancang suatu sistem pemutus aliran listrik secara otomatis dengan menggunakan mikrokontroler.
Pada alat ini akan digunakan sebuah mikrokontroler AT89S51
Mikrokontroler AT89S51 sebagai pengendali dari sistem, yang berfungsi mengendalikan semua rangkaian dan akan menampilkan kondisi dari keluaran sensor jika gempa terjadi dan memutuskan aliran lisrik secara otomatis.
I.3 Tujuan Penulisan
Tujuan dilakukan Tugas Akhir ini adalah sebagai berikut:
1. Memanfaatkan mikrokontroller sebagai alat pengendali rangkaian pemutus aliran listrik saat terjadi gempa
2. Memanfaatkan sensor untuk mendeteksi ada atau tidaknya gempa yang terjadi 3. Merancang sebuah alat yang dapat memutuskan aliran litrik secara otomatis
pada saat terjadi gempa
(12)
Untuk mempermudah pemahaman serta pembahasan bagaimana sebenarnya prinsip kerja sistem alat pemutus aliran listrik pada saat terjadi gempa dengan menggunakan mikrokontroler , maka sistematika penulisan Tugas Akhir ini sebagai berikut:
BAB I. PENDAHULUAN
Dalam bab ini berisikan mengenai latar belakang, rumusan masalah, tujuan penulisan, batasan masalah, serta sistematika penulisan.
BAB II. LANDASAN TEORI
Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian Teori pendukung itu antara lain tentang mikrokontroler AT89S51 (hardware dan software), bahasa program yang digunakan. serta karekteristik dari komponen-komponen pendukung.
BAB III. PERANCANGAN ALAT DAN PROGRAM
Pada bagian ini akan dibahas perancangan dari alat, yaitu diagram blok dari rangkaian, skematik dari masing-masing rangkaian dan diagram alir dari program yang akan diisikan ke mikrokontroler AT89S51.
BAB IV. PENGUJIAN DAN ANALISA
Dalam bab ini akan dibahas tentang hasil dari pengujian alat dan analisa guna melengkapi pembuktian kebenaran dari alat yang dibuat.
(13)
BAB V. KESIMPULAN DAN SARAN
Dalam bab ini akan menjelaskan kesimpulan dan saran yang merupakan bagian akhir dari penyusunan tugas akhir ini.
(14)
BAB 2
TINJAUAN PUSTAKA
2.1. PERANGKAT KERAS
2.1.1 Arsitektur Mikrokontroler AT89S51
Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semikonduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah (dibandingkan mikroprosesor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat Bantu dan mainan yang lebih canggih.
Ilustrasi yang mungkin bisa memberikan gambaran yang jelas dalam penggunaan mikrokontroler adalah pada pintu mal otomatis pada saat ada orang akan masuk atau keluar. sensor jarak yang mendeteksi adanya orang di depan pintu yang akan masuk, akan dilanjutkan ke mikrokontroler untuk kemudian membuka pintu secara otomatis, dan kembali menutup saat orang tersebut melewati pintu.
Selain sistem pintu otomatis di atas, kita juga dapat menjumpai aplikasi mikrokontroler dalam bidang pengukuran jarak jauh atau yang dikenal dengan sistem telemetri. Misalnya pengukuran disuatu tempat yang membahayakan manusia, maka akan lebih nyaman jika dipasang suatu sistem pengukuran yang bisa mengirimkan data lewat pemancar dan diterima oleh stasiun pengamatan dari jarak yang cukup
(15)
aman dari sumbernya. Sistem pengukuran jarak jauh ini jelas membutuhkan suatu system akuisisi data sekaligus system pengiriman data secara serial (melalui pemancar), yang semuanya itu bisa diperoleh dari mikrokontroler yang digunakan.
Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya), mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM-nya dan ROM. Pada system computer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relative besar, sedangkan rutin-rutin antarmuka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program control disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sementara, termasuk register-register yang digunakan pada mikrokontroler yang bersangkutan.
2.1.2 Kontruksi AT89S51
Mikrokontrol AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 10 Kilo Ohm dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini AT89S51 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan frekuensi maksimum 24 MHz dan kapasitor 30 piko-Farad dipakai untuk melengkapi rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja mikrokontroler.
(16)
Memori merupakan bagian yang sangat penting pada mikrokontroler. Mikrokontroler memiliki dua macam memori yang sifatnya berbeda.
Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dangan keperluannya, dalam susunan MCS-51 memori penyimpanan progam ini dinamakan sebagai memori progam.
Random Access Memori (RAM) isinya akan sirna begitu IC kehilangan catu daya, dipakai untuk menyimpan data pada saat progam bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data.
Ada berbagai jenis ROM. Untuk mikrokontroler dengan progam yang sudah baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC mikrokontroler dicetak di pabrik IC. Untuk keperluan tertentu mikrokontroler mengunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra Violet Eraseable Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah ada flash PEROM yang harganya jauh lebih murah.
Jenis memori yang dipakai untuk Memori Program AT89S51 adalah Flash PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat bantuan alat yang dinamakan sebagai AT89S51 Flash PEROM Programmer.
Memori Data yang disediakan dalam chip AT89S51 sebesar 128 byte, meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah cukup.
Sarana Input/Ouput yang disediakan cukup banyak dan bervariasa. AT89S51 mempunyai 32 jalur Input/Ouput. Jalur Input/Ouput paralel dikenal sebagai Port 1 (P1.0..P1.7) dan Port 3 (P3.0..P3.5 dan P3.7).
(17)
AT89S51
Gambar 2.1. IC Mikrokontroler AT89S51
Deskripsi pin-pin pada mikrokontroler AT89S51 :
VCC (Pin 40)
Suplai tegangan
GND (Pin 20)
Ground
Port 0 (Pin 39-Pin 32)
Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut.
Pada fungsi sebagai low order multiplex address/data, port ini akan mempunyai internal pull up.
Pada saat flash programming diperlukan eksternal pull up, terutama pada saat verifikasi program.
(18)
Port 2 (Pin 21 – pin 28)
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengaksememori secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan mengeluarkan isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat memberikan output sink keempat buah input TTL.
Port 3 (Pin 10 – pin 17)
Port 3 merupakan 8 bit port I/O dua arah dengan internal pullup. Port 3 juga mempunyai fungsi pin masing-masing, yaitu sebagai berikut :
Tabel 2.1. Tabel Port 3 (pin 10 – 17) Nama pin Fungsi
P3.0 (pin 10) RXD (Port input serial) P3.1 (pin 11) TXD (Port output serial) P3.2 (pin 12) INTO (interrupt 0 eksternal) P3.3 (pin 13) INT1 (interrupt 1 eksternal) P3.4 (pin 14) T0 (input eksternal timer 0) P3.5 (pin 15) T1 (input eksternal timer 1)
P3.6 (pin 16) WR (menulis untuk eksternal data memori) P3.7 (pin 17) RD (untuk membaca eksternal data memori)
RST (pin 9)
Reset akan aktif dengan memberikan input high selama 2 cycle.
(19)
Address Latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat selama mengakses memori eksternal. Selain itu, sebagai pulsa input progam (PROG) selama memprogam Flash.
PSEN (pin 29)
Progam store enable digunakan untuk mengakses memori progam eksternal.
EA (pin 31)
Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada memori internal. Pada saat flash progamming, pin ini akan mendapat tegangan 12 Volt.
XTAL1 (pin 19)
Input untuk clock internal.
XTAL2 (pin 18)
Output dari osilator.
2.1.3 Relay
Relay adalah suatu rangkaian switch magnetik yang bekerja bila mendapat catu dan suatu rangkaian trigger. Relay memiliki tegangan dan arus nominal yang harus
(20)
dipenuhi output rangkaian pendriver atau pengemudinya. Arus yang digunakan pada rangkaian adalah arus DC.
Konstruksi dalam suatu relay terdiri dari lilitan kawat (coil) yang dililitkan pada inti besi lunak. Jika lilitan kawat mendapatkan aliran arus, inti besi lunak kontak menghasilkan medan magnet dan menarik switch kontak. Switch kontak mengalami gaya listrik magnet sehingga berpidah posisi ke kutub lain atau terlepas dari kutub asalnya. Keadaan ini akan bertahan selama arus mengalir pada kumparan relay. Dan relay akan kembali keposisi semula yaitu normaly ON atau Normaly OFF, bila tidak ada lagi arus yang mengalir padanya, posisi normal relay tergantung pada jenis relay yang digunakan. Dan pemakaian jenis relay tergantung pada kadaan yang diinginkan dalam suatu rangkaian.
Menurut kerjanya relay dapat dibedakan menjadi :
a. Normaly Open (NO), saklar akan tertutup bila dialiri arus b. Normaly Close (OFF), saklar akan tertutup bila dialiri arus
c. Change Over (CO), relay ini mempunyai saklar tunggal yang nomalnya tertutup yang lama, bila kumparan 1 dialiri arus maka saklar akan terhubung ke terminal A, sebaliknya bila kumparan 2 dialiri arus maka saklar akan terhubung ke terminal B.
Analogi rangkaian relay yang digunakan pada laporan proyek ini adalah saat basis transistor ini dialiri arus, maka transistor dalam keadaan tertutup yang dapat menghubungkan arus dari kolektor ke emiter yang mengakibatkan relay terhubung. Sedangkan fungsi dioda disini adalah untuk melindungi transistor dari tegangan induksi berlebih, dimana tegangan ini dapat merusak transistor.
(21)
Jika transistor pada basis tidak ada arus maju, transistor terbuka sehingga arus tidak mengalir dari kolektor ke emiter, relay tidak bekerja karena tidak ada arus yang mengalir pada gulungan kawat.
Bentuk relay yang digunakan dengan rangkaian driver dapat dilihat pada gambar2.24
Vcc
Tr VB
Dioda
a. Simbol b. Relay dengan rangkaian driver
Gambar 2.2. Simbol Relay dan Rangkaian Driver
2.1.4 Seven Segmen
Seven segmen merupakan komponen elektronika yang banyak digunakan untuk menampilkan angka. Seven segmen ini sebenarnya merupakan LED yang disusun sedemikian rupa sehingga membentuk suatu pola tertentu, dimana jika LED –LED tersebut dinyalakan dengan kombinasi tertentu, maka akan terbentuk suatu angka tertentu.
Seven segmen mempunyai 7 buah segmen ditambah 1 segmen yang berfungsi sebagai desimal point. Gambar susunan dari seven segmen ditunjukkan pada gambar 2.3 :
(22)
Gambar.2.3. Susunan Seven Segmen
Segmen yang atas disebut segmen a, segmen sebelah kanan atas disebut segmen b, dan seterusnya sesuai gambar di atas. Dp merupakan singkatan dari desimal point.
Seven segmen ada 2 tipe, yaitu common anoda dan common katoda. Pada seven segmen tipe common anoda, anoda dari setiap LED dihubungkan menjadi satu kemudian dihubungkan ke sumber tegangan positip dan katoda dari masing-masing LED berfungsi sebagai input dari seven segmen, seperti ditunjukkan pada gambar berikut ini :
(23)
Sesuai dengan gambar di atas, maka untuk menyalakan salah satu segmen, maka katodanya harus diberi tegangan 0 volt atau logika low. Misalnya jika segmen a akan dinyalakan, maka katoda pada segmen a harus diberi tegangan 0 volt atau logika low, dengan demikian maka segmen a akan menyala. Demikian juga untuk segmen lainnya.
Pada seven segmen tipe common katoda, katoda dari setiap LED dihubungkan menjadi satu kemudian dihubungkan ke ground dan anoda dari masing-masing LED berfungsi sebagai input dari seven segmen, seperti ditunjukkan pada gambar berikut ini:
Gambar.2.5. konfigurasi Seven Segmen Tipe Common Katoda
Sesuai dengan gambar di atas, maka untuk menyalakan salah satu segmen, maka anodanya harus diberi tegangan minimal 3 volt atau logika high. Misalnya jika segmen a akan dinyalakan, maka anoda pada segmen a harus diberi tegangan minimal 3 volt atau logika high, dengan demikian maka segmen a akan menyala. Demikian juga untuk segmen lainnya.
(24)
2.2PERANGKAT LUNAK
2.2.1. Bahasa Assembly MCS-51
Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa ini hanya ada 51 instruksi. Dari 51 instruksi, yang sering digunakan orang hanya 10 instruksi. Instruksi–instruksi tersebut antara lain :
1. Instruksi MOV
Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.
Contoh pengisian nilai secara langsung MOV R0,#20h
Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0). Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai. Contoh pengisian nilai secara tidak langsung
MOV 20h,#80h ...
... MOV R0,20h
Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20 Heksadesimal ke register 0 (R0).
Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah alamat.
(25)
Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk mengurangi nilai register tertentu dengan 1 dan lompat jika hasil pengurangannya belum nol. Contoh ,
MOV R0,#80h Loop: ...
...
DJNZ R0,Loop ...
R0 -1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan meneruskan ke perintah pada baris berikutnya.
3. Instruksi ACALL
Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh : ...
ACALL TUNDA ...
TUNDA:
... 4. Instruksi RET
Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin pemanggil setelah instruksi ACALL dilaksanakan. Contoh,
ACALL TUNDA ...
TUNDA:
... RET.
5. Instruksi JMP (Jump)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh, Loop:
(26)
... ...
JMP Loop
6. Instruksi JB (Jump if bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika high (1). Contoh,
Loop:
JB P1.0,Loop ...
7. Instruksi JNB (Jump if Not bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika Low (0). Contoh,
Loop:
JNB P1.0,Loop ...
8. Instruksi CJNZ (Compare Jump If Not Equal)
Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register dengan suatu nilai tertentu. Contoh,
Loop:
...
CJNE R0,#20h,Loop
...
Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan instruksi selanjutnya..
9. Instruksi DEC (Decreament)
Instruksi ini merupakan perintah untuk mengurangi nilai register yang dimaksud dengan 1. Contoh,
(27)
...
DEC R0 R0 = R0 – 1 ...
10.Instruksi INC (Increament)
Instruksi ini merupakan perintah untuk menambahkan nilai register yang dimaksud dengan 1. Contoh,
MOV R0,#20h R0 = 20h ...
INC R0 R0 = R0 + 1 ...
11.Dan lain sebagainya
2.2.2. Software 8051 Editor, Assembler, Simulator (IDE)
Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah editor, yaitu 8051 Editor, Assembler, Simulator (IDE). Tampilannya seperti pada gambar 2.6 :
(28)
Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble (di-compile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu sampai tidak ada pesan kesalahan lagi.
Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an. Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroller.
2.2.3. Software Downloader
Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet. Tampilannya seperti gambar bawah ini:
(29)
Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroller.
(30)
BAB 3
PERANCANGAN ALAT DAN BAHAN
3.1 Perancangan alat
3.1.1 Diagram blok
Secara garis besar rangkaian pendeteksi gempa dengan menggunakan mikrokontroler AT89S51 memiliki 7 blok utama. Yaitu Mikrokontroler AT89S51, sensor getaran, penguat sensor, display, alarm, dan rangkaian relay. Diagram blok rangkaian tampak seperti gambar berikut :
Gambar 3.1. Diagram Blok dari Rangkaian Pemutus Aliran Listrik Saat Terjadi Gempa dengan Menggunakan Mikrokontroller AT89S51.
(31)
Sensor dihubungkan ke ADC untuk diubah data analognya menjadi data digital dan ADC dihubungkan dengan port 0 pada microkontroller, sehingga apabila sensor mendapat input getaran maka, ADC akan mengolah data yang dihasilkan oleh sensor. Relay berfungsi sebagai saklar elektronik yang akan menghidupkan lampu dan alarm jika diberi nilai high pada inputnya. Sedangkan display dikendalikan oleh P3.0 dan P3.1. display berfungsi untuk menampilkan keadaan gempa dalam angka, apakah gempa tersebut termasuk gempa berskala rendah ( angka 1 ), atau gempa berskala sedang ( angka 2 ).
3.1.2Sistem kerja rangkaian
Jika sensor menerima sinyal berupa getaran maka sensor akan mengirimkan sinyal tersebut ke ADC kemudian data yang masuk ke ADC akan diubah menjadi data digital dan dikirimkan dikirimkan ke mikrokontroller dengan dikirimkannya data ke mikrokontroller maka akan terjadi komunikasi antara sensor dengan mikrokontroller. Selanjutnya mikrokontroler akan mengambil data dari output sensor, sehingga mikrokontroler AT89S51 mengetahui data yang dikirimkan oleh sensor tersebut dan data ini akan dianggap oleh mikrokontroler sebagai perintah untuk mengerjakan sesuatu ( menampilkan skala pada display dan menghidupkan alarm dan memutuskan aliran listrik)
(32)
3.2. Diagram alir
Gambar 3.2. Diagram Alir Pemrograman
Program diawali dengan mulai yang berarti rangkaian diaktifkan, kemudian mikrokontroller akan mendeteksi nilai- nilai yang dikirimkan oleh sensor. Jika nilai yang diinputkan sensor ke mikrokontroller adalah 1, maka mikrokontroller akan menyalakan alarm, kemudian mikrokontroller akan menampilkan status pada display, Dan jika nilai yang diinputkan sensor adalah 2, maka mikrokontroller akan memutuskan aliran listrik. Selanjutnya mikrokontroller akan kembali mendeteksi nilai- nilai yang diinputkan sensor selanjutnya.
3.3 Perancangan Sumber Tegangan (PSA)
Rangkaian ini berfungsi untuk menyalurkan tegangan ke seluruh rangkaian yang ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt, keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian. Dan
(33)
keluaran 12 volt digunakan untuk menghidupkan relay. Rangkaian power supplay ditunjukkan pada gambar 3.2 berikut ini :
Vreg
LM7805CT
IN OUT
TIP32C
100ohm
100uF
330ohm 220V 50Hz 0Deg
TS_PQ4_12
2200uF 1uF
1N5392GP 1N5392GP
12 Volt
5 Vol
Gambar 3.3. Rangkaian Power Supplay (PSA)
Trafo CT merupakan trafo naik turun tegangan (stepdown) yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan disearahkan dengan menggunakan dua buah dioda, selanjutnya 12 volt DC akan diratakan oleh kapasitor 2200 µF. Regulator tegangan 5 volt (LM7805CT) digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 32 disini berfungsi untuk mensupplay arus apabila terjadi kekurangan arus pada rangkaian, sehingga regulator tegangan (LM7805CT) tidak akan panas ketika rangkaian butuh arus yang cukup besar. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda penyearah.
3.4. Rangkaian Mikrokontroler AT89S51
Rangkaian ini berfungsi sebagai pusat kendali dari seluruh system yang ada. Kompoen utama dari rangkaian ini adalah IC mikrokontroler AT89S51. Pada IC inilah semua
(34)
program diisikan, sehingga rangkaian dapat berjalan sesuai dengan yang dikehendaki. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini:
5V VCC 5V VCC 10uF 2 1 30pF 30pF
XTAL 12 MHz
AT89S51 P0. ) P1 P0. 3 (AD3 P0.0 (AD0) P0.1 (AD1) P0.2 (AD2) Vcc P1.0 P1.1 P1.2 P1.3 P1.4 .5 P1.6 P1.7 4 (AD4) P0.5 (AD5) P0.6 (AD6) P0.7 (AD7) RST EA/VPP P3.0 (RXD) P3.1 (TXD) P3.2 (INT0) P3.3 (INT1) P3.4 (T0) ALE/PROG PSEN P2.7 (A15) P2.6 (A14) P2.5 (A13) P2.4 (A12) P2.3 (A11) P2.2 (A10) P2.1 (A9) P3.6 (WR) P3.5 (T1) P3.7 (RD) XTAL2 XTAL1
GND P2.0 (A8)
1 2 3 4 5 8 40 39 38 37 36 35 34 33 9 10 11 12 13 14 15 32 31 30 29 28 27 26 16 17 18 19 20 25 24 23 22 21 6 7
Gambar 3.4 Rangkaian mikrokontroller AT89S51
Mikrokontroler ini memiliki 32 port I/O, yaitu port 0, port 1, port 2 dan port 3. Pin 32 sampai 39 adalah Port 0 yang merupakan saluran/bus I/O 8 bit. Pin 1 sampai 8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3 Pin
40 dihubungkan ke sumber tegangan 5 volt. Dan pin 20 dihubungkan ke ground.
Rangkaian mikrokontroler ini menggunakan komponen kristal 12 MHz sebagai sumber clocknya. Nilai kristal ini akan mempengaruhi kecepatan mikrokontroler dalam mengeksekusi suatu perintah tertentu.
Pada pin 9 dihubungkan dengan sebuah kapasitor 10 uF yang dihubungkan ke
positif dan sebuah resistor 10 Kohm yang dihubungkan ke ground. Kedua komponen
ini berfungsi agar program pada mikrokontroler dijalankan beberapa saat setelah power aktif. Lamanya waktu antara aktipnya power pada IC mikrokontroler dan
(35)
aktipnya program adalah sebesar perkalian antara kapasitor dan resistor tersebut. Jika dihitung maka lama waktunya adalah :
t = R x C = 10 KΩx 10 µF = 0.01 detik
Jadi 0.01 detik setelah power aktif pada IC kemudian program aktif.
Pin 17 yang merupakan P3.7 dihubungkan dengan transistor dan sebuah LED. Ini dilakukan hanya untuk menguji apakan rangkaian minimum mikrokontroller AT89S51 sudah bekerja atau belum. Dengan memberikan program sederhana pada mikrokontroller tersebut, dapat diketahui apakah rangkaian minimum tersebut sudah bekerja dengan baik atau tidak. Jika LED yang terhubug ke Pin 17 sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum tersebut telah siap digunakan. Namun setelah seluruh rangkaian disatukan, LED yang terhubung ke in 17 ini tidak digunakan lagi.
3.5 Rangkaian Display Seven segmen
Untuk menampilkan angka dari setiap penekanan tombol, maka dibutuhkan sebuah display untuk menampilkannya. Pada alat ini, display yang digunakan adalah display seven segmen, yang terdiri dari 1 buah seven segmen.
Display seven segmen ini akan diaktifkan oleh IC 4094 yang merupakan IC serial to paralel(serial in paralel out). Jadi data dimasukkan ke dalam IC ini dengan mengirimkan data serial yang akan diubah menjadi keluaran data paralel. Keluaran dari IC 4094 ini langsung dihubungkan ke seven segmen, sehingga data serial yang diterima oleh input IC ini akan ditampilkan nilainya pada seven segmen. Seven segmen yang digunakan adalah tipe common katoda (aktif high), ini
(36)
berarti segmen akan menyala jika diberi data high (1) dan segmen akan mati jika diberi data low (0).
Rangkaian ini terhubung ke P3.0 dan P3.1, yang mempunyai fungsi khusus sebagai pengiriman data secara serial. Sehingga nilai yang akan tampil pada display seven segmen akan dapat dikendalikan oleh mikrokontroler AT89S51. Rangkaian display seven segmen ditunjukkan pada gambar berikut ini:
5V VCC
SEVEN_SEG_DISPLAY
A B C DE F G
In Cl o c k Ou t
D6 D5 D4 D3 D2 D1 D0
4094 D7 2 3 10 14 13 12 11 7 6 5 4
P3.0 AT89S51
P3.1 AT89S51
Gambar 3.5. Rangkaian Display Seven Segmen
3.6Rangkaian Pengendali Alarm
Apabila ada orang yang masuk tanpa izin, maka alarm akan bunyi. Rangkaian alarm tampak seperti gambar dibawah ini:
(37)
Pada alat ini, alarm yang digunakan adalah buzzer 5 volt. Buzzer ini akan berbunyi jika positifnya dihubungkan ke sumber tegangan positif dan negatifnya negatipnya dihubungkan ke ground.
Pada rangkaian di atas transistor berfungsi sebagai saklar elektronik yang dapat menghidupkan dan mematikan buzzer. Dari gambar dapat dilihat bahwa negatif buzzer dihubungkan ke kolektor dari transistor NPN (2SC945), ini berarti jika transistor dalam keadaan aktif maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0 volt, keadaan ini akan mengakibatkan buzzer berbunyi. Sebaliknya jika transistor tidak aktif, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 5 volt, keadaan ini menyebabkan buzzer mati.
Transistor yang digunakan dalam rangkaian di atas adalah transistor jenis NPN, transistor jenis ini akan aktif apabila tegangan pada basis lebih besar dari 0,7 volt. Resistor 10 Kohm pada basis berguna untuk membatasi arus yang masuk pada basis agar transistor tidak rusak. Dengan memberikan tahanan sebesar 4,7 Kohm
berarti arus yang masuk ke basis sebesar 5 0, 001 1 4.700
V volt
A m
R = ohm = = A.
Seperti telah dijelaskan di atas bahwa transistor jenis NPN akan aktif apabila tegangan pada basis lebih besar dari 0,7 volt, dimana basis dihubungkan dengan P0.4 AT89S51. P0.4 akan memiliki tegangan sebesar 5 volt jika diset high (1) dan memiliki tegangan 0 volt jika diset low (0). Dengan demikian kita sudah dapat mengendalikan (menghidupkan/ mematikan) transistor melalui program.
Program yang harus diisikan untuk mengaktifkan transistor yang akan menyebabkan buzzer berbunyi adalah sebagai berikut,
(38)
Dan untuk mematikan buzzer maka program yang harus diisikan adalah,
Clr P0.4
Dengan demikian kita sudah dapat menghidupkan dan mematikan alarm melalui program.
3.7Rangkaian Pengendali Lampu 220 V AC
Apabila tidak ada gempa yang terdeteksi, maka lampu akan hidup. Rangkaian pengendali lampu tampak seperti gambar dibawah ini:
2SC945
4.7kΩ
P0.2 AT89S51
Dioda K
Relay
12V Lam pu 1
220 V (PLN) 1
2 3
4
Gambar 3.7.Rangkaian Pengendali Lampu 220 volt AC
Pada rangkaian di atas, untuk menghubungkan rangkaian dengan 220 V AC digunakan relay. Relay merupakan salah satu komponen elektronik yang terdiri dari lempengan logam sebagai saklar dan kumparan yang berfungsi untuk menghasilkan medan magnet. Pada rangkaian ini digunakan relay 12 volt, ini berarti jika positif relay (kaki 1) dihubungkan ke sumber tegangan 12 volt dan negatip relay (kaki 2) dihubungkan ke ground, maka kumparan akan menghasilkan medan magnet, dimana medan magnet ini akan menarik logam yang mengakibatkan saklar (kaki 3) terhubung ke kaki 4. Dengan demikian, jika kita gunakan kaki 3 dan kaki 4 pada relay sebagai
(39)
saklar untuk menghidupkan/mematikan lampu maka kita dapat menghidupkan/ mematikan lampu dengan cara mengaktifkan atau menon-aktifkan relay.
Pada rangkaian ini untuk mengaktifkan atau menon-aktifkan relay digunakan transistor tipe NPN. Cara kerjanya sama dengan proses menghidupkan alarm yang telah dijelaskan sebelumnya. Dari gambar dapat dilihat bahwa negatif relay dihubungkan ke kolektor dari transistor NPN (2SC945), ini berarti jika transistor dalam keadaan aktif maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0 volt, keadaan ini akan mengakibatkan relay aktif. Sebaliknya jika transistor tidak aktif, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 12 volt, keadaan ini menyebabkan tidak aktif.
Kumparan pada relay akan menghasilkan tegangan singkat yang besar ketika relay dinon-aktifkan dan ini dapat merusak transistor yang ada pada rangkaian ini. Untuk mencegah kerusakan pada transistor tersebut sebuah dioda harus dihubungkan ke relay tersebut. Dioda dihubungkan secara terbalik sehingga secara normal dioda ini tidak menghantarkan. Penghantaran hanya terjadi ketika relay dinonaktifkan, pada saat ini arus akan terus mengalir melalui kumparan dan arus ini akan dialirkan ke dioda. Tanpa adanya dioda arus sesaat yang besar itu akan mengalir ke transistor, yang mengakibatkan kerusakan pada transistor.
Program yang harus diisikan untuk mengaktifkan transistor yang akan mengaktipkan relay, sehingga lampu hidup adalah sebagai berikut,
Setb P0.2
Dan untuk mematikan lampu maka program yang harus diisikan adalah,
Clr P0.2
Dengan demikian kita sudah dapat menghidupkan dan mematikan lampu melalui program.
(40)
3.8 Penguat Sinyal
Rangkaian ini berfungsi untuk memperkuat sinyal yang dihasilkan oleh sensor getaran sehingga cukup kuat untuk memberikan logika high atau logika low kepada µC AT89S51. Rangkaian penguat sinyal ditunjukkan pada gambar 3.2 berikut :
Gambar 3.8 Rangkaian Penguat Sinyal
Sinyal dari sensor akan diperkuat oleh transistor A733 sebagai penguat depan sekaligus menyesuaikan impedansi input terhadap Op-Amp 358. Op-Amp LM 358 sebagai penguat ganda non inverting memperkuat sinyal yang dihasilkan oleh penguat depan yaitu transistor A733. Pada Op-Amp pertama sinyal akan dikuatkan sampai maksimal 100 kali penguatan. Kemudian output dari Op-Amp pertama ini akan diinputkan ke Op-Amp kedua untuk dikuatkan lagi sampai maksimal 100 kali penguatan. Dengan demikian output dari Op-Amp kedua mampu mendrive transistor C945 untuk menekan logika high atau logika low pada pin input µC AT89S51.
Transistor C945 ini merupakan transistor jenis NPN. Transistor ini akan aktif (saturasi) jika pada basis diberikan tegangan lebih besar dari 0,7 volt. Jika transistor ini aktip, maka kolektor akan terhubung ke emitor sehingga tegangan pada kolektor
(41)
akan jatuh menjadi 0 volt. Jatuhnya tegangan pada kolektor dari 5 volt ke 0 volt inilah yang merupakan indikasi adanya rembesan air yang diterima oleh sensor air. Jatuhnya tegangan pada kolektor dari 5 volt ke 0 volt ini juga akan menyebabkan LED indikator menyala.
Kolektor dari transistor ini akan dihubungkan ke µC AT89S51, sehingga perubahan tegangan yang terjadi pada kolektor akan dapat diketahui oleh µC AT89S51.
(42)
BAB 4
PENGUJIAN DAN ANALISA SISTEM
4.1Rangkaian Sumber Tegangan(PSA)
Vreg
LM7805CT
IN OUT
TIP32C
100ohm
100uF
330ohm 220V 50Hz 0Deg
TS_PQ4_12
2200uF 1uF 1N5392GP
1N5392GP
12 Volt
5 Volt
Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt, keluaran 5 volt digunakan untuk menghidupkan seluruh rangkaian, sedangkan keluaran 12 volt digunakan untuk menghidupkan relay. Rangkaian tampak seperti gambar di bawah ini,
Gambar 4.1 Rangkaian Power Supplay (PSA)
Trafo CT merupakan trafo naik turun tegangan (stepdown) yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan disearahkan dengan menggunakan dua buah dioda, selanjutnya 12 volt DC akan diratakan oleh kapasitor 2200 µF. Regulator tegangan 5 volt (LM7805CT) digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 32 disini berfungsi untuk mensupplay arus apabila terjadi
(43)
kekurangan arus pada rangkaian, sehingga regulator tegangan (LM7805CT) tidak akan panas ketika rangkaian butuh arus yang cukup besar. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda. Sebenarnya tegangan 12 volt ini tidak stabil, namun karena tegangan 12 volt ini hanya digunakan untuk menghidupkan relay, jadi tidak dipermasalahkan, karena relay dapat hidup dengan tegangan 8 – 15 volt.
4.2 Pengujian Rangkaian minimum mikrokontroller AT89S51
Rangkaian minimum mikrokontroller AT89S51 ditunjukkan pada gambar 4.2 berikut ini : P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST P3.0/RX0 P3.1/TX0 P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD XTAL2 XTAL1 GND P2.7/A16 P2.6/A14 P2.5/A13 P2.4/A12 P2.3/A11 P2.2/A10 P2.1/A9 P2.0/A8 PSEN ALE/PROG EA/VPP P0.7/AD7 P0.6/AD6 P0.5/AD5 P0.4/AD4 P0.3/AD3 P0.2/AD2 P0.1/AD1 P0.0/AD0 VCC AT89S51 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 2 1
Xtal 12 MHz
10kohm 10uF 4.7kohm 5V VCC 33pF 33pF
(44)
Pengujian rangkaian mikrokontroler dilakukan dengan menghubungkan rangkaian ini dengan sebuah transistor A733 yang dihubungkan dengan sebuah LED indikator, dimana transistor disini berfungsi sebagai saklar untuk mengendalikan hidup/mati LED. Dengan demikian LED akan menyala jika transistor aktif dan sebaliknya LED akan mati jika transistor tidak aktif. Tipe transistor yang digunakan adalah PNP A733, dimana transistor ini akan aktif (saturasi) jika pada basis diberi tegangan 0 volt (logika low) dan transistor ini akan tidak aktif jika pada basis diberi tegangan 5 volt (logika high). Basis transistor ini dihubungkan ke pin I/O mikrokontroler yaitu pada kaki 8 (P3.7).
Langkah selanjutnya adalah mengisikan program sederhana ke mikrokontroler AT89S51. Programnya adalah sebagai berikut :
Loop:
Cpl P3.7
Acall tunda
sjmp loop
tunda:
mov r7,#255
tnd:
mov r6,#255
djnz r6,$
djnz r7,tnd
ret
Program di atas akan mengubah logika yang ada pada P3.7 selama selang waktu tunda. Jika logika pada P3.7 high maka akan diubah menjadi low, demikian jiga sebaliknya jika logika pada P3.7 low maka akan diubah ke high, demikian seterusnya. Logika low akan mengaktipkan transistor sehingga LED akan menyala dan logika high akan menonaktipkan transistor, sehingga LED padam. Dengan demikian
(45)
program ini akan membuat LED berkedip terus-menerus. Jika LED telah berkedip terus menerus sesuai dengan program yang diinginkan, maka rangkaian mikrokontroler telah berfungsi dengan baik.
4.3 Pengujian Rangkaian Relay
Apabila ada gempa yang terdeteksi, maka lampu akan mati. Rangkaian pengendali lampu tampak seperti gambar di bawah ini ,
2SC945
4.7kΩ
P0.2 AT89S51
Dioda K
Relay
12V Lam pu 1
220 V (PLN) 1
2 3
4
Gambar 4.3 Rangkaian Pengendali Lampu 220 volt AC
Pada rangkaian di atas, untuk menghubungkan rangkaian dengan 220 V AC digunakan relay. Relay merupakan salah satu komponen elektronik yang terdiri dari lempengan logam sebagai saklar dan kumparan yang berfungsi untuk menghasilkan medan magnet. Pada rangkaian ini digunakan relay 12 volt, ini berarti jika positif relay (kaki 1) dihubungkan ke sumber tegangan 12 volt dan negatif relay (kaki 2) dihubungkan ke ground, maka kumparan akan menghasilkan medan magnet, dimana medan magnet ini akan menarik logam yang mengakibatkan saklar (kaki 3) terhubung
(46)
ke kaki 4. Dengan demikian, jika kita gunakan kaki 3 dan kaki 4 pada relay sebagai saklar untuk menghidupkan/mematikan lampu maka kita dapat menghidupkan/ mematikan lampu dengan cara mengaktifkan atau menaon-aktifkan relay.
Pada rangkaian ini untuk mengaktipkan atau menon-aktifkan relay digunakan transistor tipe NPN. Cara kerjanya sama dengan proses menghidupkan alarm yang telah dijelaskan sebelumnya. Dari gambar dapat dilihat bahwa negatif relay dihubungkan ke kolektor dari transistor NPN (2SC945), ini berarti jika transistor dalam keadaan aktif maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0 volt, keadaan ini akan mengakibatkan relay aktif. Sebaliknya jika transistor tidak aktif, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 12 volt, keadaan ini menyebabkan tidak aktif.
Kumparan pada relay akan menghasilkan tegangan singkat yang besar ketika relay dinon-aktifkan dan ini dapat merusak transistor yang ada pada rangkaian ini. Untuk mencegah kerusakan pada transistor tersebut sebuah dioda harus dihubungkan ke relay tersebut. Dioda dihubungkan secara terbalik sehingga secara normal dioda ini tidak menghantarkan. Penghantaran hanya terjadi ketika relay dinonaktifkan, pada saat ini arus akan terus mengalir melalui kumparan dan arus ini akan dialirkan ke dioda. Tanpa adanya dioda arus sesaat yang besar itu akan mengalir ke transistor, yang mengakibatkan kerusakan pada transistor.
Program yang harus diisikan untuk mengaktipkan transistor yang akan mengaktifkan relay, sehingga lampu hidup adalah sebagai berikut,
Setb P0.2
Dan untuk mematikan lampu maka program yang harus diisikan adalah,
(47)
Dengan demikian kita sudah dapat menghidupkan dan mematikan lampu melalui program.
4.4. Pengujian Rangkaian Display Seven Segmen
Pengujian pada rangkaian ini dapat dilakukan dengan menghubungkan rangkaian ini dengan rangkaian mikrokontroler, kemudian memberikan data tertentu pada port serial dari mikrokontroler. Seven segmen yang digunakan adalah common anoda, dimana segmen akan menyala jika diberi logika 0 dan sebaliknya segmen akan mati jika diberi logika 1.
5V VCC
SEVEN_SEG_DISPLAY
A B C DE F G
In Cl o c k Ou t
D6 D5 D4 D3 D2 D1 D0 4094 D7 2 3 10 14 13 12 11 7 6 5 4
P3.0 AT89S51
P3.1 AT89S51
Gambar 4.4. Rangkaian Display Seven Segment
Dari hasil pengujian diperoleh data yang harus dikirimkan ke port serial untuk menampilkan angka desimal adalah sesuai dengan tabel 4.4 sebagai berikut:
(48)
Tabel 4.4 Tabel Pengiriman Data Angka Data yang dikirim
1 0ECH 2 18H 3 88H 4 0C4H 5 82H 6 02H 7 0E8H 8 0h 9 80H 0 20H
Program yang diisikan pada mikrokontroler untuk menampilkan nilai-nilai tersebut adalah sebagai berikut:
bil0 equ 20h bil1 equ 0ech bil2 equ 18h bil3 equ 88h bil4 equ 0c4h bil5 equ 82h bil6 equ 02h bil7 equ 0e8h bil8 equ 0h bil9 equ 80h Loop:
mov sbuf,#bil0
(49)
Clr ti
sjmp loop
Program di atas akan menampilkan angka 0 pada semua seven segmen. Sedangkan untuk menampilkan 3 digit angka yang berbeda pada seven segmen adalah dengan mengirimkan ke 3 data angka yang akan ditampilkan pada seven segmen. Programnya adalah sebagai berikut :
Loop:
mov sbuf,#bil1
Jnb ti,$
Clr ti
mov sbuf,#bil2
Jnb ti,$
Clr ti
mov sbuf,#bil3
Jnb ti,$
Clr ti
sjmp loop
Program di atas akan menampilkan angka 1 pada seven segmen, angka 2 dan dan kemudian angka angka 3
4.5. Rangkaian Pengendali Alarm
Apabila ada gempa yang terdeteksi, maka alarm akan bunyi. Rangkaian alarm tampak seperti gambar di bawah ini ,
(50)
Pada alat ini, alarm yang digunakan adalah buzzer 5 volt. Buzzer ini akan berbunyi jika positifnya dihubungkan ke sumber tegangan positif dan negatifnya dihubungkan ke ground.
Pada rangkaian di atas transistor berfungsi sebagai saklar elektronik yang dapat menghidupkan dan mematikan buzzer. Dari gambar dapat dilihat bahwa negatif buzzer dihubungkan ke kolektor dari transistor NPN (2SC945), ini berarti jika transistor dalam keadaan aktif maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0 volt, keadaan ini akan mengakibatkan buzzer berbunyi. Sebaliknya jika transistor tidak aktif, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 5 volt, keadaan ini menyebabkan buzzer mati.
Transistor yang digunakan dalam rangkaian di atas adalah transistor jenis NPN, transistor jenis ini akan aktif apabila tegangan pada basis lebih besar dari 0,7 volt. Resistor 10 Kohm pada basis berguna untuk membatasi arus yang masuk pada basis agar transistor tidak rusak. Dengan memberikan tahanan sebesar 4,7 Kohm
berarti arus yang masuk ke basis sebesar 5 0, 001 1 4.700
V volt
A m
R = ohm = = A.
Seperti telah dijelaskan di atas bahwa transistor jenis NPN akan aktif apabila tegangan pada basis lebih besar dari 0,7 volt, dimana basis dihubungkan dengan P0.4 AT89S51. P0.4 akan memiliki tegangan sebesar 5 volt jika diset high (1) dan memiliki tegangan 0 volt jika diset low (0). Dengan demikian kita sudah dapat mengendalikan (menghidupkan/ mematikan) transistor melalui program.
Program yang harus diisikan untuk mengaktifkan transistor yang akan menyebabkan buzzer berbunyi adalah sebagai berikut,
Setb P0.4
(51)
Clr P0.4
Dengan demikian kita sudah dapat menghidupkan dan mematikan alarm melalui program.
(52)
BAB 5 PENUTUP
5.1 Kesimpulan
1. sensor getaran yang dipakai ternyata memiliki sensitivitas yang tinggi karena dapat mendeteksi getaran yang sangat kecil.oleh karena sensitivitas yang sangat tinggi ini maka diputuskan aar sensor tidak menggunakan sumber tegangan AC karena dapat menimbulkan noise (gangguan) berfrequensi 50 hertz .
2. Sensor Getaran yang dipakai dalam proyek ini tidak dapat memberikan secara spesifik skala dari kekuatan gempa tersebut tetapi hanya dapat menentukan level dari getaran yang dihasilkan oleh sensor.
3. pada alat ini menggunakan 2 jenis transistor yaitu transistor jenis NPN dan transistor jenis PNP dimana transistor jenis NPN digunakan sebagai saklar elektronik pada rangkaian sebagai penghubung dan pemutus arus pada rangkaian dan transistor jenis PNP dipakai sebagai pengirim (pensuplay) arus pada rangkaian PSA apabila terjadi kekurangan arus pada rangkaian. .
(53)
5.2. Saran
1. Sebaiknya letak sensor dipisahkan dari keseluruhan papan rangkaian, sehingga apabila terjadi getaran pada papan rangkaian maka sensor tidak akan terpengaruh oleh getaran tersebut, sehingga sensor hanya mendeteksi getaran di luar papan rangkaian.
2. Relay yang dipasang sebagai driver lampu, harus disuplay dengan trafo yang lebih besar apabila rangkaian pemutus aliran listrik ini dihubungkan langsung ke aliran listrik, karena biasanya ukuran aliran listrik rumah tangga adalah 450 s/d 950 volt. Maka diperlukan paling tidak trafo sebesar 4 atau 5 Ampere.
(54)
DAFTAR PUSTAKA
Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Pertama Penerbit: Gava Media, Yogyakarta, 2002
Agfianto, Teknik Antarmuka Komputer: Konsep dan Aplikasi, Edisi Pertama, Penerbit: Graha Ilmu, Yogyakarta, 2002
Andi, Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89C51, Penerbit PT Elex Media Komputindo, Jakarta 2003
Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 & 2, Edisi Pertama, Penerbit: Salemba Teknika, Jakarta, 2003.
Suhata, Aplikasi Mikrokontroler Sebagai Pengendali Peralatan Elektronik via Line Telepon, Penerbit PT Elex Media Komputindo, Jakarta 2004.
(1)
Clr ti
sjmp loop
Program di atas akan menampilkan angka 0 pada semua seven segmen.
Sedangkan untuk menampilkan 3 digit angka yang berbeda pada seven segmen adalah
dengan mengirimkan ke 3 data angka yang akan ditampilkan pada seven segmen.
Programnya adalah sebagai berikut :
Loop:
mov sbuf,#bil1
Jnb ti,$
Clr ti
mov sbuf,#bil2
Jnb ti,$
Clr ti
mov sbuf,#bil3
Jnb ti,$
Clr ti
sjmp loop
Program di atas akan menampilkan angka 1 pada seven segmen, angka 2 dan dan
kemudian angka angka 3
4.5. Rangkaian Pengendali Alarm
Apabila ada gempa yang terdeteksi, maka alarm akan bunyi. Rangkaian alarm tampak
seperti gambar di bawah ini ,
(2)
berbunyi jika positifnya dihubungkan ke sumber tegangan positif dan negatifnya
dihubungkan ke ground.
Pada rangkaian di atas transistor berfungsi sebagai saklar elektronik yang
dapat menghidupkan dan mematikan buzzer. Dari gambar dapat dilihat bahwa negatif
buzzer dihubungkan ke kolektor dari transistor NPN (2SC945), ini berarti jika
transistor dalam keadaan aktif maka kolektor akan terhubung ke emitor dimana emitor
langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0
volt, keadaan ini akan mengakibatkan buzzer berbunyi. Sebaliknya jika transistor tidak
aktif, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor
menjadi 5 volt, keadaan ini menyebabkan buzzer mati.
Transistor yang digunakan dalam rangkaian di atas adalah transistor jenis
NPN, transistor jenis ini akan aktif apabila tegangan pada basis lebih besar dari 0,7
volt. Resistor 10 Kohm pada basis berguna untuk membatasi arus yang masuk pada
basis agar transistor tidak rusak. Dengan memberikan tahanan sebesar 4,7 Kohm
berarti arus yang masuk ke basis sebesar 5 0, 001 1 4.700
V volt
A m
R = ohm = = A.
Seperti telah dijelaskan di atas bahwa transistor jenis NPN akan aktif apabila
tegangan pada basis lebih besar dari 0,7 volt, dimana basis dihubungkan dengan P0.4
AT89S51. P0.4 akan memiliki tegangan sebesar 5 volt jika diset high (1) dan memiliki
tegangan 0 volt jika diset low (0). Dengan demikian kita sudah dapat mengendalikan
(menghidupkan/ mematikan) transistor melalui program.
Program yang harus diisikan untuk mengaktifkan transistor yang akan
menyebabkan buzzer berbunyi adalah sebagai berikut,
Setb P0.4
Dan untuk mematikan buzzer maka program yang harus diisikan adalah,
(3)
Clr P0.4
Dengan demikian kita sudah dapat menghidupkan dan mematikan alarm melalui
program.
(4)
PENUTUP
5.1 Kesimpulan
1. sensor getaran yang dipakai ternyata memiliki sensitivitas yang tinggi karena
dapat mendeteksi getaran yang sangat kecil.oleh karena sensitivitas yang sangat
tinggi ini maka diputuskan aar sensor tidak menggunakan sumber tegangan AC
karena dapat menimbulkan noise (gangguan) berfrequensi 50 hertz .
2. Sensor Getaran yang dipakai dalam proyek ini tidak dapat memberikan secara
spesifik skala dari kekuatan gempa tersebut tetapi hanya dapat menentukan level
dari getaran yang dihasilkan oleh sensor.
3. pada alat ini menggunakan 2 jenis transistor yaitu transistor jenis NPN dan
transistor jenis PNP dimana transistor jenis NPN digunakan sebagai saklar
elektronik pada rangkaian sebagai penghubung dan pemutus arus pada rangkaian
dan transistor jenis PNP dipakai sebagai pengirim (pensuplay) arus pada rangkaian
PSA apabila terjadi kekurangan arus pada rangkaian. .
(5)
5.2. Saran
1. Sebaiknya letak sensor dipisahkan dari keseluruhan papan rangkaian, sehingga
apabila terjadi getaran pada papan rangkaian maka sensor tidak akan terpengaruh
oleh getaran tersebut, sehingga sensor hanya mendeteksi getaran di luar papan
rangkaian.
2. Relay yang dipasang sebagai driver lampu, harus disuplay dengan trafo yang lebih
besar apabila rangkaian pemutus aliran listrik ini dihubungkan langsung ke aliran
listrik, karena biasanya ukuran aliran listrik rumah tangga adalah 450 s/d 950 volt.
(6)
DAFTAR PUSTAKA
Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Pertama Penerbit: Gava Media, Yogyakarta, 2002
Agfianto, Teknik Antarmuka Komputer: Konsep dan Aplikasi, Edisi Pertama, Penerbit: Graha Ilmu, Yogyakarta, 2002
Andi, Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89C51, Penerbit PT Elex Media Komputindo, Jakarta 2003
Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 & 2, Edisi Pertama, Penerbit: Salemba Teknika, Jakarta, 2003.
Suhata, Aplikasi Mikrokontroler Sebagai Pengendali Peralatan Elektronik via Line Telepon, Penerbit PT Elex Media Komputindo, Jakarta 2004.