PROTOTIPE PINTU OTOMATIS DENGAN SISTEM PEMBACAAN KODE BAR BERBASIS MIKROKONTROLER AT89S51
MENGGUNAKAN ALARM
TUGAS AKHIR
DEDY SILAEN 042408015
PROGRAM STUDI D3 FISIKA INSTRUMENTASI DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
: PROTOTIPE PINTU OTOMATIS DENGAN SISTEM PEMBACAAN KODE BAR BERBASIS
PERNYATAAN
PROTOTIPE PINTU OTOMATIS DENGAN SISTEM PEMBACAAN KODE BAR BERBASIS MIKROKONTROLER AT89S51
MENGGUNAKAN ALARM
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing - masing disebutkan sumbernya.
Medan, Desember 2008
PENGHARGAAN
Puji dan Syukur kepada Tuhan Yang Maha Kuasa, Allah yang penuh Kasih dan Mulia, karena Kasih dan Anugerah-Nya penulis dapat menyelesaikan penulisan laporan akhir studi ini yang berjudul :
PROTOTIPE PINTU OTOMATIS DENGAN SISTEM PEMBACAAN KODE BAR BERBASIS MIKROKONTROLER AT89S51 MENGGUNAKAN ALARM
wali penulis selama penulis menjalani pendidikan di Program Studi D-3 Fisika Instrumentasi. Seluruh pegawai dan staff Pegawai Program Studi D-3 Fisika Instrumentasi yang telah banyak membantu penulis dalam penyelesaian administrasi.
Teristimewa penulis mengucapkan terimakasih kepada kedua orang tua tercinta T. Silaen dan R. Br. Sitorus serta abang (Jefry) dan adik (Martabe) yang tetap sabar dan penuh kasih sayang di dalam memperjuangkan penulis hingga sampai saat ini. Buat Novita Br. Limbong terima kasih buat kasih sayang, perhatian, dukungan dan doanya selama ini khususnya dalam penyelesaian Tugas Akhir ini. Tak lupa pula penulis ucapkan terimakasih kepada rekan-rekan FIN 2004 yang turut membantu serta memberikan motivasinya, serta tak lupa pula ucapan terimakasih kepada rekan-rekan dari berbagai pihak yang masih satu lingkungan kampus USU tercinta maupun diluar lingkungan kampus USU, dan juga rekan-rekan yang satu lingkungan kost hanya Tuhan yang dapat membalas kebaikan rekan-rekan semuanya.
Akhir kata, penulis mengucapkan terimakasih kepada semua pihak yang sudah membantu penulis dalam penyelesaian tugas akhir ini.
Medan, Desember 2008
ABSTRAK
Telah dibuat suatu prototipe untuk membuka dan menutup pintu dengan menggunakan kartu identitas yang dilengkapi kode bar sebagai pengendali utama dan menggunakan alarm. Perancangan ini dikembangkan dengan menggunakan Mikrokontroler AT89S51 sebagai tempat proses berlangsungnya data dan rancangan ini juga dilengkapi dengan sensor inframerah serta motor langkah untuk membuka dan menutup pintu.
DAFTAR ISI
1.4 Metoda Pengumpulan Data . .
1.5 Sistematika Penulisan ...
BAB 2 LANDASAN TEORI ...
2.1 Mikrokontroler AT89S51 . ..
2.1.1 Konstruksi AT89S51 ... 2.1.2 Pin-Pin pada Mikrokontroler AT89S51. .. .
2.3.1 Bentuk Barcode ... ...
2.4 Komponen-Komponen Pendukung. ... .
2.4.1 Resistor .
2.4.4 Bahasa Assembly MCS-51
2.5 Software 8051 Editor, Assembler, Simulator ... 2.6 Software Downloader ...
BAB 3 PERANCANGAN ALAT DAN PERANCANGAN PROGRAM
3.1 Perangkat Keras . . ....
3.1.1 Diagram Blok . .. ..
3.1.2 Perancangan Sensor Kode Batang .. .. . 3.1.3 Perancangan Driver Penggerak Motor Stepper
(Jembatan H) ..
3.1.4 Rangkaian Mikrokontroler AT89S51. ... 3.1.5 Rancangan Rangkaian Buzzer
3.1.6 Rangkaian Catu Daya (PSA)...
BAB 4 ANALISA RANGKAIAN DAN PROGRAM . . 4.1 Pengujian Rangkaian Power Supplay (PSA) .. 4.2 Pengujian Rangkaian Mikrokontroler AT89S51
4.3 Pengujian Rangkaian Pembaca Kode Bar ... 4.4 Pengujian Rangkaian Driver motor stepper .
4.5 Pengujian Rangkaian Saklar Batas ..
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan ..
5.2 Saran
DAFTAR PUSTAKA LAMPIRAN
57 57 57 60 62 64
DAFTAR GAMBAR
Halaman Gambar 2.1 IC Mikrokontroler AT89S51 . ... Gambar 2.2 Diagram motor langkah (stepper) .. ... Gambar 2.3 Pemberian data/pulsa pada motor stepper. ...
Gambar 2.4 Barcode jenis Code 39 ... ...
Gambar 2.5 Barcode jenis Code 128 ...
Gambar 2.6 Barcode Jenis Interleaved 2 Of 5 ... ...
Gambar 2.7 Barcode jenis UPC ...
Gambar 2.8 Barcode jenis PDF417 ...
Gambar 2.9. Resistor karbon
Gambar 2.10. Potensio meter .
Gambar 2.11. Grafik Perubahan nilai pada potensiometer... Gambar 2.12. Skema kapasitor...
Gambar 2.13. Electrolytic Capacitor (ELCO) ...
Gambar 2.14. Ceramic Capacitor...
Gambar 2.15. simbol tipe transistor ..
Gambar 2.16. Transistor sebagai Saklar ON .
Gambar 2.17. Karakteristik daerah saturasi pada transistor ... Gambar 2.18. Transistor Sebagai Saklar OFF
Gambar 2.19. 8051 Editor, Assembler, Simulator
Gambar 2.20. ISP- Flash Programmer 3.a ...
Gambar 3.1 Diagram Blok Rangkaian . ... Gambar 3.2 Rangkaian Pemancar Inframerah ... .. .. .. Gambar 3.3 Rangkaian Sensor Kode Batang ...
Gambar 3.4 Rangkaian Jembatan H .. ... Gambar 3.5 Rangkaian Mikrokontroler AT89S51
Gambar 3.6 Rangkaian Buzzer ...
Gambar 3.7 Rangkaian Power Supplay (PSA) ..
ABSTRAK
Telah dibuat suatu prototipe untuk membuka dan menutup pintu dengan menggunakan kartu identitas yang dilengkapi kode bar sebagai pengendali utama dan menggunakan alarm. Perancangan ini dikembangkan dengan menggunakan Mikrokontroler AT89S51 sebagai tempat proses berlangsungnya data dan rancangan ini juga dilengkapi dengan sensor inframerah serta motor langkah untuk membuka dan menutup pintu.
BAB 1 PENDAHULUAN
1.1 Latar Belakang
Kebutuhan manusia terhadap peralatan yang cerdas dan dapat bekerja secara otomatis semakin meningkat, sehingga peralatan-peralatan otomatis ini sedikit demi sedikit mulai menggantikan peralatan manual. Selain sistem kerjanya yang sama, peralatan otomatis dapat melakukan pekerjaannya sendiri tanpa harus dikendalikan oleh pengguna.
Untuk merancang sebuah peralatan yang cerdas dan dapat bekerja secara otomatis tesebut, dibutuhkan alat/komponen yang dapat menghitung, mengingat, dan mengambil pilihan. Kemampuan ini dimiliki oleh komputer (PC), namun tidaklah efisien jika harus menggunakan komputer hanya untuk keperluan tersebut diatas. Untuk itu komputer dapat digantikan dengan sebuah mikrokontroler. Mikrokontroler merupakan chip atau IC yang di dalamnya terdapat sebuah prosessor dan flash memori yang dapat dibaca/tulis sampai dengan 1000 kali, sehingga biaya pengembangan menjadi murah karena dapat dihapus kemudian diisi kembali dengan program lain sesuai dengan kebutuhan.
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 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 Batasan Masalah
Berdasarkan uraian diatas, penulis tertarik untuk mengangkat permasalahan tersebut kedalam Tugas Akhir dengan judul Prototipe Pintu Otomatis Dengan Sistem Pembacaan Kode Bar Berbasis Mikrokontroler AT89S51 .
Motor stepper untuk menggerakkan pintu (buka/tutup). Sensor untuk membaca kode bar pada kartu identitas.
1.3 Tujuan Penulisan
Adapun tujuan dari penulisan Tugas Akhir ini adalah sebagai berikut: 1. Memahami cara kerja dan pembacaan dari kode bar.
2. Memahami prinsip kerja Mikrokontroler AT89S51 sebagai tempat pemrosesan data dari pemancar ke penerima..
3. Merancang pintu otomatis yang dapat membaca kode bar yang terdapat pada kartu identitas pengguna.
1.4 Metoda Pengumpulan Data
Metode pengumpulan data yang dilakukan oleh perancang adalah: 1. Melakukan studi ke perpustakaan mengenai teori - teori yang berkaitan
dengan judul proyek ini.
3. Melakukan konsultasi dengan dosen pembimbing serta dosen dosen staf pengajar yang berkaitan dengan realisasi dibidang masing
masing.
4. Melalui pengujian alat.
1.5 Sistematika Penulisan
BAB I PENDAHULUAN
Meliputi latar belakang, batasan masalah, tujuan proyek, metode pengumpulan data dan sistematika penulisan.
BAB II TINJAUAN PUSTAKA
Meliputi arsitektur dan konstruksi mikrokontroler yang digunakan. Selain itu juga membahas tentang jenis sensor yang digunakan.
BAB III PERANCANGAN ALAT DAN PERANCANGAN PROGRAM
Meliputi tentang perancangan rangkaian dan program pada proyek.
BAB IV PENGUJIAN DAN PEMBAHASAN SISTEM
BAB V KESIMPULAN DAN SARAN
BAB 2
LANDASAN TEORI
2.1. Mikrokontroler AT89S51
Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, telah hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semikonduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah (dibandingkan mikroprosessor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi industri dan konsumen dengan keinginan alat-alat bantu dan mainan yang lebih canggih serta dalam bidang pendidikan.
RAM digunakan sebagai tempat penyimpanan sederhana sementara, termasuk register-register yang digunakan pada mikrokontroller yang bersangkutan.
Mikrokontroller AT89S51 merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis Mikrokontroller ini pada prinsipnya dapat digunakan untuk mengolah data per bit ataupun data 8 bit secara bersamaan.
Pada prinsipnya program pada mikrokontroller 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 mikrokontroller AT89S51 adalah sebagai berikut :
a. Satu Central Processing Unit 8 bit
b. Osilator : internal dan rangkaian pewaktu c. RAM internal 128 byte
d. Flash memori 4 Kbyte
e. Lima jalur interupsi (dua interupsi eksternal dan tiga interupsi internal) f. Empat programable port I/0 yang masing-masing terdiri dari delapan jalur
I/0
g. Port serial dengan kontrol serial full duplex UART
i. Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada frekuensi 12 MHz.
2.1.1 Konstruksi AT89S51
Mikrokontroller 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 mikrokontroller.
Memori merupakan bagian yang sangat penting pada mikrokontroller. Mikrokontroller memiliki dua macam memori yang sifatnya berbeda, yakni :
Ada berbagai jenis ROM. Untuk mikrokontroller dengan program yang sudah baku dan diproduksi secara massal, program diisikan kedalam ROM pada saat IC mikrokontroller dicetak dipabrik IC. Untuk keperluan tertentu mikrokontroller 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.
Jenis memori yang dipakai untuk memori program AT89S51 adalah flash PEROM, program untuk mengendalikan mikrokontroller 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.
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.
2.1.2. Pin-Pin pada Mikrokontroler AT89S51
Deskripsi pin-pin pada Microcontroller AT89S51 :
Gambar 2.1. IC Mikrokontroler AT89S51
VCC (Pin 40)
VCC berfungsi sebagai suplai tegangan.
GND (Pin 20)
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, 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.
Tabel Fungsi Masing-masing Pin pada Port 3 Mikrokontroler
Nama Pin Fungsi
P3.3 (pin 13) INT1 (Interupsi eksternal waktu pencacah 1) P3.4 (pin 14) T0 (Input eksternal waktu pencacah 0) P3.5 (pin 15) T1 (Input eksternal waktu pencacah 1)
P3.6 (pin 16) WR (Jalur menulis memori data eksternal) P3.7 (pin 17) RD (Jalur membaca memori data eksternal)
RST (pin 9)
Reset akan aktif dengan memberikan input high selama 2 cycle.
PSEN (pin 29)
Progam Store Enable (PSE) digunakan untuk mengakses memori progam eksternal.
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.
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.
XTAL2 (pin 18)
XTAL2 merupkan output dari osilator.
2.2. Motor Langkah (Stepper)
Motor stepper adalah perangkat elektromekanis yang bekerja dengan mengubah pulsa elektrolis menjadi gerakan mekanis diskrit. Motor langkah bergerak berdasarkan urutan pulsa yang diberikan kepada motor. Karena itu, untuk menggerakkan motor langkah diperlukan pengendali motor langkah yang membangkitkan pulsa-pulsa periodik. Sudut rotasi motor proporsional dengan pulsa masukan sehingga mudah diatur.
Motor langkah sudah umum digunakan dalam berbagai aplikasi, dipergunakan apabila dikehendaki jumlah putaran yang tepat atau diperlukan 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.
pengeboran, dalam hal ini dilakukan oleh robot yang memerlukan ketepatan posisi dalam gerakan lengannya dan lain-lain.
Pada gambar di bawah ditunjukkan dasar susunan motor langkah (stepper).
Gambar 2.2. Diagram motor langkah (stepper)
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-putar 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 ditentukan, maka rotor akan
A
D B
A C
B U
slip akan dapat dihindari. Sehingga tidak di perlukan umpan balik (feedback) pada pengendalian motor langkah.
Motor langkah yang akan digunakan 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.
Gambar 2.3. Pemberian data/pulsa pada motor stepper
Pada saat yang sama ,untuk tiap motor langkah, tidak boleh ada 2 (dua) masukan atau lebih yang mengandung pulsa sama dengan 1 (high), atau dengan kata lain, pada suatu saat hanya sebuah masukan yang bernilai 1 (satu) sedangkan lainnya bernilai 0 (nol).
2.3. Barcode
Barcode atau Kode garis-garis batangan bukan barang baru bagi kebanyakan orang. Hampir di seluruh produk buatan pabrik, bahkan kini di banyak produk rumahan, semuanya mencantumkan kode batangan ini. Kode yang terdiri dari garis-garis dengan ketebalan yang bervariasi oleh banyak kalangan
dianggap sebagai sesuatu yang mempermudah pengidentifikasian suatu barang. Barcode bermula di Amerika Serikat sekitar awal tahun 1970-an.
Kode baris digambarkan dalam bentuk baris hitam tebal dan tipis yang disusun berderet sejajar horisontal. Untuk membantu pembacaan secara manual dicantumkan juga angka-angka dibawah kode baris tersebut. Angka-angka tersebut tidak mendasari pola kode baris yang tercantum. Ukuran dari kode baris tersebut dapat diperbesar maupun diperkecil dari ukuran nominalnya tanpa tergantung dari mesin yang membaca.
2.3.1. Bentuk Barcode
Barcode memiliki dua bentuk, yaitu: 1. Barcode satu dimensi
2. Barcode dua dimensi
1. Barcode satu dimensi (1D)
Barcode satu dimensi biasanya dinamakan linear bar codes (kode berbentuk baris). Contoh barcode satu dimensi adalah sebagai berikut :
a. Code 39 (code 3 of 9)
Gambar 2.4. Barcode jenis Code 39
b. Code 128
Adalah suatu barcode alphanumerik (full ASCII) yang memiliki kerapatan (density) yang sangat tinggi dan panjang baris yang bervariasi. Barcode code 128 ideal untuk aplikasi seperti shipping and warehouse management (pangaturan maskapai pelayaran dan pengelolaan gudang).
Gambar 2.5. Barcode jenis Code 128
c. Interleaved 2 of 5
Adalah sebuah barcode yang berbentuk numerik dan memiliki panjang baris yang bervariasi. Barcode interleaved 2 of 5 dapat dipergunakan untuk aplikasi industri dan laboratorium.
d. UPC (Universal Product Code)
Adalah sebuah barcode yang berbentuk numerik dan memiliki panjang baris yang tetap (fixed). UPC digunakan untuk pelabelan pada produk-produk kecil/eceran (retail product labeling). Simbol ini dibuat untuk kemudahan pemeriksaan keaslian suatu produk. Bilangan-bilangan UPC harus diregistrasikan atau terdaftar di Uniform Code Council.
Gambar 2.7. Barcode jenis UPC
2. Barcode dua dimensi (2D)
Adalah barcode yang dikembangkan lebih dari sepuluh tahun lalu, tetapi baru sekarang ini mulai semakin populer. Barcode dua dimensi ini memiliki beberapa keuntungan dibandingkan linear bar codes (barcode satu dimensi) yaitu, dengan menggunakan barcode dua dimensi, informasi atau data yang besar dapat disimpan di dalam suatu ruang (space) yang lebih kecil. Contoh barcode dua dimensi adalah symbology PDF417 yang dapat menyimpan lebih dari 2000 karakter di dalam sebuah ruang (space) yang berukuran 4 inchi persegi (in2).
2.4. Komponen-Komponen Pendukung 2.4.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.4.1.1. Fixed Resistor
besarnya dengan ohm meter. Kode warna tersebut adalah standar menufaktur yang dikeluarkan oleh ELA (Electronic Industries Association).
Gambar 2.9. Resistor karbon
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 seterusnya berturut-turut menunjukkan besar nilai satuan, dan gelang terakhir adalah faktor penggalinya.
2.4.1.2. Variable Resistor
dll. Ada beberapa model pengaturan nilai Variable resistor, yang sering digunakan adalah dengan cara nya terbatas sampai 300 derajat putaran. Ada beberapa model variable resistor yang harus diputar berkali kali untuk mendapatkan semua nilai resistor. Model ini dinamakan Potentiometers atau Trimmer Potentiometers .
Gambar 2.10. Potensio meter
Pada saat tipe A diputar searah jarum jam, awalnya perubahan nilai resistansi lambat tetapi ketika putarannya mencapai setengah atau lebih nilai perubahannya menjadi sangat cepat. Tipe ini sangat cocok dengan karakteristik telinga manusia. 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.4.2. Kapasitor
kakinya. Di alam bebas phenomena kapasitor terjadi pada saat terkumpulnya muatan-muatan positif dan negatif diawan.
dielektrik
Elektroda Elektroda
Gambar 2.12. Skema kapasitor.
2.4.2.1 Electrolytic Capacitor (ELCO)
Gambar 2.13. Electrolytic Capacitor (ELCO)
2.4.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.14. Ceramic Capacitor
toleransinya. Untuk 3 digit pertama angka yang terakhir berfungsi untuk menentukan 10n, nilai n dapat dilihat pada tabel dibawah.
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 %
Tabel 1. Nilai Kapasitor
2.4.3. 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 :
1. Transistor germanium PNP. 2. Transistor silikon NPN. 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.
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,3 Volt. Dengan
menganalogikan transistor sebagai saklar, transistor tersebut dalam keadaan on seperti pada gambar 2.6
Gambar 2.16. Transistor sebagai Saklar ON
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
saturasi, dengan Ic mencapai maksimum.
Gambar 2.18 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,
Gambar 2.17. 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.
Gambar 2.18. Transistor Sebagai Saklar OFF
Keadaan penyumbatan terjadi apabila besar tegangan habis (VB) sama
dengan tegangan kerja transistor (VBE) sehingga arus basis (IB) = 0 maka :
hfeI
I C
B (2.6)
IC = IB. hfe . (2.7)
IC = 0 . hfe .. (2.8)
IC = 0 ..(2.9)
Hal ini menyebabkan VCEsama dengan Vcc dapat dibuktikan dengan rumus :
Vcc = Vc + VCE .. (2.10)
VCE = Vcc (Ic . Rc) .. (2.11)
VCE = Vcc .. (2.12)
2.4.4. 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 :
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.
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: ...
...
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
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 ...
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 :
INC R0 R0 = R0 + 1
...
K. Dan lain sebagainya
2.5 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 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.6 Software Downloader
Gambar 2.20. ISP- Flash Programmer 3.a
BAB 3
PERANCANGAN ALAT DAN PERANCANGAN PROGRAM
3.1 Perangkat Keras
Pada subbab ini akan dibahas perangkat perangkat keras yang digunakan pada alat ini. Perangkat perangkat keras tersebut antara lain adalah rangkaian sensor gerak, rangkaian driver motor stepper, rangkaian PSA, dan rangkaian mikrokontroler AT89S51.
3.1.1 Diagram Blok
Pada alat ini terdapat sebuah sensor kode batang. Sensor ini berfungsi untuk memeriksa kode batang yang ada pada kartu identitas pengguna pintu. Sensor ini dihubungkan dengan P2.0; P2.1; P2.2; P2.3; P2.4 dari mikrokontroler AT89S51.
Untuk membatasi pergeseran pintu, digunakan dua sakelar batas. Sakelar batas ini berfungsi untuk memberikan informasi pada mikrokontroler tentang keberadaan pintu, apakah pintu sedang tertutup atau tidak. Sakelar batas ini dihubungkan pada pin P0.6 dan P0.7 dari mikrokontroler AT89S51.
Untuk mengendalikan pergerakan motor stepper yang akan menarik pintu, digunakan sebuah rangkaian jembatan H. Rangkaian ini dihubungkan pada pin P0.0, P0.1, P0.2, dan P0.3 dari mikrokontroler AT89S51.
3.1.2 Perancangan Sensor Kode Batang
Dalam memeriksa kode batang pada kartu identitas pengguna pintu, digunakan sensor kode batang. Sensor ini menggunakan 5 buah photodioda sebagai penerima inframerah dan 5 LED inframerah sebagai pemancar inframerah.
pemancar inframerah, maka akan mengirimkan sinyal low ke mikrokontroler AT89S51. Dengan demikian mikrokontroler dapat mendeteksi sensor yang mengirimkan sinyal low dan mengambil tindakan untuk mengatur putaran motor stepper untuk membuka ataupun menutup pintu.
Rangkaian pemancar inframerah tampak seperti gambar di bawah ini:
Gambar 3.2. Rangkaian Pemancar Inframerah
Pada rangkaian di atas digunakan 1 buah LED inframerah. Resistor yang digunakan adalah 100 ohm sehingga arus yang mengalir pada LED inframerah adalah sebesar:
5 0,05 50
100 V
i A atau mA
R
Dengan besarnya arus yang mengalir ke LED inframerah, maka intensitas pancaran inframerah akan semakin kuat, yang menyebabkan jarak pantulannya akan semakin jauh.
Pantulan dari sinar inframerah akan diterima oleh photodioda, kemudian akan diolah oleh rangkaian penerima agar menghasilkan data biner, dimana jika photodioda menerima pantulan sinar inframerah maka output dari rangkaian penerima ini akan mengeluarkan logika low (0), namun jika photodioda tidak menerima pantulan sinar inframerah, maka output dari rangkaian penerima akan mengeluarkan logika high (1).
Gambar 3.3. Rangkaian Sensor Kode Batang
Sesuai dengan gambar, maka besar penguatan op-amp tergantung pada besarnya tahanan variable yang digunakan. Pada prakteknya, tahanan variable tersebut diterima pada kisaran harga 20 KOhm, sehingga besar penguatan op-amp adalah:
kali
A
KK2
1020
Sebuah photodioda memiliki nilai tahanan sekitar 15 s.d. 20 MOhm jika tidak terkena sinar inframerah, dan memiliki nilai tahanan sekitar 80 s.d. 300 KOhm jika terkena sinar inframerah, tergantung dari intensitas sinar inframerah yang diterimanya. Dengan demikian, besar tegangan yang masuk ke op-amp adalah:
Saat tidak terkena sinar inframerah:
Tegangan tersebut diumpankan pada op-amp dengan faktor penguatan 2 kali, sehingga tegangan keluarannya pada saat terkena sinar inframerah sekitar 0,12 Volt, sedangkan saat tidak terkena sinar inframerah sekitar 0,02 Volt. Namun, tegangan ini masih diumpankan lagi pada op-amp yang kedua. Dengan faktor penguatan yang sama, didapat tegangan keluaran saat terkena sinar inframerah sekitar 0,24 Volt dan saat tidak terkena inframerah sekitar 0,04 Volt. Tegangan inilah yang selanjutnya diumpankan ke basis transistor C945.
Transistor akan aktif ketika tegangan basisnya lebih besar dari 0,7 Volt. Maka, ketika basisnya mendapat tegangan sebesar 0,12 Volt (saat photodioda terkena sinar iframerah), transistor aktif. Aktifnya transistor ini akan menyebabkan mikrokontroler mendapatkan logika low dan LED indikator akan mati. Hal sebaliknya akan berlaku ketika photodioda tidak mendapatkan pantulan sinar inframerah.
3.1.3 Perancangan Driver Penggerak Motor Stepper (Jembatan H)
memberikan sinyal low atau high pada rangkaian maka perputaran motor dapat diatur. Gambar rangkaiannya ditunjukkan pada gambar berikut ini:
Vcc Vcc Vcc Vcc
Gambar 3.4. Rangkaian jembatan H
Sedangkan kolektor dari transistor C945 yang berada di sebelah kiri bawah diumpankan ke basis dari transistor tipe NPN TIP 122 sehingga basis dari transistor TIP 122 mendapatkan tegangan 0 volt yang menyebabkan transistor ini tidak aktif (transistor tipe NPN akan aktip jika tegangan pada basis lebih besar dari 0,7 volt). Karena transistor TIP 122 ini tidak aktip, maka kolektornya tidak terhubung ke emitor, sehingga kolektor tidak mendapatkan tegangan 0 volt dari ground.
Karena kolektor TIP 122 dihubungkan dengan kolektor TIP 127 yang mendapatkan tegangan 5 volt dari Vcc, maka kolektor dari TIP 122 juga mendapatkan tegangan yang sama.
Sedangkan kolektor dari transistor C945 yang berada di sebelah kiri bawah diumpankan ke basis dari transistor tipe NPN TIP 122 sehingga basis dari transistor TIP 122 mendapatkan tegangan 5 volt yang menyebabkan transistor ini menjadi aktif. Karena transistor TIP 122 ini menjadi aktif, menyebabkan kolektornya terhubung ke emitor, sehingga kolektor mendapatkan tegangan 0 volt dari ground.
Karena kolektor TIP 122 yang mendapatkan tegangan 0 volt dari ground dihubungkan dengan kolektor TIP 127, maka kolektor dari TIP 127 juga akan mendapatkan tegangan yang sama. Hal ini menyebabkan kaki motor sebelah kanan mendapatkan tegangan 0 volt (polaritas negatip).
langkah ini diulang terus-menerus, dengan memberikan tegangan secara bergantian kelilitan-lilitan yang bersebelahan, maka rotor akan berputar .
Logika perputaran rotor tersebut dapat dianalogikan secara langsung dengan data 0 atau 1 yang diberikan secara serentak terhadap semua lilitan stator motor. Untuk motor DC Stepper 4 fasa pada prinsipnya ada dua macam cara, yaitu full step dan half step.
Step ke Full Step Half Step
1 1 0 0 0 1 0 0 0
2 0 1 0 0 1 1 0 0
3 0 0 1 0 0 1 1 0
4 0 0 0 1 0 1 1 0
5 Berulang ke step 1 0 0 1 0
6 0 0 0 1
7 0 0 0 1
8 1 0 0 1
Berulang ke step 1 Tabel 3.1 Logika perputaran rotor
Berikutnya dapat diberikan lagi mulai dari step 1. Untuk Half Step, setiap kutup magnet pada rotor akan kembali mendapatkan tarikan dari medan magnet lilitan yang sama setelah Step ke 8. Berikutnya kembali mulai step 1. Dengan memberikan logika secara bergantian dan berurutan pada pin-pin input rangkaian jembatan H, maka pergerakan motor stepper dapat diatur.
3.1.4 Rangkaian Mikrokontroler AT89S51
Rangkaian ini berfungsi sebagai pusat kendali dari seluruh sistem yang ada. Kompoen utama dari rangkaian ini adalah IC mikrokontroler AT89S51. Pada IC inilah semua program diisikan, sehingga rangkaian dapat berjalan sesuai dengan yang dikehendaki.
3.1.5. Rancangan Rangkaian Buzzer
Gambar 3.6 Rangkaian Buzzer
Dari gambar rangkaian diperlihatkan bahwa, ketika pada kaki resistor 10K diberikan logika high (1), akan menyebabkan transistor C945 aktif. Aktifnya transistor ini akan membuat relay aktif dan menghidupkan buzzer. Dioda digunakan untuk melindungi rangkaian dari arus transient yang mungkin muncul dari kumparan relay.
3.1.6 Rangkaian Catu Daya (PSA)
Vreg
Gambar 3.7. Rangkaian Power Supplay (PSA)
3.2 Perangkat Lunak
Alat ini akan terus mendeteksi kode batang. Ketika kartu yang berisi kode batang dihadapkan pada sensor, maka sensor akan mengirimkan logika pada mikrokontroler yang kemudian akan diproses.
Gambar 3.8. Diagram Alir dari Program
BAB 4
ANALISA RANGKAIAN DAN PROGRAM
4.1 Pengujian Rangkaian Power Supplay (PSA)
Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt. Keluaran 5 volt digunakan untuk menghidupkan seluruh rangkaian, sedangkan keluaran 12 volt digunakan untuk menghidupkan motor stepper. Pengujian pada bagian rangkaian ini dapat dilakukan dengan mengukur tegangan keluaran melalui volt meter digital.
4.2 Pengujian Rangkaian Mikrokontroler AT89S51
Untuk mengetahui apakah rangkaian mikrokontroler AT89S51 telah bekerja dengan baik, maka dilakukan pengujian.Pengujian bagian ini dilakukan dengan memberikan program sederhana pada mikrokontroler AT89S51. Programnya adalah sebagai berikut:
Loop:
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 P3.7 selama ± 0,13 detik kemudian mematikannya selama ± 0,13 detik secara terus menerus. Perintah Setb P3.7 akan menjadikan P3.7 berlogika high yang menyebabkan transistor aktif, sehingga LED menyala. Acall tunda akan menyebabkan LED ini hidup selama beberapa saat. Perintah Clr P3.7 akan menjadikan P3.7 berlogika low yang menyebabkan transistor tidak aktif sehingga 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.
Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut: Kristal yang digunakan adalah kristal 12 MHz, sehingga 1 siklus mesin
membutuhkan waktu = 12 1
Mnemonic Siklus Waktu Eksekusi
MOV Rn,#data 2 2 x 1 d = 2 d
DJNZ 2 2 x 1 d = 2 d
RET 1 1 x 1 d = 1 d
Tunda: 2
mov r7,#255 2
Tnd: mov r6,#255
djnz r6,$255 x 2 = 510 x 255 = 130.054 = 130.058 d
djnz r7,Tnd 2
ret 1
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 photodioda dan inframerah secara bersebelahan. Ketika diletakkan benda berwarna putih dihadapannya, maka pantulan sinar inframerah 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 inframerah dan potodioda, maka pantulan inframerah tidak mengenai potodioda, hal ini menyebabkan LED indikator pada rangkaian penerima tidak menyala dan tegangan output dari rangkaian ini sebesar 4,9 volt.
Sinyal1 Bit P1.3 Sinyal Bit P1.2 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:
Acall Tunda Sjmp Loop 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 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
1. Untuk mendeteksi keberadaan benda, photodioda memanfaatkan pantulan inframerah yang diterimanya ketika di depan sensor terdapat benda. Dan sebaliknya, ketika tidak ada benda di depannnya maka photodioda tidak menerima pantulan inframerah.
2. Sistem prototipe ini menggunakan Mikrokontroler AT89S51 sebagai tempat proses data dari system yang berfungsi untuk menerima sinyal dari pemancar ke penerima serta menggerakkan motor untuk membuka dan menutup pintu.
3. Benda berwarna putih memantulkan hampir seluruh cahaya yang mengenainya, sedangkan benda berwarna hitam menyerap hampir seluruh cahaya yang mengenainya.
5.2 Saran
mempengaruhi pembacaan kode bar, sehingga disarankan untuk pengembangannya alat ini menggunakan penambahan jenis sensor yang lain untuk mendeteksi keberadaan benda.
DAFTAR PUSTAKA
Agfianto, 2002,Belajar Mikrokontroller AT89C51/52/55 Teori dan Aplikasi, Edisi Kedua, Penerbit : Gava Media, Yogyakarta.
Agfianto,2002,Teknik Antar Muka Komputer: Konsep dan Aplikasi, Edisi Pertama, Penerbit: Graha Ilmu, Yogyakarta.
Andi, 2003, PanduanPraktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89C51, Penerbit : PT Elex Media Komputindo,
Jakarta.
Malvino, Albert Paul, 2003,Prinsip prinsip Elektronika, Jilid 1&2, Edisi Pertama, Penerbit : Salemba Teknika, Jakarta.