TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar ahli madya
D.RENOL.P.SIAGIAN 052408062
DEPARTEMEN FISIKA INSTRUMENTASI
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
JuduI : PERANCANGAN PINTU OTOMATIS
MENGGUNAKAN BARCODE BERBASIS
MIKROKONTROLLER AT89S51
Kategori : TUGAS AKHIR
Nama : D. RENOL. P.SIAGIAN
Nomor Induk Mahasiswa : 052408062
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) (Drs. Tenang Ginting, MS.)
PERNYATAAN
PERANCANGAN PINTU OTOMATIS MENGGUNAKAN BARCODE 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
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala anugera dan karunianya sehingga penulis dapat menyelesaikan laporan tugas akhir ini.
ABSTRAK
Pintu otomatis yang ada saat ini akan terbuka secara otomatis jika ada orang yang akan melewatinya, dan akan menutup sendiri secara otomatis beberapa saat kemudian ketika tidak ada orang yang akan melewatinya. Pintu otomatis ini dapat dikembangkan, sehingga hanya sebagian orang saja yang dapat masuk melalui pintu tersebut. Untuk itu dibutuhkan suatu alat pengenal, yang dengan alat pengenal tersebut seseorang dapat masuk melalui pintu itu. Alat pengenal tersebut berupa sebuah kartu identitas yang didalamnya terdapat kode bar.
DAFTAR ISI
DAFTAR TABEL viii
DAFTAR GAMBAR ix
BAB. I. PENDAHULUAN 1
1.1. Latar belakang Masalah 1
1.2. Rumusan Masalah 2
1.3. Tujuan Penulisan 3
1.4. Batasan Masalah 3
1.5. Sistematika Penulisan 4
BAB. II. TINJAUAN TEORITIS
2.1. Mikrokontroller AT89S51 6
2.1.1. Kontruksi AT89S51 8
2.1.2. Pin-Pin pada Mikrokontroller AT89S51 10
2.2. Motor Langkah (Stepper) 13
2.3. Komponen-komponen Pendukung 15
2.3.1. Resistor 15
2.3.1.1 Fixed Resistor 15
2.3.1.2 Variable Resistor 17
2.3.2. Kapasitor 19
2.3.2.1 Electrolytic Capacitor (ELCO) 19
2.3.2.2 Ceramic Capacitor 21
2.3.3. Fotodioda 22
2.3.4. Transistor 24
2.3.5. Bahasa Assembly MCS-51 28
2.3.6. Software 8051 Editor, Assembler, Simulator 32
2.3.7. Software Downloader 33
BAB. III. RANCANGAN SISTEM 35
3.1. Diagram Blok Rangkaian 35
3.2. Perancangan Program 36
3.3. Perancangan Power Supplay (PSA) 38
3.4. Rangkaian Mikrokontroller 39
3.5. Rangkaian Sensor Pembaca Kode Bar 41
3.6. Rangkaian Driver Motor Stepper 44
BAB. IV. PENGUJIAN ALAT DAN PROGRAM
4.1. Pengujian Rangkaian Power Supplay (PSA) 48 4.2. Pengujian Rangkaian Mikrokontroller AT89S51 48
4.3. Pengujian Rangkaian Pembaca Kode Bar 51
4.4. Pengujian Rangkaian Driver Motor Stepper 53
4.4. Pengujian Rangkaian Saklar Batas 55
BAB. V. KESIMPULAN DAN SARAN 56
5.1. Kesimpulan 56
5.2. Saran 56
DAFTAR TABEL
Tabel 2.1. Nilai Gelang Resistor 16
DAFTAR GAMBAR
Gambar 2.1. IC Mikrokontroller AT89S51 10
Gambar 2.2. Diagram Motor Langkah (Stepper) 13
Gambar 2.3. Pemberian Data/Pulsa Pada Motor Stepper 14
Gambar 2.4. Resistor Karbon 16
Gambar 2.5. Potensiometer 18
Gambar 2.6. Grafik Perubahan Nilai Pada Potensiometer 18
Gambar 2.7. Skema Kapasitor 19
Gambar 2.8. Electrolytic Capacitor (ELCO) 20
Gambar 2.9. Ceramic Capacitor 21
Gambar 2.10. Fotodioda 24
Gambar 2.11. Simbol Tipe Transistor 25
Gambar 2.12. Transistor Sebagai Sakelar ON 26
Gambar 2.13. Karakteristik Daerah Saturasi Pada Transistor 27
Gambar 2.14. Transistor Sebagai Sakalar OFF 27
Gambar 2.15. 8051 Editor, Assembler, Simulator 32
Gambar 2.16. ISP-Flash Programmer 3.a 33
Gambar 3.1. Diagram Blok Rangkaian 35
Gambar 3.2. Rangkaian Power Supplay (PSA) 38
Gambar 3.3. Rangkaian Mikrokontroller AT89S51 39
Gambar 3.4. Rangkaian Pemancar Infra Merah 41
Gambar 3.5. Rangkaian Penerima Sinar Infra Merah 42
Gambar 3.6. Rangkaian Driver Motor Stepper 45
ABSTRAK
Pintu otomatis yang ada saat ini akan terbuka secara otomatis jika ada orang yang akan melewatinya, dan akan menutup sendiri secara otomatis beberapa saat kemudian ketika tidak ada orang yang akan melewatinya. Pintu otomatis ini dapat dikembangkan, sehingga hanya sebagian orang saja yang dapat masuk melalui pintu tersebut. Untuk itu dibutuhkan suatu alat pengenal, yang dengan alat pengenal tersebut seseorang dapat masuk melalui pintu itu. Alat pengenal tersebut berupa sebuah kartu identitas yang didalamnya terdapat kode bar.
BAB I
PENDAHULUAN
1.1. Latar Belakang Masalah
Kebutuhan manusia terhadap peralatan yang cerdas dan dapat bekerja secara otomatis semakin meningkat, sehingga peralatan-peralatan otomatis ini sedikit demi sedikit mulai mulai menggantikan peralatan manual. Selain sistem kerjanya yang sama, peralatan otomatis dapat melakukan pekerjaannya sendiri tanpa harus dikendalikan oleh pengguna.
Salah satu alat otomatis yang sering digunakan adalah pintu otomatis, dimana pintu ini akan terbuka secara otomatis jika ada orang yang akan melewatinya, dan akan menutup sendiri secara otomatis beberapa saat kemudian ketika tidak ada orang yang akan melewatinya. Pintu otomatis ini dapat dikembangkan, sehingga hanya sebagian orang saja yang dapat masuk melalui pintu tersebut. Untuk itu dibutuhkan suatu alat pengenal, yang dengan alat pengenal tersebut seseorang dapat masuk melalui pintu itu. Alat pengenal tersebut berupa sebuah kartu identitas yang didalamnya terdapat kode bar.
Atas dasar pemikiran di atas, akan dirancang sebuah pintu otomatis yang dapat membaca/mengenali kode bar dari kartu identitas tersebut. Sehingga hanya orang-orang yang memiliki kartu identitas dengan kode bar yang sesuai yang dapat memasuki pintu tersebut.
1.2. Rumusan Masalah
Berdasarkan uraian diatas, penulis tertarik untuk mengangkat permasalahan tersebut kedalam bentuk skripsi sebagai Tugas Akhir dengan judul “PERANCANGAN PINTU OTOMATIS MENGGUNAKAN BARCODE BERBASIS MIKROKONTROLLER AT89S51”.
Motor stepper untuk menggerakkan pintu (buka/tutup). Sensor untuk membaca kode bar pada kartu identitas.
1.3 Tujuan Penulisan
Tujuan dilakukan Tugas Akhir ini adalah sebagai berikut:
1. Sebagai salah satu syarat untuk menyelesaikan program studi D III Fisika Instrumentasi FMIPA USU.
2. Memahami cara kerja dan pembacaan dari sebuah kode bar.
3. Memanfaatkan mikrokontroler sebagai pusat kendali dari sebuah sistem yang cerdas.
4. Membuat sebuah pintu otomatis yang dapat membaca kode bar yang terdapat pada kartu identitas pengguna.
1.4 Batasan Masalah
1. Kode bar akan dirancang sendiri dengan ukuran yang cukup besar sekitar 1 cm per kode, sehingga memudahkan sensor untuk membacanya.
2. Kode bar yang digunakan hanya terdiri dari 6 kode, dengan warna hitam sebagai kode 1 dan warna putih sebagai kode 0.
1.5 Sistematika Penulisan
Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip kerja pintu otomatis dengan menggunakan kode bar berbasis miktokontroler AT89S51, maka penulis menulis laporan 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. 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 mengaktipkan rangkaian, penjelasan mengenai program yang diisikan ke mikrokontroler AT89S51.
BAB V. KESIMPULAN DAN SARAN
BAB II
TINJAUAN TEORITIS
2.1. Mikrokontroller AT89S51
Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer, 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 canggih serta dalam bidang pendidikan.
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 :
9 Sebuah Central Processing Unit 8 bit. 9 Osilator : internal dan rangkaian pewaktu. 9 RAM internal 128 byte.
9 Flash memori 4 Kbyte.
9 Lima buah jalur interupsi (dua buah interupsi eksternal dan tiga buah interupsi
internal).
9 Empat buah programable port I/0 yang masing-masing terdiri dari delapan
buah jalur I/0.
9 Sebuah port serial dengan kontrol serial full duplex UART.
9 Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika.
9 Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada
2.1.1 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 AT89C4051 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. Microcontroller memiliki dua macam memori yang sifatnya berbeda :
a. 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.
b. 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.
Eraseable Programble 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 Microcontroller diisikan ke memori itu lewat bantuan alat yang dinamakan sebagai AT89S51 flash PEROM Programmer.
Memori data yang disediakan dalam chip AT89S51 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.
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.2 Pin-Pin pada Mikrokontroller AT89S51
Deskripsi pin-pin pada Microcontroller AT89S51 :
Gambar 2.1. IC Mikrokontroler AT89S51 VCC (Pin 40)
VCC berfungsi sebagai suplai tegangan. GND (Pin 20)
GND berfungsi sebagai ground. Port 0 (Pin 39-Pin 32)
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, por ini akan mempunyai internal pull up. Pada saat flash progamming diperlukan eksternal pull up, terutamapada 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 berikut :
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. 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 (PSE) 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)
XTA1 merupakan input untuk clock internal. XTAL2 (pin 18)
2.1. Motor Langkah (Stepper)
Motor langkah (stepper) banyak digunakan dalam berbagai aplikasi, dipergunakan apabila dikehendaki jumlah putaran yang tepat atau di perlukan sebagian dari putaran motor. Suatu contoh dapat di jumpai pada disk drive, untuk proses pembacaan dan/atau penulisan data ke/dari cakram(disk), head baca-tulis ditempatkan pada tempat yang tepat di atas jalur atau track pada cakram, untuk head tersebut di hubungkan dengan sebuah motor langkah.
Aplikasi penggunaan motor langkah dapat juga di jumpai dalam bidang industri atau untuk jenis motor langkah kecil dapat di gunakan dalam perancangan suatu alat mekatronik atau robot. Motor langkah berukuran besar digunakan, misalnya, dalam proses pengeboran logam yang menghendaki ketepatan posisi pengeboran, dalam hal ini di lakukan oleh sebuah robot yang memerlukan ketepatan posisi dalam gerakan lengannya dan lain-lain.
Pada gambar di bawah ditunjukkan dasar susunan sebuah motor langkah (stepper).
U
S
A D B
C A
B
Magnet permanen N-S berputar kearah medan magnet yang aktif. Apabila kumparan stator dialiri arus sedemikian rupa, maka akan timbul medan magnet dan rotor akan berputar mengikuti medan magnet tersebut.setiap pengalihan arus ke kumparan berikutnya menyebabkan medan magnet berputar berputar menurut suatu sudut tertentu, biasanya informasi besar sudut putar tertulis pada badan motor langkah yang bersangkutan. Jumlah keseluruhan pengalihan menentukan sudut perputaran motor.Jika pengalihan arus di tentukan, maka rotor akan berhenti pada posisi terakhir. Jika kecepatan pengalihan tidak terlalu tinggi, maka slip akan dapat dihindari. Sehingga tidak di perlukan umpan balik (feedback) pada pengendalian motor langkah.
Motor langkah yang akan di gunakan memiliki 4 fase (pole atau kutub), pengiriman pulsa dari mikrokontroler ke rangkaian motor langkah dilakukan secara bergantian, masing-masing 4 data (sesuai dengan jumlah phase-nya), sebagian di tunjukkan pada gambar di bawah ini.
C D A B
Gambar 2.3. Pemberian data/pulsa pada motor stepper
2.2. Komponen-Komponen Pendukung 2.2.1. Resistor
Resistor komponen pasif elektronika yang berfungsi untuk membatasi arus listrik yang mengalir. Berdasarkan kelasnya resistor dibagi menjadi 2 yaitu : Fixed Resistor dan Variable R esistor Dan umumnya terbuat dari carbon film atau metal film, tetapi tidak menutup kemungkinan untuk dibuat dari material yang lain.
Pada dasarnya semua bahan memiliki sifat resistif namun beberapa bahan tembaga perak emas dan bahan metal umumnya memiliki resistansi yang sangat kecil. Bahan–bahan tersebut menghantar arus listrik dengan baik, sehingga dinamakan konduktor. Kebalikan dari bahan yang konduktif, bahan material seperti karet, gelas, karbon memiliki resistansi yang lebih besar menahan aliran elektron dan disebut sebagai insulator.
2.2.1.1. Fixed Resistor
Gambar 2.4. Resistor Karbon
Tabel 2.2. Nilai Gelang Resistor
WARNA GELANG I GELANG II GELANG III GELANG
IV
Hitam 0 0 1 -
Coklat 1 1 10 -
Merah 2 2 100 -
Jingga 3 3 1000 -
Kuning 4 4 10000 -
Hijau 5 5 100000 -
Biru 6 6 1000000 -
Violet 7 7 10000000 -
Abu-abu 8 8 100000000 -
Putih 9 9 1000000000 -
Emas - - 0,1 5%
Perak - - 0,01 10%
Resitansi dibaca dari warna gelang yang paling depan ke arah gelang toleransi berwarna coklat, emas, atau perak. Biasanya warna gelang toleransi ini berada pada bahan resistor yang paling pojok atau juga dengan lebar yang lebih menonjol, sedangkan warna gelang yang keempat agak sedikit ke dalam. Dengan demikian pemakai sudah langsung mengetahui berapa toleransi dari resitor tersebut. Kalau anda telah bisa menentukan mana gelang pertama selanjutnya adalah membaca nilai resistansinya.
Biasanya resistor dengan toleransi 5%, 10% atau 20% memiliki gelang (tidak termasuk gelang toleransi). Tetapi resistor dengan toleransi 1% atau 2% (toleransi kecil) memiliki 4 gelang (tidak termasuk gelang toleransi). Gelang pertama dan kedua berturut-turut menunjukkan besar nilai satuan, gelang ketiga adalah faktor penggalinya, dan gelang terakhir menyatakan toleransinya.
2.2.1.2. Variable Resistor
diputar berkali – kali untuk mendapatkan semua nilai resistor. Model ini dinamakan “Potentiometers” atau “Trimmer Potentiometers”.
Gambar 2.5. Potensiometer
Pada gambar 2.5. di atas untuk bentuk 3 biasanya digunakan untuk volume kontrol. Bentuk yang ke 2 merupakan semi fixed resistor dan biasanya di pasang pada PCB (Printed Circuit Board). Sedangkan bentuk 1 dpotentiometers. Ada 3 tipe didalam perubahan nilai dari resistor variabel, perubahan tersebut dapat dilihat pada gambar 2.6.
Gambar 2.6. Grafik Perubahan nilai pada Potensiometer
Karena telinga sangat peka ketika membedakan suara dengan volume yang lemah, tetapi tidak terlalu sensitif untuk membedakan perubahan suara yang keras. Biasanya tipe A ini juga disebut sebagai “Audio Taper” potensiometer. Untuk tipe B perubahan resistansinya adalah linier dan cocok digunakan untuk Aplikasi Balance Control,
resistance value adjustment in circuit, dll. Sedangkan untuk tipe C perubahan
resistansinya kebalikan dati tipe A.
2.2.2. Kapasitor
Kapasitor adalah komponen elektronika yang dapat menyimpan muatan listrik. Struktur sebuah kapasitor terbuat dari 2 buah plat metal yang dipisahkan oleh suatu bahan dielektrik. Bahan-bahan dielektrik yang umum dikenal misalnya udara vakum, keramik, gelas dan lain-lain. Jika kedua ujung plat metal diberi tegangan listrik, maka muatan-muatan positif akan mengumpul pada salah satu kaki elektroda metalnya dan pada saat yang sama muatan-muatan negatif terkumpul pada ujung metal yang satu lagi. Muatan positif tidak dapat mengalir menuju ujung kutup negatif dan sebaliknya muatan negatif tidak bisa menuju ke ujung kutup positif karena terpisah oleh bahan elektrik yang non-konduktif. Muatan elektrik ini “tersimpan” selama tidak ada konduktif pada ujung- ujung kakinya. Di alam bebas phenomena kapasitor terjadi pada saat terkumpulnya muatan-muatan positif dan negatif diawan.
dielektrik
Elektroda Elektroda
Kapasitor merupakan komponen pasif elektronika yang sering dipakai didalam merancang suatu sistem yang berfungsi untuk mengeblok arus DC, Filter, dan penyimpan energi listrik. Didalamnya 2 buah pelat elektroda yang saling berhadapan dan dipisahkan oleh sebuah insulator. Sedangkan bahan yang digunakan sebagai
insulator dinamakan dielektrik. Ketika kapasitor diberikan tegangan DC maka energi
listrik disimpan pada tiap elektrodanya. Selama kapasitor melakukan pengisian, arus mengalir. Aliran arus tersebut akan berhenti bila kapasitor telah penuh. Yang membedakan tiap - tiap kapasitor adalah dielektriknya. Berikut ini adalah jenis– jenis kapasitor yang dipergunakan dalam perancangan ini.
2.3.2.1. Electrolytic Capacitor (ELCO)
Gambar 2.8. Electrolytic Capacitor (ELCO)
digunakan pada rangkaian frekuensi tinggi. Biasanya tegangan kerja dari kapasitor dihitung dengan cara mengalikan tegangan catu daya dengan 2. Misalnya kapasitor akan diberikan catu daya dengan tegangan 5 Volt, berarti kapasitor yang dipilih harus memiliki tegangan kerja minimum 2 x 5 = 10 Volt.
2.3.2.2. Ceramic Capacitor
Kapasitor menggunakan bahan titanium acid barium untuk dielektriknya. Karena tidak dikonstruksi seperti koil maka komponen ini dapat digunakan pada rangkaian frekuensi tinggi. Biasanya digunakan untuk melewatkan sinyal frekuensi tinggi menuju ke ground. Kapasitor ini tidak baik digunakan untuk rangkaian analog, karena dapat mengubah bentuk sinyal. Jenis ini tidak mempunyai polaritas dan hanya tersedia dengan nilai kapasitor yang sangat kecil dibandingkan dengan kedua kapasitor diatas.
Gambar 2.9. Ceramic Capacitor
dan digit terakhir berupa huruf yang menyatakan toleransinya. Untuk 3 digit pertama angka yang terakhir berfungsi untuk menentukan 10n, nilai n dapat dilihat pada tabel dibawah.
Tabel 2.3. Nilai Kapasitor
3rd Digit Multiplier Letter Tolerance
0 1 D 0.5 pF
1 10 F 1 %
2 100 G 2 %
3 1,000 H 3 %
4 10,000 J 5 %
5 100,000 K 10 %
6,7 Not Used M 20 %
8 .01 P +100, -0 %
9 1 Z +80, -20 %
Misalnya suatu kapasitor pada badannya tertulis kode 474J, berarti nilai kapasitansinya adalah 47 + 104 = 470.000 pF = 0.47µF sedangkan toleransinya 5%. Yang harus diingat didalam mencari nilai kapasitor adalah satuannya dalam pF (Pico
Farad).
2.2.3.
Fotodioda
Fotodioda adalah piranti semikonduktor yang mengandung sambungan p-n, dan biasanya terdapat lapisan intrinsik antara lapisan n dan p. Piranti yang memiliki lapisan intrinsik disebut p-i-n atau PIN fotodioda. Cahaya diserap di daerah penggambungan atau daerah intrinsik menimbulkan pasangan elektron-hole, kebanyakan pasangan tersebut menghasilkan arus yang berasal dari cahaya.
Fotodioda dapat dioperasikan dalam 2 mode yang berbeda:
1. Mode fotovoltaik: seperti solar sel, penyerapan pada fotodioda menghasilkan tegangan yang dapat diukur. Bagaimanapun, tegangan yang dihasilkan dari tenaga cahaya ini sedikit tidak linier, dan range perubahannya sangat kecil. 2. mode fotokonduktivitas : disini, fotodioda diaplikasikan sebagai tegangan
revers (tegangan balik) dari sebuah dioda (yaitu tegangan pada arah tersebut pada dioda tidak akan menhantarkan tanpa terkena cahaya) dan pengukuran menghasilkan arus foto. ( hal ini juga bagus untuk mengaplikasikan tegangan mendekati nol). Ketergantungan arus foto pada kekuatan cahaya dapat sangat linier .
Karakteristik bahan fotodioda:
1. silikon (Si) : arus lemah saat gelap, kecepatan tinggi, sensitivitas yang bagus antara 400 nm sampai 1000 nm ( terbaik antara 800 sampai 900 nm).
3. Indium Gallium Arsenida (InGaAs): mahal, arus kecil saat gelap, kecepatan tinggi sensitivitas baik pada jarak 800 sampai 1700nm (terbaik antara 1300 sampai 1600nm).
Gambar 2.10. Fotodioda
2.2.4. Transistor
Transistor adalah komponen elektronika yang mempunyai tiga buah terminal. Terminal itu disebut emitor, basis, dan kolektor. Transistor seakan-akan dibentuk dari penggabungan dua buah dioda. Dioda satu dengan yang lain saling digabungkan dengan cara menyambungkan salah satu sisi dioda yang senama. Dengan cara penggabungan seperti dapat diperoleh dua buah dioda sehingga menghasilkan transistor NPN.
Bahan mentah yang digunakan untuk menghasilkan bahan N dan bahan P adalah silikon dan germanium. Oleh karena itu, dikatakan :
3. Transistor silikon PNP. 4. Transistor germanium NPN.
Semua komponen di dalam rangkaian transistor dengan simbol. Anak panah yang terdapat di dalam simbol menunjukkan arah yang melalui transistor.
PNP E B
C
NPN E B
C
Gambar 2.11. Simbol tipe transistor Keterangan :
C = kolektor E = emiter B = basis
Didalam pemakaiannya transistor dipakai sebagai komponen saklar (switching) dengan memanfaatkan daerah penjenuhan (saturasi) dan daerah penyumbatan (cut off) yang ada pada karakteristik transistor.
Pada daerah penjenuhan nilai resistansi persambungan kolektor emiter secara ideal sama dengan nol atau kolektor dan emiter terhubung langsung (short). Keadaan ini menyebabkan tegangan kolektor emiter (VCE) = 0 Volt pada keadaan ideal, tetapi
pada kenyataannya VCE bernilai 0 sampai 0,7 Volt. Dengan menganalogikan transistor
Vcc Vcc
Saturasi pada transistor terjadi apabila arus pada kolektor menjadi maksimum dan untuk mencari besar arus basis agar transistor saturi adalah :
Rc
Hubungan antara tegangan basis (VB) dan arus basis (IB) adalah :
B
Jika tegangan VB telah mencapai BE B
Gambar 2.13. dibawah ini menunjukkan apa yang dimaksud dengan VCE (sat)
adalah harga VCE pada beberapa titik dibawah knee dengan posisi tepatnya ditentukan
pada lembar data. Biasanya VCE (sat) hanya beberapa perpuluhan volt, walaupun pada
arus kolektor sangat besar bisa melebihi 1 volt. Bagian dibawah knee pada gambar 2.13. dikenal sebagai daerah saturasi.
IC
Gambar 2.13. Karakteristik daerah saturasi pada transistor
Pada daerah penyumbatan,nilai resistansi persambungan kolektor emiter secara ideal sama dengan tak terhitung atau terminal kolektor dan emiter terbuka (open).
Keadaan ini menyebabkan tegangan (VCB) sama dengan tegangan sumber
(Vcc). Tetapi pada kenyataannya Vcc pada saat ini kurang dari Vcc karena terdapat arus bocor dari kolektor ke emiter. Dengan menganalogikan transistor sebagai saklar, transistor tersebut dalam keadaan off seperti gambar dibawah ini.
Vcc Vcc
Keadaan penyumbatan terjadi apabila besar tegangan habis (VB) sama dengan
tegangan kerja transistor (VBE) sehingga arus basis (IB) = 0 maka :
hfe I
IB = C ………(2.6)
IC = IB . hfe ….………(2.7)
IC = 0 . hfe ………..………(2.8)
IC = 0 ………..(2.9)
Hal ini menyebabkan VCE sama dengan Vcc dapat dibuktikan dengan rumus :
Vcc = Vc + VCE …………..………(2.10)
VCE = Vcc – (Ic . Rc) …..………(2.11)
VCE = Vcc …..………(2.12)
2.2.5. Bahasa Assembly MCS-51
Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89C4051 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa ini hanya ada 51 instruksi, antara lain yaitu :
A. 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
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.
B. 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.
C. Instruksi ACALL
Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh :
...
ACALL TUNDA
TUNDA:
...
D. Instruksi RET
Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin pemanggil setelah instruksi ACALL dilaksanakan. Contoh :
ACALL TUNDA
...
TUNDA:
...
RET
E. Instruksi JMP (Jump)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh :
Loop:
...
...
JMP Loop
F. 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
G. 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
...
H. 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..
I. 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
J. 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
...
K. Dan lain sebagainya
2.3.6. Software 8051 Editor, Assembler, Simulator
Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah editor, yaitu 8051 Editor, Assembler, Simulator. Tampilannya seperti di bawah ini.
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.3.7. 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
BAB III
RANCANGAN SISTEM
4. Diagram Blok Rangkaian
Diagram blok merupakan gambaran dasar dari rangkaian sistem yang akan dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram blok dari sistem yang dirancang adalah seperti yang diperlihatkan pada gambar 3.1. berikut ini:
Driver Motor Stepper
Motor Stepper
Mikrokontroler AT89S51
Rangkaian Pembaca Kode Bar
Saklar batas Buka pintu
keypad
Saklar batas tutup Pintu
1. Rangkaian pembaca kode bar berfungsi untuk membaca kode bar dari kartu. 2. Saklar batas buka pintu berfungsi untuk memberikan sinyal kepada
mikrokontroler jika pintu telah terbuka lebar.
3. Saklar batas tutup pintu berfungsi untuk memberitahukan kepada mikrokontroler ketika pintu sudah tertutup rapat.
4. Mikrokontroler AT89S51 berfungsi untuk mengendalikan semua sistem yang ada.
5. Motor stepper berfungsi untuk menggerakkan pintu (membuka/menutup pintu).
6. Keypad berfungsi untuk input password.
3.2. Perancangan Program
Batas_Buka Bit P3.0 Batas_Tutup Bit P3.1 Nilai_ID1 Equ 11010101b Nilai_ID2 Equ 11110100b
Mov P1,#0h
Utama:
Mov P0,#0h Mov a,P2
Cjne a,#Nilai_ID1,Utama Sjmp Benar
Utama1:
Stp:
3.3. Perancangan Power Supplay (PSA)
Rangkaian ini berfungsi untuk mensupplay 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, sedangkan keluaran 12 volt digunakan untuk mensuplay tegangan ke motor stepper. Rangkaian power supplay ditunjukkan pada gambar 3.2 berikut ini :
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. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda penyearah.
5V
3.4. Rangkaian Mikrokontroler AT89S51
Rangkaian mikrokontroler ini berfungsi sebagai pusat kendali dari seluruh rangkaian yang ada pada alat ini. Gambar rangkaian mikrokontroler AT89S51 ditunjukkan pada gambar 3.3. berikut ini :
Mikrokontroler ini memiliki 32 port I/O, yaitu port 0, port 1, port 2 dan 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 positip dan sebuah resistor 10 Kohm yang dihubungkan ke ground. Kedua komponen ini berfungsi agar programpada mikrokontroler dijalankan beberapa saat setelah power aktip. Lamanya waktu antara aktipnya power pada IC mikrokontroler dan aktipnya program adalah sebesar perkalian antara kapasitor dan resistor tersebut. Jika dihitung maka lama waktunya adalah :
10 10 1 det
t=R x C= KΩ x µF = m ik
Jadi 1 mili detik setelah power aktip pada IC kemudian program aktip.
3.5. Rangkaian Sensor Pembaca Kode Bar
Kode bar yang digunakan terdiri dari 8 bit data, dimana masing – masing bit akan dibaca oleh sebuah potodioda. Untuk pemancarnya digunakan sebuah LED infra merah. Sensor ini memanfaatkan pantulan dari pemancar infra merah yang diterima oleh potodioda. Rangkaian pemancar infra merah ditunjukkan pada gambar 3.4. berikut ini:
100 ohm VCC
5V
Infra Merah
Gambar 3.4. Rangkaian Pemancar infra merah
Pada rangkaian di atas digunakan sebuah LED infra merah yang diserikan dengan sebuah resistor 100 ohm. Resistor yang digunakan adalah 100 ohm sehingga arus yang mengalir pada masing-masing LED infra merah adalah sebesar:
5
0, 05 50
100
V
i A atau mA
R
= = =
Pantulan dari sinar infra merah akan diterima oleh potodioda, kemudian akan diolah oleh rangkaian penerima agar menghasilkan data biner, dimana jika potodioda menerima pantulan sinar infra merah maka output dari rangkaian penerima ini akan mengeluarkan logika low (0), namun jika potodioda tidak menerima pantulan sinar infra merah, maka output dari rangkaian penerima akan mengeluarkan logika high (1). Rangkaian penerima infra merah seperti gambar di bawah ini:
VCC
Gambar 3.5. Rangkaian Penerima sinar infra merah
Potodioda memiliki hambatan sekitar 15 s/d 20 Mohm jika tidak terkena sinar infra merah, dan hambatannya akan berubah menjadi sekitar 80 s/d 300 Kohm jika terkena sinar infra merah tergantung dari besarnya intensitas yang mengenainya. Semakin besar intensitasnya, maka hambatannya semakin kecil.
a. Jika tidak ada sinar infra merah yang mengenai potodioda, maka hambatan pada potodioda 15 Mohm, sehingga:
2 330.000
Vout akan diumpankan be basis dari transistor C828, karena tegangannya hanya 0,107 Volt maka transistor tidak aktip.
b. Jika ada sinar infra merah yang mengenai potodioda, maka hambatan pada potodioda 300 Kohm, sehingga:
2 330.000
Vout akan diumpankan ke basis dari transistor C828, karena tegangannya lebih besar dari 0,7 volt yaitu 2,619 Volt maka transistor akan aktip.
Aktipnya transistor C828 akan menyebabkan colektornya terhubung ke emitor, sehingga colektor mandapat tegangan 0 volt dari ground, tegangan ini diumpankan ke basis dari transistor ke-2 tipe PNP A733, sehingga transistor ini juga aktip. Seterusnya aktipnya transistor A733 akan menyebabkan colektornya terhubung ke emitor, sehingga colektor mandapat tegangan 5 volt dari Vcc, tegangan ini diumpankan ke basis dari transistor ke-3 tipe NPN C945, sehingga transistor ini juga aktip.
ini mengirimkan sinyal, yang berarti bahwa sensor ini telah berada dekan dengan penghalang atau dinding.
Transistor ke-4 tipe PNP A733 berfungsi untuk menyalakan LED sebagai indikator bahwa sensor ini menerima pantulan sinar infra merah dari pemancar. LED ini akan menyala jika sensor menerima sinar infra merah, dan akan mati jika sensor tidak menerima sinar infra merah.
Pada alat ini terdapat 8 buah rangkaian pemancar dan penerima infra merah, dimana masing – masing rangkaian akan membaca 1 bit kode bar. Jika kode bar berwarna hitam, maka sinyal yang dihasilkan adalah 1 dan jika kode bar berwarna putih, maka sinyal yang dihasilkan adalah 0. Sinyal ini kemudian dikirimkan ke mikrokontroler untuk kemudian diolah dan dibandingkan datanya dengan nilai kode bar yang benar.
3.6. Rangkaian Driver Motor Stepper
VCC
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 15 volt dari Vcc.
menimbulkan medan magnet. Medan magnet inilah yang akan menarik 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.
3.7. Perancangan Rangkaian Saklar Batas
Ketika mikrokontroler memerintahkan motor untuk membuka pintu gerbang, mikrokontroler tidak mengetahui apakah pintu gerbang sudah terbuka lebar atau belum. Hal yang sama juga terjadi ketika mikrokontroler memerintahkan motor untuk menutup pintu gerbang, mikrokontroler tidak mengetahui apakah pintu gerbang sudah tertutup rapat atau belum. Karena itu dibutuhkan sebuah saklar batas yang dapat mengetahui kedua keadaan tersebut.
Gambar 3.7. Rangkaian Saklar batas untuk Buka Pintu
Ketika saklar batas dalam keadaan terbuka, kondisi outputnya adalah high. Namun jika pintu gerbang menyentuh saklar, maka outputnya akan terhubung ke ground, yang menyebabkan kondisi outputnya akan berubah dari high (1), menjadi low (0). Perubahan kondisi pada outputnya inilah yang dikenali oleh mikrokontroler sebagai tanda bahwa pintu gerbang telah terbuka lebar, maka mikrokontroler akan memerintahkan motor stepper untuk berhenti berputar, sehingga pintu gerbang tidak terbuka lebih lebar lagi.
BAB IV
PENGUJIAN ALAT DAN PROGRAM
4.1 Pengujian Rangkaian Power Supplay (PSA)
Pengujian pada bagian rangkaian power supplay ini dapat dilakukan dengan mengukur tegangan keluaran dari rangkaian ini dengan menggunakan volt meter digital. Dari hasil pengujian diperoleh tegangan keluaran sebesar + 5,1 volt. Tegangan ini dipergunakan untuk mensupplay tegangan ke seluruh rangkaian. Mikrokontroler AT89S51 dapat bekerja pada tegangan 4,0 sampai dengan 5,5 volt, sehingga tegangan 5,1 volt ini cukup untuk mensupplay tegangan ke mikrokontroler AT89S51. Tegangan keluaran kedua sebesar 13,7 volt. Tegangan ini digunakan untuk mensupplay tegangan ke motor stepper.
4.2 Pengujian Rangkaian Mikrokontroller AT89S51
Loop:
Setb P3.7
Acall tunda
Clr P3.7
Acall tunda
Sjmp Loop
Tunda:
Mov r7,#255
Tnd: Mov r6,#255
Djnz r6,$
Djnz r7,tnd
Ret
Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut : Kristal yang digunakan adalah kristal 12 MHz, sehingga 1 siklus mesin
membutuhkan waktu =
MHz
12 1
= 0,833 mikrodetik.
Mnemonic Siklus Waktu Eksekusi
MOV Rn,#data 2 2 x 0,833 µd = 1,666 µd
DJNZ 2 2 x 0,833 µd = 1,666 µd
RET 1 1 x 0,833 µd = 0,833 µd
Tunda:
mov r7,#255 Tnd: mov r6,#255
djnz r6,$
djnz r7,Tnd
ret
Jadi waktu yang dibutuhkan untuk mengerjakan program di atas adalah 130.058 µdetik atau 0,130058 detik dan dapat dibulatkan menjadi 0,13 detik.
4.3 Pengujian Rangkaian Pembaca Kode Bar
Pengujian pada rangkaian pembaca kode bar ini dapat dilakukan dengan cara menghubungkan rangkaian ini dengan sumber tegangan 5 volt, kemudian meletakkan potodioda dan infra merah secara bersebelahan. Ketika diletakkan benda berwarna putih dihadapannya, maka pantulan sinar infra merah akan mengenai potodioda, sehingga menyebabkan LED indikator pada rangkaian penerima akan menyala, dan tegangan output rangkaian sebesar 0,09 volt. Namun ketika diletakkan benda berwarna hitam di depan infra merah dan potodioda, maka pantulan infra merah tidak mengenai potodioda, hal ini menyebabkan LED indikator pada rangkaian penerima tidak menyala dan tegangan output dari rangkaian ini sebesar 4,9 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 rangkaian pembaca kode bar, maka mikrokontroler harus diprogram untuk untuk dapat mengecek sinyal apa yang dikirimkan oleh sensor. Jika sinyal yang dikirimkan adalah sinyal high (1), berarti benda dihadapannay berwarna hitam, namun jika sinyal yang dikirimkan adalah sinyal low, maka ini berarti benda di hadapannay berwarna putih. Program untuk mendeteksi pengiriman sinyal dari rangkaian pembaca kode warna ini adalah ini adalah :
Cek_Sinyal1:
Jb sinyal1,Cek_Sinyal2 Clr P3.7
. . .
Cek_Sinyal2:
Jb sinyal2,Cek_Sinyal1 Setb P3.7
. . .
4.4. Pengujian Rangkaian Driver Motor Stepper
Pengujian pada rangkaian driver motor stepper ini dilakukan dengan menghubungkan input rangkaian driver motor stepper ini dengan rangakaian mikrokontroler AT89S51 dan menghubungkan output dari rangkaian driver motor stepper ini dengan motor stepper, kemudian memberikan program sebagai berikut: Loop:
Clr P0.3
Setb P0.0
Acall Tunda
Clr P0.0
Setb P0.1
Acall Tunda
Clr P0.1
Setb P0.2
Acall Tunda
Clr P0.2
Setb P0.3
Acall Tunda
Sjmp Loop
Tunda:
Tnd:
Mov R6,#255
Djnz r6,$
Djnz r7,Tnd
Ret
Program di atas akan memberikan logika high secara bergantian pada input dari driver motor stepper, dimana input dari jembatan masing-masing dihubungkan ke P0.0,P0.1, P0.2 dan P0.3. Dengan program di atas maka motor akan bergerak searah dengan arah putaran jarum jam (menutup pintu). Untuk memutar dengan arah sebaliknya, maka diberikan program sebagai berikut :
Loop:
Clr P0.0
Setb P0.3
Acall Tunda
Clr P0.0
Setb P0.3
Acall Tunda
Clr P0.2
Setb P0.1
Acall Tunda
Clr P0.1
Setb P0.0
Acall Tunda
Tunda:
Mov R7,#50
Tnd:
Mov R6,#255
Djnz r6,$
Djnz r7,Tnd
Ret
Dengan program di atas, maka motor akan berputar berlawanan arah dengan arah putaran jarum jam (membuka pintu). Tunda digunakan untuk mengatur kecepatan putar dari motor. Semakin besar nilai yang diberikan pada tunda, maka perputaran motor akan semakin lambat, dan sebaliknya.
4.5. Pengujian Rangkaian Saklar Batas
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dari hasil pelaksanaan perancangan alat hingga pengujian dan pembahasan sistem maka penulis dapat menarik kesimpulan, antara lain:
a. Sensor (photodioda) yang digunakan dalam penelitian ini peka terhadap sinar matahari, sehingga tidak dapat terkena sinar matahari secara langsung.
b. Jarak pancar infra merah disetting seminimal mungkin agar photodioda yang berada di sampingnya tidak menangkap sinyal dari infra merah yang disampingnya.
5.2 Saran
Setelah melakukan penelitian ini diperoleh beberapa hal yang dapat dijadikan saran untuk dapat melakukan penelitian lebih lanjut, yaitu:
a. Untuk di masa yang akan datang, agar alat ini dapat lebih ditingkatkan dan dikembangkan, yang dilengkapi dengan sensor pembaca barcode yang lebih canggih.
Agfianto, Teknik Antarmuka Komputer: Konsep dan Aplikasi, Edisi Pertama, Penerbit: Graha Ilmu, Yogyakarta, 2002.
Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Kedua, Penerbit: Gava Media, Yogyakarta, 2004
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.