Perancangan Alat Pendeteksi Dan Pemadam Kebakaran Otomatis Dengan Menggunakan Sensor UV-Tron Berbasis Mikrokontroller AT89S51

(1)

TUGAS AKHIR

PERANCANGAN ALAT PENDETEKSI DAN PEMADAM KEBAKARAN OTOMATIS DENGAN MENGGUNAKAN SENSOR UV-TRON BERBASIS MIKROKONTROLLER AT89S51

O L E H

NAMA : TORANG M HUTAHAEAN NIM : 030801015

JURUSAN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA


(2)

KATA PENGANTAR

Puji syukur penulis panjatkan kepada Allah SWT atas rahmat dan karunia-Nya selama ini penulis dapat menyelesaikan skripsi ini. Adapun judul skripsi ini adalah “PERANCANGAN ALAT PENDETEKSI API DAN PEMADAM KEBAKARAN OTOMATIS DENGAN MENGGUNAKAN SENSOR UV-TRON BERBASIS MIKROKONTROLER AT89S51”.

Skripsi ini adalah untuk melengkapi salah satu syarat untuk memperoleh Ijazah Sarjana Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam (FMIPA) Universitas Sumatera Utara.

Selama dalam masa perkuliahan sampai akhirnya dapat menyelesaikan tugas akhir ini penulis sangat banyak memperoleh bimbingan dan bantuan dari berbagai pihak. Pada kesempatan ini, dengan kerendahan hati penulis mengaturkan terima kasih sebesar-besarnya kepada:

1. Bapak Dr. Marhaposan Situmorang, selaku Ketua Departemen Fisika USU sekaligus Bapak pembimbing saya.

2. Bapak Drs. Milangi Ginting Msi, selaku Dosen Wali saya, juga kepada Bapak dan Ibu staf pengajar jurusan Fisika FMIPA USU.

3. Bapak dan Ibunda tercinta yang selalu memberikan kasih saying

4. Teman – teman naposo Menteng, juga kepada Brian, Daniel, Viktor, Risma, Dan Maria yang saya sayangi yang selalu memberi dukungan dan motivasi.

Penulis menyadari dalam penyelesaian skripsi ini masih banyak kekurangan disana sini, untuk itu dengan kerendahan hati penulis mengharapkan kritik dan saran dari pembaca demi tercapainya kesempurnaan skripsi ini. Akhirnya penulis berharap semoga skripsi ini dapat bermanfaat bagi penulis dan pembacanya.

Medan, Mei 2009 Penulis


(3)

ABSTRAK

Alat pendeteksi api dan pemadam kebakaran secara otomatis ini dirancang agar dapat mengetahui ada tidaknya api didalam suatu ruangan, dan secara otomatis alat akan mendeteksi adanya api kemudian memadamkannya. Untuk dapat mengetahui keberadaan api digunakan sensor UV-Tron dan photodioda.

Mikrokontroler berfungsi untuk mengolah sinyal yang dikirimkan oleh sensor kemudian memberikan perintah untuk mendeteksi api, menyalakan alarm, menghidupkan display, mencari dan memadakan api.


(4)

DAFTAR ISI

Pengesahan ……….. i

Kata Pengantar ……… ii

Abstrak ………. iii

Daftar isi ……….. iv

Daftar Gambar ………... vi

Daftar Tabel ………. vii

BAB I PENDAHULUAN 1. Latar Belakang Masalah ……… 1

2. Rumusan Masalah ………. 3

3. Tujuan Penulisan ………... 3

4. Batasan Masalah ………... 3

5. Sistematika Penulisan ………... 4

BAB II DASAR TEORI 2.1 Hardware ... 5

2.1.1 Mikrokontroler AT89S51 ... 5

2.1.2 Kontruksi AT89S51 ... 6

2.1.3 Pin-Pin pada Microcontroller AT89S51 ... 8

2.1.4 Driver Jembatan H ... 10

2.1.5 Photo Dioda ... 12

2.1.6 Transistor Sebagai Saklar ... 15

2.1.7 Regulator Tegangan Tetap (78xx) ... 16

2.1.8 Kristal ... 17

2.1.9 Rangkaian UV-Tron dengan AVR ... 18

2.2Software ... 20

2.2.1 Bahasa Assembly MCS-51 ... 20

2.2.2 Software 8051 Editor, Assembler, Simulator (IDE) ... 23


(5)

BAB III PERANCANGAN ALAT

1. Diagram Blok ... 25

2. Perancangan Rangkaian Mikrokontroler AT89S51 ... 25

3. Perancangan Rangkaian Motor Stepper ... 26

4. Perancangan Rangkaian Power Supplay (PSA) ... 28

5. Perancangan Rangkaian Penguat Sinyal... ... 29

6. Perancangan Rangkaian Pengendali Pompa air ... 31

7. Rangkaian Alarm... 32

8. Rangkaian LED matriks display ... 33

9. Sensor Api ... 34

BAB IV PENGUJIAN ALAT 1. Flowcart ... 36

2. Pengujian Rangkaian Mikrokontroller AT89S51 ... 37

3. Pengujian Rangkaian Alarm ... 38

4. Pengujian Rangkaian Pengendali Pompa ... 39

5. Pengujian Rangkaian Driver Motor Stepper ... 41

6. Pengujian Rangkaian Sensor ... 44

7. Pengujian Rangkaian LED matriks display ... 46

8. Pengujian dan Analisa Sensor UVTron ... 52

BAB V KESIMPULAN DAN SARAN 1. Kesimpulan ………... 53


(6)

DAFTAR GAMBAR

1. Gambar 2.1 IC Mikrokontroler AT89S51 ... 8

2. Gambar 2.2 Rangkaian driver motor stepper ... 11

3. Gambar 2.3 Rangkaian photo detektor bias mundur ... 12

4. Gambar 2.4 Respon gelombang photo dioda MRD 500 ... 13

5. Gambar 2.5 Rangkaian photodioda bias mundur dengan beban resistor ... 14

6. Gambar 2.6 Transistor Sebagai Saklar ... 15

7. Gambar 2.7 Regulator 78XX dan 79XX ... 16

8. Gambar 2.8 (a) lambang Kristal, (b) Rangkaian ekivalen AC Kristal ... 18

9. Gambar 2.9 UV-Tron yang terpasang di C3704... 18

10.Gambar 2.10 Hubungan sumber tegangan C3704 ... 19

11.Gambar 2.11 Hubungan sumber tegangan C3704 ... 19

12.Gambar 2.12 8051 Editor, Assembler, Simulator (IDE) ………... 23

13.Gambar 2.13 ISP- Flash Programmer 3.a ... 24

14.Gambar.3.1 Rangkaian Mikrokontroller AT89S51 ... 25

15.Gambar 3.2 Rangkaian driver motor stepper ... 27

16.Gambar 3.3 Rangkaian Power Supplay (PSA) ... 28

17.Gambar 3.4 Rangkaian penguat sinyal ... 30

18.Gambar 3.5 Rangkaian Pompa Air ... 31

19.Gambar 3.6 Rangkaian alarm ... 32

20.Gambar 3.7 Rangkaian LED matriks display beserta rangkaian driver ... 33

21.Gambar 3.8a Fisik Flame Sensor Uv-Tron ... 35

22.Gambar 3.8b Dimensi Flame Sensor Uv-Tron ... 35

23.Gambar 4.1 Rangkaian Alarm ... 38

24.Gambar 4.2 Rangkaian pengendali pompa ... 40


(7)

26.Gambar 4.4 Rangkaian LED matriks display ... 46

27.Gambar 4.5a Karakter Display Mariks ... 47

28.Gambar 4.5b Karakter Display Mariks ... 48

29.Gambar 4.5c Karakter Diplay Matriks ... 49

30.Gambar 4.5d Karakter Diplay Matriks ... 50

DAFTAR TABEL 1. Tabel 1. 2.1.3 Fungsi Pin Mikrokontrler ... 9

2. Tabel 2.3. Karakteristik IC 78XX dan 79XX ... 17

3. Tabel 4.1a ... 43

4. Tabel 4.1b ... 43

5. Tabel 4.1c ... 43

6. Tabel 4.1d ... 44

7. Tabel 4.2 Data Biner ... 48

8. Tabel 4.2a Hasil Pengujian Rangkaian Sensor UvTron ... 52


(8)

ABSTRAK

Alat pendeteksi api dan pemadam kebakaran secara otomatis ini dirancang agar dapat mengetahui ada tidaknya api didalam suatu ruangan, dan secara otomatis alat akan mendeteksi adanya api kemudian memadamkannya. Untuk dapat mengetahui keberadaan api digunakan sensor UV-Tron dan photodioda.

Mikrokontroler berfungsi untuk mengolah sinyal yang dikirimkan oleh sensor kemudian memberikan perintah untuk mendeteksi api, menyalakan alarm, menghidupkan display, mencari dan memadakan api.


(9)

PENDAHULUAN

I. Latar belakang

Dalam kurun waktu singkat perkembangan teknologi melaju dengan sangat pesat. Perkembangan teknologi ini merupakan hasil kerja keras dari rasa ingin tahu manusia terhadap suatu hal yang pada akhirnya diharapkan akan mempermudah manusia. Dengan pesatnya laju perkembangan teknologi tersebut banyak bermunculan alat-alat yang canggih yang dapat bekerja secara otomatis.

Dalam bidang elektronika, perlahan-lahan peralatan-peralatan manual mulai digantikan dengan peralatan elektronik yang dapat bekerja secara otomatis, contohnya dalam bidang keamanan. Sistem keamanan merupakan hal yang sangat penting bagi kehidupan kita sehari- hari. Seiring dengan perkembangan teknologi, telah banyak kita lihat peralatan - perlatan elektronika yang berfungsi untuk menciptakan keamanan di lingkungan kita sehari - hari. Baik itu keamanan dari pencurian bahkan sampai hal-hal yang tidak diinginkan lainnya seperti kebakaran. Tingkat kerugian yang dihasilkan oleh kebakaran tentunya sangat besar. Kebakaran yang terjadi dapat di atasi apabila kita mengetahui kebakaran telah terjadi sejak dini. Untuk itu diperlukan suatu peralatan yang cerdas yang dapat memberitahukan kepada kita bahwa telah terjadi kebakaran di suatu ruangan atau di tempat umum secara dini sehingga dengan adanya alat ini kita dapat melakukan antisipasi yang lebih lanjut guna menghindari kerugian yang disebabkan oleh kebakaran.


(10)

Sekarang ini banyak kita temui alat yang dapat memadamkan kebakaran secara otomatis. Dan sebagian besar metode yang digunakan pada alat pemadam kebakaran otomatis yang banyak kita jumpai saat ini adalah alat akan bekerja apabila ada api yang mengenai sensor. Metode ini masih memiliki kekurangan karena alat akan bekerja apabila ada api yang mengenai badan sensor. Hal ini berarti kebakaran yang tejadi di dalam ruangan tersebut telah mencapai tingkat yang cukup besar.

Pada saat ini, banyak komponen atau sensor yang dapat dimanfaatkan sebagai alat pengaman terhadap kebakaran.

Untuk dapat mendeteksi ada tidaknya api pada ruangan merupakan masalah tersendiri dalam penyelesaiannya. Keakuratan diperlukan untuk hal tersebut. Salah satu pemecahan masalah tersebut adalah di pasangnya sensor yang dapat bekerja dengan mendeteksi adanya panas api. Sensor ini memberikan sinyal aktif apabila mendeteksi adanya api dalam ruangan. Tipe sensor yang dipilih adalah sensor UV-tron Hamamatsu R2868. Prinsip kerja sensor ini adalah mendeteksi adanya gelombang ultraviolet pada range 185 – 260 nm, dimana api berada pada range tersebut.

Berdasarkan sifat sensor diatas, maka penulis mencoba untuk merancang suatu alat yang dapat mendeteksi api dan memadamkan kebakaran secara otomatis dengan memanfaatkan sensor UV-tron hamamatsu R2868. Dengan demikian diharapkan hasil dari penelitian ini dapat dimanfaatkan untuk mengatasi kekurangan alat pemadam kebakaran otomatis selama ini menjadi lebih baik dan diharapkan dengan adanya alat pendeteksi kebakaran ini kerugian yang dihasilkan oleh kebakaran dapat dicegah dan diminimalkan.


(11)

II. Rumusan masalah:

Berdasarkan permasalahan diatas, penulis mencoba untuk membuat suatu alat yang dapat mendeteksi api dan memadamkan kebakaran secara otomatis dan dapat memberitahukan kepada khalayak ramai yang berada di tempat tersebut bahwa telah terjadi kebakaran. Untuk dapat mendeteksi kebakaran digunakan sensor UV-tron. Dan untuk memberitahukan bahwa telah terjadi kebakaran digunakan alarm dan display matriks.

III. Tujuan penulisan:

Adapun tujuan dari penulisan tugas akhir ini adalah:

1. Membuat suatu alat yang dapat mendeteksi dan memadamkan api secara otomatis apabila terjadi kebakaran di dalam suatu ruangan.

2. Memanfaatkan sensor UV-tron sebagai sensor pendeteksi kebakaran.

3. Sebagai informasi bagaimana dasar membangun sebuah instrumen yang mampu mendeteksi dan memadamkan api secara otomatis apabila terjadi kebakaran di dalam suatu ruangan.

IV. Batasan masalah:

Adapun batasan masalah yang akan dibahas dalam penelitian ini adalah:

1. Menjelaskan bagaimana prinsip kerja alat / instrument sehingga dapat mendeteksi dan memadamkan api secara otomatis apabila terjadi kebakaran di dalam suatu ruangan.

2. Display yang dipakai untuk menampilkan tulisan telah terjadi kebakaran adalah display matriks. 3. Sensor yang digunakan untuk mendeteksi telah terjadinya kebakaran adalah sensor UV-tron. 4. Pendeteksian kebakaran dilakukan dengan cara ada tidaknya keberadaan api di ruangan tersebut.


(12)

V. Sistematika Penulisan

Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip kerja dari alat pendeteksi dan pemadamkan kebakaran secara otomatis mikrokontroller AT89S51, maka penulis menulis laporan ini dengan sistematika penulisan 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

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 cara kerja ADC0804.

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. ANALISA RANGKAIAN DAN SISTEM KERJA ALAT

Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja alat, penjelasan mengenai program-program yang digunakan untuk mengaktifkan rangkaian, penjelasan mengenai program yang diisikan ke mikrokontroler AT89S51.

BAB V. KESIMPULAN DAN SARAN

Bab ini merupakan penutup yang meliputi tentang kesimpulan dari pembahasan yang dilakukan dari tugas akhir ini serta saran apakah rangkaian ini dapat dibuat lebih efisien dan dikembangkan perakitannya pada suatu metode lain yang mempunyai sistem kerja yang sama.


(13)

BAB II

TINJAUAN PUSTAKA

2.1.Hardware

2.1.1 Mikrokontroler AT89S51

Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomput er, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semi konduktor 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 microprocessor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat bantu dan mainan yang lebih canggi serta dalam bidang pendidikan.

Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka, dan lain sebagainya), Microcontroller hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antar muka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan Pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program control disimpan dalam ROM yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sederhana sementara, termasuk register-register yang digunakan pada Microcontroller yang bersangkutan. Microcontroller AT89S51 merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis Microcontroller ini pada prinsipnya dapat digunakan untuk mengolah data per bit ataupun data 8 bit secara bersamaan.

Pada prinsipnya program pada Microcontroller dijalankan bertahap, jadi pada program itu sendiri terdapat beberapa set instruksi dan tiap instruksi itu dijalankan secara bertahap atau berurutan.

Beberapa fasilitas yang dimiliki oleh microcontroller AT89S51 adalah sebagai berikut:

 Sebuah Central Processing Unit 8 bit


(14)

 RAM internal 128 byte

 Flash memori 4 Kbyte

 Lima buah jalur interupsi (dua buah interupsi eksternal dan tiga buah interupsi internal)

 Empat buah programable port I/O yang masing-masing terdiri dari delapan buah jalur I/o

 Sebuah port serial dengan kontrol serial full duplex UART

 Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika

 Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada frekuensi 12 MHz.

2.1.2 Kontruksi AT89S51

Microcontroller AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 kristal serta catu daya 5 volt. Kapasitor 10 micro-fard dan resistor 10 kilo Ohm dipakai untuk membentuk rangkaian riset. Dengan adanya rangkaian riset ini AT89S51 otomatis diriset begitu rangkaian menerima catu daya. Kristal dengan frekuensi maksimum 24MHz dan kapasitor 30 mikro-farad dipakai untuk melengkapi rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja Microcontroller.

Memori merupakan bagian yang sangat penting pada Microcontroller. Microkontroller memiliki dua macam memori yang sifatnya berbeda.

Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dengan keperluannya, dalam susunan MCS-51 memori penyimpanan program ini dinamakan sebagai memori program.

Random Access Memory (RAM) isinya akan sirna begitu IC kehilangan catu daya, dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data.

Ada berbagai jenis ROM. Untuk Microcontroller dengan program yang sudah baku dan diproduksi secara massal, program diisikan kedalam ROM pada saat IC Microcontroller dicetak dipabrik IC. Untuk keperluan tertentu Microcontroller menggunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang disingkat menjadi PROM (PEROM). Dulu banyak UV-EPROM (Ultra Violet Eraseable Programble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah ada flash PEROM yang harganya jauh lebih murah.


(15)

Jenis memori yang dipakai untuk memori program AT89S51 adalah flash PEROM, program untuk mengendalikan Microcontroller diisikan ke memori itu lewat bantuan alat yang dinamakan sebagai AT89C4051 flash PEROM Programmer. Memori data yang disediakan dalam chip AT*(S51 sebesar 128 kilo byte meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah cukup.

AT89S51 dilengkapi UART (Universal Asyncronous Receiver/Transmiter) yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data seri (RXD dan TXD) diletakkan berhimpitan dengan P1.0 dan P1.1. pada kaki nomor 2 dan 3, sehingga kalau sarana input/output bekerja menurut fungsi waktu. Clock penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang diumpan dari luar lewat T0 dan T1/T0 dan T1 berhimpitan dengan P3.4 dan P3.5, sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/output paralel kalau T0 dan T1 dipakai.

AT89S51 mempunyai enam sumber pembangkit interupsi, dua diantaranya adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini berhimpitan dangan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur input/output paralel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi. Port1 dan 2, UART, Timer 0, Timer 1 dan sarana lainnya merupakan yang secara fisik merupakan RAM khusus, yang ditempatkan di Special Function Register (SFR).

2.1.3. Pin-Pin pada Microcontroller AT89S51

Deskripsi pin-pin pada Microcontroller AT89S51 :

Gambar 2.1 IC Mikrokontroler AT89S51

VCC (Pin 40)


(16)

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.terutama pada saat verifikasi program.

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 tabel berikut :

Tabel 1. 2.1.3 Fungsi Pin Mikrokontrler

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)


(17)

RST (pin 9)

Reset akan aktif dengan memberikan input high selama 2 cycle.

ALE/PROG (pin 30)

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.4 Driver Jembatan H

Motor stepper yang digunakan adalah motor stepper bipolar. Untuk mengendalikan motor stepper bipolar ini dibutuhkan sebuah rangkaian driver motor stepper. Rangkaian driver motor stepper ini berfungsi untuk memutar motor stepper searah/berlawanan arah dengan arah jarum jam. Mikrokontroler tidak dapat langsung mengendalikan putaran dari motor stepper, karena itu dibutuhkan driver sebagai perantara antara mikrokontroler dan motor stepper, sehingga perputaran dari motor stepper dapat dikendalikan oleh mikrokontroler. Rangkaian driver motor stepper bipolar ditunjukkan pada gambar 2.2 berikut ini :


(18)

VCC 5V 183303302SC945 2SC945 1.0k1.0k18Tip 127 VCC 5V Tip 122 VCC 5V VCC 5V 183303302SC945 2SC945 1.0k1.0k18Tip 127 Tip 122 Kum paran2 Kum paran1 Tip 127 18Tip 122 1.0kVCC 5V VCC 5V 2SC945 1.0k182SC945 330330Tip 127 18Tip 122 1.0kVCC 5V VCC 5V 2SC945 1.0k182SC945 330330Kum paran3 Kum paran4 Motor AT89C4051 AT89C4051 AT89C4051 AT89C4051 I III

II IV

Gambar 2.2 Rangkaian driver motor stepper

Untuk mempermudah penjelasan, maka rangkaian di atas dikelompokkan menjadi 4 rangkaian. Pada rangkaian di atas, jika salah input rangkaian I yang dihubungkan ke mikrokontroler diberi logika high dan input pada rangkaian lainnya diberi logika low, maka kedua transistor tipe NPN C945 pada rangkaian I akan aktip. Hal ini akan membuat kolektor dari kedua transistor C945 pada rangkaian I akan mendapat tegangan 0 volt dari ground. Kolektor dari transistor C945 yang berada di sebelah kiri atas diumpankan ke basis dari transistor tipe PNP TIP 127 sehingga basis dari transistor TIP 127 mendapatkan tegangan 0 volt yang menyebabkan transistor ini aktip (transistor tipe PNP akan aktip jika tegangan pada basis lebih kecil dari 4,34 volt). Aktipnya transistor PNP TIP 127 ini akan mengakibatkan kolektornya terhubung ke emitor sehingga kolektor mendapatkan tegangan 12 volt dari Vcc.

Kolektor dari transistor TIP 127 dihubungkan ke kumparan, sehingga kumparan akan mendapatkan tegangan 12 volt. Hal ini akan mengakibatkan kumparan menimbulkan medan magnet. Medan magnet inilah yang akan mnarik motor untuk mengarah ke arah kumparan yang menimbulkan medan magnet tersebut.

Sedangkan rangkaian II, III dan IV karena pada inputnya diberi logika low, maka kumparannya tidak menimbulkan medan magnet, sehingga motor tidak tertarik oleh kumparan-kumparan tersebut.

Demikian seterusnya untuk menggerakkan motor agar berputar maka harus diberikan logika high secara bergantian ke masing-masing input dari masing-masing rangkaian.


(19)

0 10 20 30 40 50 60 70 80 90 100

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.8 0.9 1.0 1.1

E

R

I

L

I

L

2.1.5 Photo Dioda

Pada sebuah LED, cahaya yang tampak atau emiter infra red merubah listrik menjadi cahaya. Cahaya pada sebuah LED terjadi akibat adanya gerakan dari sifat pembawa muatan minoritas pada arus maju yang mengalir. Suatu dioda yang digunakan cahaya dibawah kondisi tertentu, dapat dibuat sensitif dan junction dapat beroperasi sebagai sebuah photo sensor yang dikenal sebagai photo dioda, jadi photo dioda adalah sebuah dioda PN junction yang merupakan jenis Silicon bias mundur yang arus mengalirnya tergantung dari cahaya yang teradiasi.

Cahaya radiasi pada persambungan pada panjang gelombang tertentu menyebabkan pasangan-pasangan lubang elektron terbentuk dan ini berasal dari penambahan aliran arus pada rangkaian luar. Gambar 2.3 menunjukkan rangkaian photo detektor bias mundur. Dioda memiliki respon panjang gelombang yang luas.

Gambar 2.3. Rangkaian Photo detektor bias mundur

Sungguh pun pengeluaran arus kecil. Panjang gelombang dan sensitifitas bahan yang digunakan dengan tipe pemberi dan penerima material semikonduktor yang digunakan pada kedalaman penerobosan dari cahaya radiasi gambar 2.4 menunjukkan gelombang photo dioda MRD 500.

In

te

n

si

ta

s

Arus


(20)

Intensitas H dari flux yang teradiasi (diukur dalam uW/cm2) menentukan besarnya arus IL jika tidak ada radiasi cahaya maka arus bocor yang disebut arus gelap (IL) akan tetap, selain itu arus IL juga tergantung pada tegangan dari arus bias mundur, resistansi beban, dan temperatur.

Photodioda PIN silicon dapat digunakan sebagai sumber tegangan photo. Cahaya yang bergeseran pada penipisan area akan menciptakan sebuah tegangan photo yang sebanding pada cahaya yang masuk, dalam hal ini tak ada bias dari luar yang dibutuhkan karena junction menggenerasikan kekuatan elektromotivnya sendiri. Photodioda digunakan dalam aplikasi – aplikasi yang meliputi kartu bacaan, kontrol cahaya ambient, layar proyektor. Photodioda yang dapat energi bias dari luar akan menyebabkan arus kontrol mengalir melalui rangkaian eksternal.

Pada photodioda kita mengenal istilah responsivitas yaitu kemampuan dari sebuah photodioda untuk menambah arus bias mundur sebagai hasil dari sebuah penambahan pada cahaya. Reposivitas dari photodioda merupakan perbandingan dalam mA/mW pada panjang gelombang tertentu photodioda honeywell SE3452 mempunyai perbandingan 0.5mA/mW. Jika cahaya yang teradiasi pada cell 2 mV, dioda akan menghasilkan arus yang mengalir sebesar 1 mA (0,5 mA/mW x 2 mV). Respon tertinggi dari SE3452 sekitar 820nm .gambar 2.5 menunjukkan bias mundur dari sebuah photo dioda yang dihubungkan pada beban resistor dimana tegangan dinaikkan.

IR

Gambar 2.5. Rangkaian photodioda bias mundur dengan beban resistor

Arus yang mengalir 0,1 mA melalui resistor 10kΩ akan menghasilkan tegangan 1 V, semakin tinggi harga resistor maka senakin besar pula tegangan yang dihasilkan tapi respon frekuensi akan semakin kecil, sungguhpun responsivitas photodioda berada dalam range 0,2 – 0,6. photo transistor mempunyai range 100, dan photo darlington mempunyai range dasar 400-600 disebabkan faktor


(21)

multiplikasi. Kapasitansi suatu dioda kecil dan karena waktu, responnya kecil sekitar -50ns atau kurang. Rise time (respon naik) suatu photo transistor berada pada range 1-20 us. Dalam menentukan emiter – emiter dan sensor-sensor cahaya, pertimbangan harus ditentukan dari sebuah perangkat. Karakteristik-karakteristik utama dari perangkat photo meliputi :

1. Spectral range 2. Besar output (emiter) 3. Sesinsitivitas (sensor) 4. Waktu respon

5. Pertimbangan – pertimbangan mekanik.

2.1.6 Transistor Sebagai Saklar.

Banyak kegunaan dari transistor, salah satunya adalah sebagai saklar. Jika transistor digunakan sebagai saklar maka dalam hal ini transistor tersebut dioperasikan dalam daerah jenuhnya (saturasi) dan daerah yang menyumbat (cut-off). Pada saat transistor dalam keadaan jenuh maka resistansi antara kolektor dan emitor akan sangat kecil, maka transistor ini akan berfungsi sebagai saklar yang tertutup (ON) sedangkan apabila transistor dalam keadaan cut-off, maka resistansi antara kolektor dan emiter akan sangat besar, maka transistor akan berfungsi sebagai saklar yang terbuka (OFF). Lebih lanjut dapat kita lihat seperti gambar 2.6

Vi

a b

Gambar 2.6. Transistor Sebagai Saklar a. Transistor sebagai saklar

b. Analogi transistor sebagai saklar Pada saat transistor ON:


(22)

- Arus IC = maximum - Tegangan VCE = 0 Paa saat OFF:

- Arus IC = 0 - VCE = VCC – VRC - VRC = Ic x Rc = VCC – 0V = 0 x Rc VCE = VCC

= 0

Pada saat basis transistor mengalir arus, transistor dalam keadaan on, maka: IB = Vi - VBE / RB……….(2.1)

IC = VCC / RC……….(2.2) 2.1.7 Regulator Tegangan Tetap (78xx)

Catu daya merupakan sesuatu yang sangat penting untuk semua rangkaian elektronika. Dewasa ini semua sistim elektronika sudah beroperasi dengan catu daya yang stabil. Untuk mendapatkan tegangan yang benar-benar stabil dari suatu penyearah yang telah di-filter dengan kapasitor dapat digunakan

rangkaian tegangan tetap. Regulator tegangan tetap ini terbagi atas 2 bagian rangkaian yaitu: * Regulator Positif (IC78XX)

* Regulator Negatif (IC79XX)

Regulator ini dimaksudkan untuk memberikan kemampuan catu yang mantap dengan komponen extern seminim mungkin. Ragulator ini bekerja berdasarkan asas-asas, seperti pembatasan arus lipat balik, penghambat panas, dan pembatas daerah aman yang mencegah tingkat keluaran bergerak keluar dari disipasi daya aman.

IC1

Trafo D1

D2 C1 C3 D3

D4 C2 C4 IC2


(23)

Tabel 2.3. Karakteristik IC 78XX dan 79XX

Type 78/79XX

V(out) Volt

I Out (amper) V in (volt)

Min Max Min Max

05 5 0.5 1 7.5 20

06 6 0.5 1 8.6 21

08 8 0.5 1 10.6 23

10 10 0.5 1 12.7 25

12 12 0.5 1 14.8 27

15 15 0.5 1 14.8 27

18 18 0.5 1 21 33

24 24 0.5 1 27.5 36

Bila menggunakan regulator tegangan IC 78XX ada beberapa hal tentang kontruksi yang perlu diperhatikan:

 Semua konduktor yang mengalirkan arus-arus besar harus diusahakan setebal dan sependek mungkin.

 Semua sambungan umum harus dihubungkan dengan kondensator.

 Kondensator-kondensator kopling masukan dan keluaran harus dipasang sedekat mungkin dengan masukan dan pena keluaran IC

 Harus diadakan pendinginan yang memadai.

2.1.8 Kristal

Kristal adalah komponen yang dibuat dari bahan alam yang menunjukan efek piezoelektrik, sehingga sering disebut Kristal Piezoelektrik. Bahan utama kristal yang dapat menimbulkan efek piezoelektrik adalah garam rachelle, tourmaline dan quarte.

Dalam sebuah kristal Piezoelektrik, biasanya quartz, yang mempunyai yang dilapiskan pada permukaan yang berhadapan, apabila diberikan suatu potensial pada elektroda-elektrodanya maka gaya akan bekerja pada muatan-muatan yang terikat dalam kistal. Apabila komponen ini dipasang dengan benar, maka dalam kristal akan terjadi deformasi - deformasi sehingga terbentuk suatu sistim elektromekanik yang akan bergetar bila dibandingkan dengan benar. Frekuensi, resonansi dan nilai Q – nya tergantung pada dimensi kristal, orienatasi permukaan pada sumbu-sumbu kristal dan bagaimana komponen tersebut dipasang ( Mounted ) jangkauan frekuensinya dari beberapa KHz sampai beberapa


(24)

MHz. jangkauan nilai Q-nya yang beberapa ribu sampai beberapa ratus ribu data diperoleh secara komersial.

Dengan nilai Q yang sangat tinggi dan dari kenyataan bahwa karakteristik Quartz sangat setabil terhadap waku dan temperatur, maka kristal akan menghasilkan stabilitas frekuensi pada osilator –osilator yang dibangun dengan menggunakan kristal.

Pada hakikatnya, frekuensi dari suatu osilator kristal hanya dittentukan oleh kristalnya dan tidak oleh komponen lainnya. Lambang kristal dan ekivalen AC (model listriknya) dapat dilihat pada gambar 2.8 berikut ini :

Gambar 2.8. (a) lambang Kristal, (b) Rangkaian ekivalen AC Kristal

2.1.9 Rangkaian UV-Tron dengan AVR

UV-Tron yang kita gunakan merupakan UV-Tron seperti bola lampu dengan board pengaturnya C3704. Anoda UV-Tron (kaki lebih panjang) dihubungkan dengan lubang di C3704 dengan tanda A dan Katoda (kaki lebih pendek) dengan lubang bertanda K.

Gambar 2.9 UV-Tron yang terpasang di C3704

Untuk input tegangan menurut spesifikasi, board C3704 membutuhkian input tegangan 10 – 30 V DC. Sebenarnya input tersebut tetap diregulasi ole C3704 menjadi 5V. Untuk melewati regulator pada C3704 dengan memberikan langsung tegangan 5V ke kaki output regulator 3704. Regulator pada 3704 merupakan regulator 7805 dengan tanda ICI. Ada 4 lubang ( 3 digunakan oleh regulator ) denagnn tanda


(25)

O (output), G (ground), I(input), dan 0 (output). Lubang ke-4 yang bertanda “0” tidak digunakan sebagai input tegangan 5V. Seperti gambar dibawah:

Figure 76: UV TRON Wiring

Gambar 2.10 Hubungan sumber tegangan C3704

Gambar 2.11 Hubungan sumber tegangan C3704

Jika kita menggunakan sumber tegangan 10-30V DC, bisa disambungkan dengan tanda “+” dan groundnya tetap kelubang betanda “-“. Hubungan ke AVR adalah melalui lubang Q (lubang denagn tanda 1)dan Q bar (lubang bertanda 2). Lubang 1 da 2 ini merupakan sinyal output berupa pulsa high atau low. Jika diinginkan uC untuk membaca masukan 5V, maka pin uC dihubungkan dengan lubang Q. Jika diinginkan uC untuk membaca kondisi low, maka hubungkan dengan kondisi low, maka hubungkan dengan lubang Q bar. Lebar pulsa saat mendeteksi adanya nyala lilin adalah 10 ms. Di board C3704 juga terdapat setting jumper 3.5.7. dan 9 ( disebut dengan setting background cancel level). Jika pancaran cahaya natural terlalu banyak dapat diset jumpernya ke- 9, defaulnya adalah 3. Jadi saat UV-Tron memberikan 3 sampai 9 pulsa ke board dengan interval waktu 2 detik atau kurang,rangkaian pemroses sinyal baru akan memberikan output pulsa yang selebar 10 ms itu.


(26)

2.3software

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. 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. 2. Instruksi DJNZ

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.


(27)

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:

... ... 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,


(28)

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,

MOV R0,#20h R0 = 20h ...

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 di bawah ini.


(29)

Gambar 2.12. 8051 Editor, Assembler, Simulator (IDE)

Setelah program selesai ditulis, kemudian save dan kemudian Assemble (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 di bawah ini

Gambar 2.13 ISP- Flash Programmer 3.a

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 III

PERANCANGAN DAN CARA KERJA ALAT

Penguat Sinyal photodio

da

Driver UV-tron UV-tron

uC AT89s52

Display matriks

relay Pompa air

relay alarm

uC AT89s52

Driver motor

Stepper Otor Stepper

Pada perancangan alat pendeteksi dan pemadam kebakaran otomatis dengan menggunakan sensor tron berbasis mikrokontroller AT89S51 ini secara umum terdiri dari 11 blok diagram utama. Sensor UV-tron digunakan untuk mendeteksi api kemudian setelah UV-UV-tron bekerja photodioda mendeteksi api digerakkan motorstepper mencari posisi api. Untuk dapat menghidupkan pompa secara otomatis diperlukan suatu rangkaian driver, driver pompa ini terdiri dari rangkaian relay dimana relay ini berfungsi sebagai saklar elektronik. Driver relay yang sama juga digunakan untuk mengaktifkan alarm. Display berfungsi untuk menampilkan tulisan peringatan.

3.1 Rangkaian Mikrokontroler AT89S51

Rangkaian ini berfungsi sebagai pusat kendali dari seluruh system yang ada. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini:

Gbr.3.1.Rangkaian Mikrokontroller AT89S51

Pin 31 External Access Enable (EA) diset high (H). Ini dilakukan karena mikrokontroller AT89S51 tidak menggunakan memori eskternal.


(31)

Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan capasitor 33 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroller AT89S51 dalam mengeksekusi setiap perintah dalam program. Pin 9 merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroller ini. Pin 32 sampai 39 adalah Port 0 yang merupakan saluran/bus I/O 8 bit open collector dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Pada port 0 ini masing masing pin dihubungkan dengan resistor 4k7 ohm.

Resistor 4k7 ohm yan dihubungkan ke port 0 befungsi sebagai pull up( penaik tegangan ) agar output dari mikrokontroller dapat mntrigger transistor. Pin 1 sampai 8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3. Pin 39 yang merupakan P0.0 dihubungkan dengan sebuah resistor 330 ohm dan sebuah LED. Ini dilakukan hanya untuk menguji apakah 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 39 sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum tersebut telah siap digunakan. Pin 20 merupakan ground dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supplay.

3.2 Rangkaian Pengendali Motor Stepper

Rangkaian pengendali motor stepper digunakan agar dapat menggerakkan fotodioda dan selang pompa secara otomatis. Rangkaian ini menggunakan motor stepper dan driver motor stepper. Motor stepper berfungsi untuk menggerakkan fotodioda dan selang pompa dan driver motor stepper berfungsi untuk mengendalikan motor stepper rangkaian pengendali motor stepper dapat dilihat pada gambar berikut:

Gambar 3.2 rangkaian driver motor stepper


(32)

Driver ini berfungsi untuk memutar motor stepper searah dengan jarum jam atau berlawanan arah dengan jarum jam. Rangkaian ini akan dikendalikan oleh mikrokontroler AT89S51. Jadi dengan memberikan sinyal high secara bergantian ke input dari rangkaian driver motor stepper tersebut, maka pergerakan motor stepper sudah dapat dikendalikan oleh mikrokontroler AT89S51.

Rangkaian driver motor stepper ini terdiri dari empat masukan dan empat keluaran, dimana masing-masing masukan dihubungkan dengan mikrokontroler AT89S51 dan keluarannya dihubungkan ke motor stepper. Rangkaian ini akan bekerja memutar motor stepper jika diberi sinyal high (1) secara bergantian pada ke-4 masukannya.

Rangkaian ini terdiri dari 4 buah transistor NPN TIP122. Masing-masing transistor dihubungkan ke P0.0, P0.1, P0.2 dan P0.3 pada mikrokontroler AT89S51. Basis dari masing-masing transistor diberi tahanan 10 Kohm untuk membatasi arus yang masuk ke transistor. Kolektor dihubungkan dengan kumparan yang terdapat pada motor stepper, kemudian kumparan dihubungkan dengan sumber tegangan 12 volt.dan emitor dihubungkan ke ground.

Jika P0.0 diberi logika high (1), yang berarti basis pada transistor TIP 122 mendapat tegangan 5 volt, maka transistor akan aktip. Hal ini akan menyebabkan terhubungnya kolektor dengan emitor, sehingga kolektor mendapatkan tegangan 0 volt dari ground. Hal ini menyebabkan arus akan mengalir dari sumber tegangan 12 volt ke kumparan, sehingga kumparan akan menghasilkan medan magnet. Medan magnet ini akan menarik logam yang ada pada motor, sehingga motor mengarah pada kumparan yang memiliki medan magnet tesebut.

Jika kemudian P0.0 di beri logika low (0), yang berarti transistor tidak aktip dan tidak ada arus yang mengair pada kumparan, sehingga tidak ada medan magnet pada kumparan. Dan disisi lain P0.1 diberi logika high (1), sehingga kumparan yang terhubung ke P0.1 akan menghasilkan medan magnet. Maka motor akan beralih kearah kumparan yang terhubung ke P0.1 tersebut. Seterusnya jika logika high diberikan secara bergantian pada input dari driver motor stepper, maka motor stepper akan berputar sesuai dengan arah logika high (1) yang diberikan pada inputnya.

Untuk memutar dengan arah yang berlawanan dengan arah yang sebelumnya, maka logika high (1) pada input driver motor stepper harus diberikan secara bergantian dengan arah yang berlawanan dengan sebelumnya.


(33)

3.3 Perancangan Rangkaian Power Supplay (PSA)

Rangkaian power supplay berfungsi untuk mensupplay tegangan ke seluruh rangkaian. Rangkaian PSA yang dibuat terdiri dari satu keluaran, yaitu 5 volt, keluaran 5 volt ini digunakan untuk menghidupkan seluruh rangkaian. Rangkaian power supplay adaptor ditunjukkan oleh gambar berikut ini,

Gambar 3.3 Rangkaian Power Supplay (PSA)

Trafo CT merupakan trafo 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.Transistor tipe PNP ini akan aktif jika tegangan pada basis > 0,7 volt dari tegangan positip. Tegangan positip yang dihubungkan ke emitor sebesar 12 volt, sehingga transistor akan aktip jika diberi tegangan yang lebih kecil dari 12 volt – 0,7 volt = 11,3 volt. Dalam kondisi biasa (LM7805 tidak kekurangan arus), maka basis akan mendapatkan tegangan 12 volt, sehingga transistor tidak aktip, emitor tidak terhubung dengan kolektor, sehingga tegangan pada kolektor sama dengan tegangan pada output regulator LM7805 yaitu 5 volt. Namun jika rangkaian membutuhkan arus yang lebih banyak, maka regulator akan mengambil arus dari inputnya, sehingga tegangan pada input regulator akan turun hingga lebih kecil dari 11,3 volt, transistor akan aktip, maka arus akan mengalir dari emitor ke kolektor. Pada transistor ini jika aktip, maka yang mengalir dari emitor ke kolektor adalah arusnya, sedangkan tegangannya tidak, sehingga tegangan pada kolektor tetap 5 volt.

Vreg LM7805CT

IN OUT TIP32C

100฀

100uF

330฀

2200uF 1uF 220 V AC

0 V

5 Volt DC

0 Volt 12 Volt DC 12 V


(34)

A733

Vcc

Vcc

C 945 3

2

3

2 1

1

µc

Vcc

LM 385 1 KΩ

1 KΩ

1 KΩ

1 KΩ

10 KΩ

100 KΩ

330 Ω

100 KΩ 100 KΩ

3.4 Rangkaian Penguat Sinyal

Rangkaian ini berfungsi untuk memperkuat sinyal yang dihasilkan oleh masing-masing sensor sehingga cukup kuat untuk memberikan logika high atau logika low kepada mikrokontroler AT89S51. Rangkaian penguat sinyal ditunjukkan pada gambar 3.3 berikut :

Gambar 3.4 Rangkaian penguat sinyal

Sinyal dari sensor akan diperkuat oleh transistor A733 sebagai penguat depan sekaligus menyesuiakan 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 mikrokontroler AT89S51.

Transistor C945 ini merupakan transistor jenis NPN. Transistor ini akan aktip (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 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.


(35)

Kolektor dari transistor ini akan dihubungkan ke mikrokontroler AT89S51, sehingga perubahan tegangan yang terjadi pada kolektor akan dapat diketahui oleh mikrokontroler AT89S51.

3.5 Rangkaian Pengendali Pompa Air

Rangkaian pengendali pompa air pada alat ini berfungsi untuk memutuskan atau menghubungkan sumber tegangan 220 volt dengan pompa. Gambar rangkaian pengendali pompa air ditunjukkan pada gambar 3.4 berikut ini:

Gambar 3.5 Rangkaian Pompa Air

Output dari relay yang satu dihubungkan ke sumber tegangan 220 volt dan yang lainnya dihubungkan ke pompa. Hubungan yang digunakan adalah normally close. Prinsip kerja rangkaian ini pada dasarnya memanfaatkan fungsi transistor sebagai saklar elektronik. Tegangan atau sinyal pemicu dari transistor berasal dari mikrokontroler Port 0.1 (P0.1). Pada saat logika pada port 0.1 adalah tinggi (high), maka transistor mendapat tegangan bias dari kaki basis. Dengan adanya tegangan bias ini maka transistor akan aktip (saturation), sehingga adanya arus yang mengalir ke kumparan relay. Hal ini akan menyebabkan sakar pada relay menjadi tertutup, sehingga hubungan sumber tegangan 220 volt ke pompa akan terhubung dan pompa akan menyala. Begitu juga sebaliknya pada saat logika pada P0.1 adalah rendah (low) maka relay tidak dialiri arus. Hal ini akan menyebabkan saklar pada relay terputus, sehingga sumber tegangan 220 volt dengan pompa akan terputus dan pompa tidak menyala.


(36)

3.6 Rangkaian Alarm

Rangkaian alarm pada alat ini berfungsi untuk memutuskan atau menghubungkan sumber tegangan 12 volt dengan buzzer. Gambar rangkaian alarm ini ditunjukkan pada gambar 3.5 berikut ini:

Gbr 3.6 Rangkaian alarm

Output dari relay yang satu dihubungkan ke sumber tegangan 12 volt dan yang lainnya dihubungkan ke buzzer. Hubungan yang digunakan adalah normally open. Prinsip kerja rangkaian ini pada dasarnya memanfaatkan fungsi transistor sebagai saklar elektronik. Tegangan atau sinyal pemicu dari transistor berasal dari mikrokontroler Port 0.1 (P0.1). Pada saat logika pada port 0.1 adalah tinggi (high), maka transistor mendapat tegangan bias dari kaki basis. Dengan adanya tegangan bias ini maka transistor akan aktip (saturation), sehingga adanya arus yang mengalir ke kumparan relay. Hal ini akan menyebabkan sakar pada relay menjadi tertutup, sehingga hubungan sumber tegangan 12 volt ke buzzer akan terhubung dan buzzer akan berbunyi. Begitu juga sebaliknya pada saat logika pada P0.1 adalah rendah (low) maka relay tidak dialiri arus. Hal ini akan menyebabkan saklar pada relay terputus, sehingga sumber tegangan 12 volt dengan buzzer akan terputus dan buzzer tidak berbunyi.


(37)

3.7 Rangkaian LED matriks display

Rangkaian LED matriks display ini merupakan susunan LED berbentuk matriks dengan 7 baris dan 16 kolom, sehingga jumlah seluruh LED yang digunakan adalah 112. Bagian horizontal terdiri dari 7 baris, karena untuk menampilkan sebuah karakter dibutuhkan 7 baris. Bagian vertical terdiri dari 166 kolom, sesuai dengan jumlah output dari IC 74LS154 yang digunakan. Rangkaian LED matriks display beserta rangkaian drivernya dapat dilihat pada gambar berikut :

Gambar 3.7 Rangkaian LED matriks display beserta rangkaian driver.

Bagian horizontal yang terdiri dari 7 baris, masing-masing dihubungkan ke kolektor dari transistor C945. Emitor dihubungkan ke ground dan basis dihubungkan dengan resistor 1 kohm. Resistor ini dihubungkan dengan Port 0 dari mikrokontroller AT89S51. Untuk memastikan transistor akan aktif bila diberi sinyal high dari mikrokontroler, maka Port 0 juga dihubungkan dengan resistor 4K7 yang langsung ke sumber tegangan +5 volt, sehingga jika Port 0 diberi nilai high maka arus akan mengalir dari VCC ke transistor C945 yang bertipe NPN yang mengakibatkan transistor aktif karena mendapatkan tegangan basis yang lebih besar dari 0,7 volt. Sehingga, dengan memberikan suatu data (nilai) tertentu pada Port 0, maka transistor akan aktif sesuai dengan data (nilai) yang diberikan pada Port 0.

Bagian vertikal yang terdiri dari 16 kolom, masing-masing dihubungkan ke emitor dari transistor A733 yang bertipe PNP. Colektor dhubungkan dengan sumber tegangan +5 volt dan basisnya dihubungkan dengan resistor 330 ohm, kemudian resistor ini dihubungkan dengan Pin output dari IC


(38)

74LS154. jika IC 74LS154 diberi suatu masukan, maka salah satu pin outputnya akan berlogika low. Logika low ini akan menyebabkan transistor yang terhubung dengan Pin tersebut menjadi aktif. Aktifnya transistor tersebut menyebabkan arus arus mengalir dari sumber tegangan ke transistor A733 menuju LED. Jika transistor C945 juga dalam keadaan aktif maka arus dari LED akan menuju transistor C945 menuju ke ground, sehingga LED pada kolom tersebut akan hidup sesuai dengan data (nilai) yang diberikan oleh Port 0. Dengan demikian maka kita sudah dapat menghidupkan LED pada baris dan kolom tertentu.

3.8 Sensor Api

Untuk mendeteksi keberadaan api, robot menggunakan sensor api berupa UVTron tipe Hamamatsu 2868 yang diletakkan pada suatu mekanisme yang dapat berputar kekiri, kanan dan depan robot. Sensor UVTron ini akan diletakkan dengan memakai reflektor sehingga hanya bisa mendeteksi api (lilin) yang tegak lurus dengan UVTron. Apabila UVTron sudah mendeteksi adanya api maka robot akan berputar sesuai dengan arah putaran sensor UVTron.

Pada saat robot berada dipintu ruangan, robot tidak akan langsung masuk tetapi mendeteksi api terlebih dahulu apabila ada api maka robot akan masuk tetapi apabila tidak ada api maka robot tidak akan masuk melainkan kembali mencari titik api.

Secara umum cara kerja Uv-Tron adalah sebagai berikut : 1. Mendeteksi adanya panas.

2. Mendeteksi adanya perubahan panas di lingkungan sekitar.

Alasan pemilihan sensor UVTron untuk mendeteksi keberadaan api adalah karena kelebihan dari sensor ini yaitu sebagai berikut :

• Mendeteksi adanya sinar Ultraviolet menggunakan efek perubahan gas yang ada di dalam sensor tersebut.

• Spektrum gelombang yang dideteksi pada 185 ke 260 nm.

• Dapat menjangkau sumber api panas sampai jangkauan 5 meter.

• Uv-Tron Hamamatsu 2868 digunakan untuk mendeteksi adanya panas api (kebakaran) pada suatu tempat.


(39)

Berikut adalah gambar Uv-Tron Hamamatsu :

Gambar 3.8a. Fisik Flame Sensor Uv-Tron


(40)

BAB IV

PENGUJIAN ALAT DAN PROGRAM

Flowcart

Progra m dawali dengan start, selanjutny a mematika n pompa,ala rm dan data api setelah itu posisi fotodioda 1,2 dan 3,4 yang digerakkan motor berada pada posisi standby. Program akan mengecek keberadaan api, jika api tidak ada maka tampilan display akan tampil tulisan biasa akan tetapi jika ada api maka akan dilanjutkan menampilkan peringatan kebakaran,menghidupkan alarm dan data api , mengecek api pada mata I, mata II, mataIII dan mata IV. Apabila tidak terdeteksi api berarti tidak ada api maka program akan kembai mendeteksi dari posisi awal., apabila api terdeteksi dari salah satu mata fotodioda maka motor akan mati dan pompa akan bekerja untuk memadamkan api kemudian setelah api padam program kembali mengcek keberadaan api untuk memastikan ada tidaknya api.

Start

On pompa,alarm dan data api

Posisi awal & 2

Ada api?

On Alarm dan Data api

On Motor

Cek Mata I Cek Mata II Cek Mata III Cek Mata IV

Off motor

On Pompa

Cek api

tdk tdk tdk

a ya ya ya tdk tdk Tampilkan Tulisan biasa Tampilkan peringatan kebakaran tdk ya


(41)

.1 Pengujian Rangkaian Mikrokontroller AT89S51

Untuk mengetahui apakah rangkaian mikrokontroller AT89S51 telah bekerja dengan baik, maka dilakukan pengujian. Pengujian bagian ini dilakukan dengan memberikan program sederhana pada mikrokontroller AT89S51. Programnya adalah sebagai berikut:

Loop:

Setb P0.0 Acall tunda Clr P0.0 Acall tunda Sjmp Loop Tunda:

Mov r7,#255 Tnd: Mov r6,#255

Djnz r6,$ Djnz r7,tnd Ret

Program di atas bertujuan untuk menghidupkan LED yang terhubung ke P0.0 beberapa saat dan kemudian mematikannya. Perintah Setb P0.0 akan menjadikan P0.0 berlogika high yang menyebabkan LED menyala. Acall tunda akan menyebabkan LED ini hidup selama beberapa saat. Perintah Clr P0.0 akan menjadikan P0.0 berlogika low yang menyebabkan LED akan mati. Perintah Acall tunda akan menyebabkan LED ini mati selama beberapa saat. Perintah Sjmp Loop akan menjadikan program tersebut berulang, sehingga akan tampak LED tersebut tampak berkedip.

Jika program tersebut diisikan ke mikrokontroller AT89S51, kemudian mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian minimum mikrokontroller AT89S51 telah bekerja dengan baik.

4.2 Pengujian Rangkaian Alarm

Pengujian rangkaian alarm dapat dilakukan dengan memberikan tegangan 5 volt dan 0 volt pada basis transistor C945. Transistor C945 merupakan transistor jenis NPN, transistor jenis ini akan aktip jika pada basis diberi tegangan > 0,7 volt dan tidak aktip jika pada basis diberi tegangan < 0,7 volt. Aktipnya


(42)

transistor akan mengaktipkan relay. Pada rangkaian ini relay digunakan untuk memutuskan hubungan alarm dengan sumber tegangan 12 volt, dimana hubungan yang digunakan adalah normally close(NC), dengan demikian jika relay aktip maka hubungan alarm ke sumber tegangan akan terhubung, sebaliknya jika relay tidak aktip, maka hubungan alarm ke sumber tegangan akan terputus.

Pengujian dilakukan dengan memberikan tegangan 5 volt pada basis transistor, jika relay aktip dan buzzer berbunyi, maka rangkaian ini telah berfungsi dengan baik.

Pengujian selanjutnya dilakukan dengan menghubungkan input rangkaian ini ke mikrokontroler pada P0.1

Gamabar 4.1 Rangkaian Alarm

kemudian memberikan program sederhana pada mikrokontroler AT89S51. Program yang diberikan adalah sebagai berikut:

Setb P0.1

. . .

Perintah di atas akan memberikan logika high pada P0.1, sehingga P0.1 akan mendapatkan tegangan 5 volt. Tegangan 5 volt ini akan mengaktipkan transistor C945, sehingga relay juga menjadi aktip dan alarm berbunyi. Berikutnya memberikan program sederhana untuk menonaktipkan relay. Programnya sebagai berikut:

Clr P0.1


(43)

Perintah di atas akan memberikan logika low pada P0.1, sehingga P0.1 akan mendapatkan tegangan 0 volt. Tegangan 0 volt ini akan menonaktipkan transistor C945, sehingga relay juga menjadi tidak aktip dan alarm tidak berbunyi.

4.3 Pengujian Rangkaian Pengendali Pompa

Pengujian rangkaian pengendali pompa ini dapat dilakukan dengan memberikan tegangan 5 volt dan 0 volt pada basis transistor C945. Transistor C945 merupakan transistor jenis NPN, transistor jenis ini akan aktip jika pada basis diberi tegangan > 0,7 volt dan tidak aktip jika pada basis diberi tegangan < 0,7 volt. Aktipnya transistor akan mengaktipkan relay. Pada rangkaian ini relay digunakan untuk memutuskan hubungan pompa dengan sumber tegangan 220 volt, dimana hubungan yang digunakan adalah normally close(NC), dengan demikian jika relay aktip maka hubungan pompa ke sumber tegangan akan terhubung, sebaliknya jika relay tidak aktip, maka hubungan pompa ke sumber tegangan akan terputus.

Pengujian dilakukan dengan memberikan tegangan 5 volt pada basis transistor, jika relay aktip dan pompa akan menyala, maka rangkaian ini telah berfungsi dengan baik.

Pengujian selanjutnya dilakukan dengan menghubungkan input rangkaian ini ke mikrokontroler pada P0.0

Gambar 4.2 Rangkaian pengendali pompa

kemudian memberikan program sederhana pada mikrokontroler AT89S51. Program yang diberikan adalah sebagai berikut:


(44)

Setb P0.0

. . .

Perintah di atas akan memberikan logika high pada P0.0, sehingga P0.0 akan mendapatkan tegangan 5 volt. Tegangan 5 volt ini akan mengaktipkan transistor C945, sehingga relay juga menjadi aktip dan pompa menyala. Berikutnya memberikan program sederhana untuk menonaktipkan relay. Programnya sebagai berikut:

Clr P0.0

. . .

Perintah di atas akan memberikan logika low pada P0.0, sehingga P0.0 akan mendapatkan tegangan 0 volt. Tegangan 0 volt ini akan menonaktipkan transistor C945, sehingga relay juga menjadi tidak aktip dan pompa tidak menyala.

4.4 Pengujian Rangkaian Driver Motor Stepper

Rangkaian driver motor stepper ini terdiri dari empat masukan dan empat keluaran, dimana masing-masing masukan dihubungkan dengan mikrokontroler AT89S51 dan keluarannya dihubungkan ke motor stepper. Rangkaian ini akan bekerja memutar motor stepper jika diberi sinyal high (1) secara bergantian pada ke-4 masukannya. Rangkaiannya seperti gambar di bawah :

Gambar 4.3 Rangkaian Driver Motor Step


(45)

Rangkaian ini terdairi dari 4 buah transistor NPN TIP 122. Masing-masing transistor dihubungkan ke P0.0, P0.1, P0.2 dan P0.3 pada mikrokontroler AT89S51. Basis dari masing-masing transistor diberi tahanan 10 Kohm untuk membatasi arus yang masuk ke transistor. Kolektor dihubungkan dengan kumparan yang terdapat pada motor stepper, kemudian kumparan dihubungkan dengan sumber tegangan 12 volt.dan emitor dihubungkan ke ground.

Jika P0.0 diberi logika high (1), yang berarti basis pada transistor TIP 122 mendapat tegangan 5 volt, maka transistor akan aktip. Hal ini akan menyebabkan terhubungnya kolektor dengan emitor, sehingga kolektor mendapatkan tegangan 0 volt dari ground. Hal ini menyebabkan arus akan mengalir dari sumber tegangan 12 volt ke kumparan, sehingga kumparan akan menghasilkan medan magnet. Medan magnet ini akan menarik logam yang ada pada motor, sehingga motor mengarah pada kumparan yang memiliki medan magnet tesebut.

Jika kemudian P0.0 di beri logika low (0), yang berarti transistor tidak aktip dan tidak ada arus yang mengair pada kumparan, sehingga tidak ada medan magnet pada kumparan. Dan disisi lain P0.1 diberi logika high (1), sehingga kumparan yang terhubung ke P0.1 akan menghasilkan medan magnet. Maka motor akan beralih kearah kumparan yang terhubung ke P0.1 tersebut. Seterusnya jika logika high diberikan secara bergantian pada input dari driver motor stepper, maka motor stepper akan berputar sesuai dengan arah logika high (1) yang diberikan pada inputnya.

Untuk memutar dengan arah yang berlawanan dengan arah yang sebelumnya, maka logika high (1) pada input driver motor stepper harus diberikan secara bergantian dengan arah yang berlawanan dengan sebelumnya.

Program yang diberikan pada driver motor stepper untuk memutar motor stepper adalah sebagai berikut :

mov a,#11h

putar:

mov P0,a

acall tunda

Rl a


(46)

Program diawali dengan memberikan nilai 11h pada pada accumulator (a), kemudian program akan memasuki rutin buka pintu. Nilai a diisikan ke port 0, sehingga sekarang nilai port 0 adalah 11h. Ini berarti P0.0 dan P0.4 mendapatkan logika high sedangkan yang lainnya mendapatkan logika low, seperti table di bawah ini,

Tabel 4.1a

P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0

P0 0 0 0 1 0 0 0 1

Program dilanjutkan dengan memanggil rutin tunda. Lamanya tunda akan mempengaruhi kecepatan perputaran motor. Semakin lama maka tunda, maka perputaran motor akan semakin lambat. Perintah berikutnya adalah Rl a,perintah ini akan memutar nilai yang ada pada accumulator (a), seperti tampak pada table di bawah ini,

Tabel 4.1b

a 0 0 0 1 0 0 0 1 Rl

a 0 0 1 0 0 0 1 0 Dst…...

Nilai pada accumulator (a) yang awalnya 11h, setelah mendapat perintah Rl a, maka nilai pada accumulator (a) akan merubah menjadi 22h. Kemudian program akan melihat apakah kondisi sensor buka pintu dalam keadaan high (1) atau low (0). Jika high (1),

Nilai yang ada pada accumulator (a), akan kembali diisikan ke port 0, maka nilai di port 0 akan berubah menjadi 22h, ini berarti P0.1 dan P0.5 mendapatkan logika high sedangkan yang lainnya mendapatkan logika low, seperti table di bawah ini,

Tabel 4.1c

P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0

P0 0 0 1 0 0 0 1 0

Sebelumnya telah dibahas bahwa P0.0, P0.1, P0.2, dan P0.3 dihubungkan ke masukan driver motor stepper, dengan program di atas maka P0.0, P0.1, P0.2, dan P0.3 akan mendapatkan nilai high (1) secara bergantian. Hal ini menyebabkan motor stepper akan berputar membuka pintu. Hal yang sama juga


(47)

berlaku ketika motor berputar kaearah sebaliknya, perbedaannya hanya pada perintah rotate. Jika pada perintah berlawanan arah jarum jam digunakan rotate left ( Rl ), maka pada perintah searah jarum jam digunakan perintah rotate right ( Rr). Perputaran perintah Rr diperlihatkan pada table berikut,

Tabel 4.1d

a 1 0 0 0 1 0 0 0 R r

a 0 1 0 0 0 1 0 0 Dst...

4.5 Pengujian Rangkaian Sensor

Pengujian pada rangkaian sensor ini dapat dilakukan dengan cara menghubungkan rangkaian ini dengan sumber tegangan 5 volt, kemudian mengarahkan photodioda ke sumber api. Ketika photodioda mendeteksi api, maka pancaran sinar infra merah api akan mengenai potodioda, sehingga menyebabkan LED indikator pada rangkaian penerima akan menyala, dan tegangan output rangkaian sebesar 0,2 volt. Namun ketika potodioda tidk mendeteksi api, yang menyebabkan pancaran infra merah api tidak mengenai potodioda, hal ini menyebabkan LED indikator pada rangkaian penerima tidak menyala dan tegangan output dari rangkaian ini sebesar 4,8 volt.

Pengujian selanjutnya dilakukan dengan cara menghubungkan rangkaian ini dengan rangkaian mikrokontroler AT89S51, dan memberikan program tertentu pada mikrokontroler AT89S51.Untuk mendeteksi adanya sinyal yang dikirimkan oleh sensor, maka mikrokontroler harus diprogram untuk untuk dapat mengecek sinyal apa yang dikirimkan oleh sensor. Jika sinyal yang dikirimkan adalah sinyal high (1), berarti tidak ada kenderaan melewati sensor, namun jika sinyal yang dikirimkan adalah sinyal low, maka ini berarti ada kenderaan yang melewati sensor. Program untuk mendeteksi pengiriman sinyal dari rangkaian sensor ini adalah,

sensor_api1 Bit P1.3

Sensor_api2 Bit P1.2

Cek_sensor_api1:

Jnb sensor_api1,Cek_sensor_api2


(48)

. . .

Cek_sensor_api2:

Jnb sensor_api2,Cek_sensor_api1

Setb P0.0

. . .

Jmpcek_sensor_api1

Di awal program dibuat inisialisasi port, dimana rutin ini menunjukkan bahwa sensor api1 dihubungkan ke P1.3 dan sensor api2 dihubungkan ke P1.2. Kemudian program akan dilanjutkan dengan rutin cek sensor api1. Pada rutin ini program akan melihat kondisi P1.3 yang dihubungkan ke sensor api1, dengan menggunakan perintah JnB (jump if not bit), jika kondisi P1.3 bit (high), yang berarti tidak ada api yang terdeteksi, maka program akan lompat ke rutin cek sensor api2. Namun jika kondisi P1.3 notbit (low), maka program akan melanjutkan ke rutin Clr P0.0. Perintah ini akan menyebabkan LED yang terhubung ke P0.0 mati. Jika rangkaian telah berjalan sesuai dengan program yang diberikan, maka rangkaian telah bekerja dengan baik.

4.6 Pengujian Rangkaian LED matriks display

Untuk menguji rangkaian led matriks display maka kita menghubungkan Rangkaian LED matriks display dengan mikrokontroller AT89S51.

Metode yang digunakan oleh penulis untuk menampilkan kalimat berjalan adalah metode scan. Dalam metode scan sebenarnya hanya ada satu kolom yang hidup dalam satu waktu, namun karena waktu penampilannya yang sangat cepat, sehingga sepertinya LED itu hidup secara bersamaan dan berjalan. Gambar rangkaian untuk metode scan adalah seperti gambar di bawah:


(49)

Gambar4.4 Rangkaian LED matriks display

Matriks display yang penulis buat terdiri dari 7 baris dan 16 kolom, dimana kolom pertama adalah kolom yang paling kanan. Untuk menghidupkan LED pada kolom atau baris tertentu semuanya dikendalikan oleh program dalam mikrokontroller AT89S51. Untuk mengendalikan tampilan baris digunakan port 0 dan untuk mengendalikan kolom yang aktif digunakan port 2. Contohnya jika kita ingin menghidupkan ketujuh LED pada kolom pertama, maka kita harus memberikan sinyal high pada P0.0 sampai P0.6 dan memberikan sinyal low pada kolom pertama.

Programnya adalah sebagai berikut Loop:

Mov P0,#7FH Mov P2,#0H Sjmp Loop

Dengan program di atas maka ketujuh baris led akan hidup pada kolom pertama, karena perintah Mov P2,#0H akan membuat kolom pertama mendapat sinyal low dan kolom yang lainnya high. Sedangkan perintah Sjmp Loop akan membuat program tersebut terus berulang. Dengan mengubah nilai yang diisikan ke port 2 maka kolom yang aktif (mendapat sinyal low) akan berubah.


(50)

Untuk menampilkan sebuah huruf pada display matiks, maka kolom-kolom tempat tampilnya huruf tersebut harus dihidupkan secara bergantian dalam waktu yang cepat, sehingga akan tampak bahwa sepertinya kolom itu hidup secara bersamaan

Sebagai contoh adalah cara pembentukan karakter “S”. Langkah pertama adalah membuat bentuk karakter “S” sesuai dengan yang diinginkan, seperti yang tampak pada gambar di bawah :

Gambar 4.5a Karakter Display Mariks

Bentuk dari karakter “S” tidak harus sama seperti di atas, kita dapat membentuknya sesuai dengan keinginan kita sendiri.

Langkah selanjutnya adalah mengubah bentuk karakter “S” yang telah ada menjadi data-data biner dengan cara memberi nilai 1 pada led yang hidup dan memberi nilai 0 pada led yang mati, seperti tampak pada gambar di bawah ini :

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Gambar 4.5b Karakter Display Mariks

Dengan demikian telah didapat data-data biner untuk membentuk karakter “S”. Sesuai dengan gambar di atas, maka data biner yang diperoleh adalah sebagai berikut:


(51)

Tabel 4.2 Data Biner

kolom 1 2 3 4 5 6 7

Data biner 0100110 1101111 1001001 1001001 1001001 1111011 0110010 Data

heksadesimal

26 H 6F H 49 H 49 H 49 H 7B H 32 H

Jadi untuk membentuk sebuah karakter “S”, maka data yang harus diberikan adalah 26 H, 6F H,49 H, 49 H, 49 H, 7B H dan 32 H. data yang sudah ada ini kemudian diisikan ke port 0 secara bergantian dan dipilih kolom-kolom yang digunakan untuk tampilnya huruf “S” tersebut. Programnya adalah sebagai berikut:

Loop:

Mov P0,#26H Mov P2,#15 Acall Tunda Mov P0,#6FH Mov P2,#14 Acall Tunda Mov P0,#49H Mov P2,#13 Acall Tunda Mov P0,#49H Mov P2,#12 Acall Tunda Mov P0,#49H Mov P2,#11 Acall Tunda Mov P0,#7BH Mov P2,#10 Acall Tunda Mov P0,#32H Mov P2,#9 Acall Tunda Sjmp Loop

tunda:


(52)

tnd:

mov r6,#6 djnz r6,$ djnz r7,tnd ret

Dengan program di atas maka huruf “S” akan tampil pada kolom ke-15 sampai kolom ke-9, seperti gambar di bawah :

Kolom 15 14 13 12 11 10 9

Gambar 4.5c Karakter Diplay Matriks

Rutin Tunda di atas berfungsi sebagai selang waktu antara hidupnya kolom satu dengan kolom yang lainnya. Apabila tidak ada selang waktu antara hidupnya kolom satu dengan kolom yang lainnya, maka tampilannya tidak seperti yang diharapkan, karena terlalu cepat sehingga LEDnya akan relihat hidup semua.

Jika kita hendak menampilkan tulisan seolah olah berjalan maka kita harus memasukkan program yang sedikit berbeda ke dalam mikrokontroller. Sebagai contoh bila kita ingin menampilkan kata “USU”, maka langkah pertama adalah mengetahui data-data yang harus diisikan ke port 0.

Gambar 4.5d Karakter Diplay Matriks


(53)

db 3fh, 40h,40h,3fh,80h ; U db 26h, 49h,49h,49h,62h ; S db 3fh, 40h,40h,3fh,80h ; U Programnya adalah sebagai berikut:

loop:

mov dptr,#Kata_USU mov r3,#16

loop_1:

movc a,@a+dptr mov p0,a

mov p2,r3 Dec r3 inc dptr acall tunda cjne r3,#0,loop_1 Sjmp loop

tunda:

mov r7,#10 tnd:

mov r6,#6 djnz r6,$ djnz r7,tnd ret

Kata_USU:

db 3fh, 40h,40h,3fh,80h ; U

db 26h, 49h,49h,49h,62h ; S db 3fh, 40h,40h,3fh,80h ; U

Program di atas di awali dengan perintah mov dptr,#Kata_USU, perintah ini bertujuan memasukkan/menyimpan data-data yang ada pada subrutin Kata_ USU ke dalam register data pointer (dptr). Data pointer merupakan register 16 bit sehingga dapat menyimpan 256 data biner atau data hexadesimal. Program dilanjutkan dengan perintah mov r3,#16 yang bertujuan untuk memasukkan jumlah kolom yang digunakan ke dalam register r3. Dan selanjutnya data pertama yang ada dalam register dptr diisikan ke register a kemudian diisikan ke port 0 untuk ditampilkan ke display dengan perintah movc


(54)

a,@a+dptr dan mov p0,a. Perintah mov p2,r3 berfungsi untuk memilih kolom yang akan menampilkan data pertama. Karena r3 sebelumnya diisi dengan nilai 32 maka data pertama pada dptr akan ditampilkan pada kolom ke-32. Perintah Dec r3 akan mengurangi nilai yang ada pada r3 dengan nilai 1 sehingga r3 sekarang berisi nilai 31 yang menunjukkan nilai kolom dimana data akan ditampilkan berikutnya.Perintah inc dptr akan menggeser data yang ditunjuk oleh dptr , jika sebelumnya dptr menunjuk ke data pertama, maka sekarang dptr menunjuk data yang kedua. Perintah acall tunda merupakan lamanya data pertama ditampilkan pada kolom ke-32. Kemudian r3 akan dibandingkan dengan 0 pada perintah cjne r3,#0,loop_1 , jika bukan 0 maka program kembali ke rutin loop_1 , kemudian kembali menampilkan data berikutnya, yaitu data kedua dari dptr ditampilkan di kolom ke 15. Demikian seterusnya sampai data ke 16 yang ada pada dptr akan ditampilkan pada kolom pertama. Dengan demikian kata “USU” akan tampil berjalan pada display matriks.

4.7. Pengujian dan Analisa Sensor UVTron

Prinsip kerja dari rangkaian dan sensor UVTron ini adalah apabila sensor mendeteksi api maka rangkaian driver akan mengeluarkan logika 1. Dan sebaliknya apabila tidak mendeteksi api rangkaian akan mengeluarkan logika 0. Hasil pengujian dari rangkaian dan sensor UV-tron ditunjukkan pada table 4.2a

Tabel 4.2a Hasil Pengujian Rangkaian Sensor UvTron

Kondisi Hasil pegukuran Ada api 4.4 VDC Tidak ada api 0 VDC

Hasil pengujian dari rangkaian dan sensor UV-tron dengan berbagai jenis sinar ditunjukkan pada tabel 4.2b


(55)

Tabel 4.2b Hasil Pengujian Rangkaian Sensor UvTron

No Jenis Sinar 1 Meter 2 Meter 3 Meter 4 Meter 5 Meter

1 Api lilin 5 V 4,7V 5 V 5 V 4,9 V 2 Api anti nyamuk 5 V 4,9 V 4,9 V 0 V 0 V 3 Api rokok 5 V 5 V 4,9 V 0 V 0 V 4 Percikan api 5 V 0 V 0 V 0 V 0 V 5 Lampu neon 0 V 0 V 0 V 0 V 0 V


(56)

BAB V

KESIMPULAN DAN SARAN I. KESIMPULAN

1. Alat ini dapat bekerja secara otomatis dengan baik apabila tidak ada sinar matahari secara langsung yang mempengaruhuinya.

2. Untuk dapat membangun sebuah instrumen yang mampu mendeteksi dan memadamkan api secara otomatis apabila terjadi kebakaran di dalam suatu ruangan harus memahami cara kerja sensor yang digunakan dan urutan penggunaan peralaan seperti alarm, display matriks dan pompa sehingga kebakaran dapat dicegah dengan cepat.

3. Sensor UV-tron dapat dimanfaatkan untuk mendeteksi sinar ultraviolet pada range 185 – 260 nm dimana api berada pada range tersebut.

II. SARAN

1. Alat pendeteksi api dan pemadam kebakaran ini dapat dikembangkan pada penelitian selanjutnya sehingga lebih sempurna.

2. Sebaiknya display yang digunakan yaitu running text atau LCD yang besar sehingga mudah dibaca dari jarak jauh.


(57)

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.


(58)

LAMPIRAN I

; = = = = = = = = = = = = = = =; ; program scan api (lengkap) ; ; = = = = = = = = = = = = = = =;

switch1 bit p0.4

switch2 bit p0.5

api bit p0.6

mata1 bit p2.0

mata2 bit p2.3

mata3 bit p2.1

mata4 bit p2.2

pompa1 bit p0.7

pompa2 bit p2.7

pompa3 bit p2.5

pompa4 bit p2.4

alarm bit p2.6

data_api bit p0.0

posisi_awal: clr pompa1 clr pompa2 clr pompa3 clr pompa4 clr alarm clr data_api call awal2 call awal1 mov a,#11h cek_api: jb api,posisi_awal setb alarm setb data_api mov p1,a mov p3,a rr a call delay jb mata1,cek_mata2 call mati_motor call tunda1 setb pompa1 call tunda1 call tunda1 cek_mata2: jb mata2,cek_mata3 call mati_motor call tunda1 setb pompa2 call tunda1 call tunda1 cek_mata3: jb mata3,cek_mata4 call mati_motor call tunda1 setb pompa3 call tunda1 call tunda1 call tunda1 cek_mata4: jb mata4,cek_api call mati_motor


(1)

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.


(2)

LAMPIRAN I

; = = = = = = = = = = = = = = =; ; program scan api (lengkap) ; ; = = = = = = = = = = = = = = =; switch1 bit p0.4 switch2 bit p0.5

api bit p0.6

mata1 bit p2.0 mata2 bit p2.3 mata3 bit p2.1 mata4 bit p2.2

pompa1 bit p0.7

pompa2 bit p2.7

pompa3 bit p2.5

pompa4 bit p2.4

alarm bit p2.6

data_api bit p0.0 posisi_awal:

clr pompa1 clr pompa2 clr pompa3 clr pompa4 clr alarm clr data_api call awal2 call awal1 mov a,#11h cek_api:

jb api,posisi_awal setb alarm

setb data_api mov p1,a mov p3,a rr a

call delay

jb mata1,cek_mata2 call mati_motor call tunda1 setb pompa1 call tunda1 call tunda1 cek_mata2:

jb mata2,cek_mata3 call mati_motor call tunda1 setb pompa2 call tunda1 call tunda1 cek_mata3:

jb mata3,cek_mata4 call mati_motor call tunda1 setb pompa3 call tunda1 call tunda1 call tunda1 cek_mata4:

jb mata4,cek_api call mati_motor


(3)

call tunda1 setb pompa4 call tunda1 call tunda1 jmp cek_api awal1: mov a,#11h loop: mov p1,a rl a call delay jb switch2,loop mov p1,#0h ret awal2: mov a,#11h loop1: mov p3,a rl a call delay jb switch1,loop1 mov p3,#0h ret mati_motor: mov p1,#0h mov p3,#0h ret hidup_pompa1: mov r3,#255 loop_pompa1: setb pompa1 djnz r3,$ ret tunda1: mov r7,#100 tnd1: mov r6,#100 td1: mov r5,#30 djnz r5,$ djnz r6,td1 djnz r7,tnd1 ret delay: mov r7,#200 dly: mov r6,#20 djnz r6,$ djnz r7,dly ret tunda: mov r7,#255 tnd: mov r6,#255 djnz r6,$ djnz r7,tnd


(4)

ret

end

LAMPIRAN II

; = = = = = = = = = = = = = = = ; ; program running text ; ; = = = = = = = = = = = = = = = ; paling_utama:

acall pesan1 jmp utama utama:

jnb p1.0,paling_utama acall pesan2

acall delay sjmp utama tunda:

mov r7,#10 tnd:

mov r6,#6 djnz r6,$ djnz r7,tnd ret

delay:

mov r7,#100 dly:

mov r6,#100 djnz r6,$ djnz r7,dly ret

pesan1:

mov p0,#msg1 mov 76h,#15 loop1:

mov a,#76h jalan1:

mov p2,#15 acall tunda scn11:

dec a

cjne a,#0,scn11 ret

pesan2:

mov p0,#msg2 mov 76h,#15 loop2:

mov a,#76h jalan2:

mov p2,#15 acall tunda scn22:


(5)

cjne a,#0,scn22 ret

msg1:

db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h

db 80h,01h,01h,7fh,01h,01h,80h ;T db 80h,38h,44h,44h,44h,38h,80h ;o db 80h,7ch,08h,04h,04h,08h,80h ;r db 80h,20h,54h,54h,54h,78h,80h ;a db 80h,7ch,08h,04h,04h,78h,80h ;n db 80h,08h,54h,54h,54h,3ch,80h ;g db 80h,80h,80h,80h,80h,80h,80h,80h

db 80h,7fh,08h,08h,08h,7fh,80h ;H db 80h,3ch,40h,40h,20h,7ch,80h ;u db 80h,04h,3fh,44h,40h,20h,80h ;t db 80h,20h,54h,54h,54h,78h,80h ;a db 80h,7fh,08h,04h,04h,78h,80h ;h db 80h,20h,54h,54h,54h,78h,80h ;a db 80h,38h,54h,54h,54h,18h,80h ;e db 80h,20h,54h,54h,54h,78h,80h ;a db 80h,7ch,08h,04h,04h,78h,80h ;n

msg2:

db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h

db 80h,7fh,09h,09h,09h,06h,80h ;P db 80h,38h,54h,54h,54h,18h,80h ;e db 80h,7ch,08h,04h,04h,08h,80h ;r db 80h,44h,7dh,40h,80h ;i db 80h,7ch,08h,04h,04h,78h,80h ;n db 80h,08h,54h,54h,54h,3ch,80h ;g db 80h,20h,54h,54h,54h,78h,80h ;a db 80h,04h,3fh,44h,40h,20h,80h ;t db 80h,20h,54h,54h,54h,78h,80h ;a db 80h,7ch,08h,04h,04h,78h,80h ;n

db 80h

db 80h,60h,60h,80h ;. db 80h

db 80h,60h,60h,80h ;. db 80h

db 80h,60h,60h,80h ;. db 80h

db 80h,60h,60h,80h ;. db 80h

db 80h,60h,60h,80h ;. db 80h

db 80h,7fh,08h,14h,22h,41h,80h ;K db 80h,7fh,49h,49h,49h,41h,80h ;E db 80h,7fh,49h,49h,49h,36h,80h ;B db 80h,7eh,09h,09h,09h,7eh,80h ;A db 80h,7fh,08h,14h,22h,41h,80h ;K db 80h,7eh,09h,09h,09h,7eh,80h ;A db 80h,7fh,09h,19h,29h,46h,80h ;R db 80h,7eh,09h,09h,09h,7eh,80h ;A db 80h,7fh,04h,08h,10h,7fh,80h ;N

db 80h

db 80h,5fh,80h ;! db 80h


(6)

db 80h,5fh,80h ;! db 80h

db 80h,5fh,80h ;! db 80h

db 80h,5fh,80h ;! db 80h,80h,80h,80h,80h,80h,80h,80h