Prototipe Pintu Otomatis Dengan Sistem Pembacaan Kode Bar Berbasis Mikrokontroler AT89S51 Menggunakan Alarm

(1)

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

MEDAN 2008


(2)

PERSETUJUAN

Judul Kategori Nama

Nomor Induk Mahasiswa Program Studi

Departemen Fakultas

: PROTOTIPE PINTU OTOMATIS DENGAN SISTEM PEMBACAAN KODE BAR BERBASIS

MIKROKONTROLER AT89S51 MENGGUNAKAN ALARM

: TUGAS AKHIR : DEDY SILAEN : 042408015

: DIPLOMA 3 (D3) FISIKA INSTRUMENTASI : FISIKA

: MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, Desember 2008 Komisi Pembimbing :

Diketahui

Departemen Fisika FMIPA USU Ketua,

Drs. Syahrul Humaidi, MSc NIP 132 050 870

Pembimbing,

Drs. Syahrul Humaidi, MSc NIP 132 050 870


(3)

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

Dedy Silaen 042408015


(4)

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 Dalam penyusunan laporan akhir studi ini, penulis telah banyak mengalami kendala dan kesulitan, tetapi berkat kemauan keras penulis dan juga dorongan dari berbagai pihak akhirnya penulis dapat juga menyelesaikan laporan akhir studi ini. Pada kesempatan istimewa ini penulis mengucapkan terimakasih yang sebesar-besarnya kepada Bapak Dr. Edy Marlianto, M.Sc selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam (FMIPA). Bapak Sutarman selaku Pembantu Dekan I Fakultas Matematika dan Ilmu Pengetahuan Alam (FMIPA).Bapak Agus Salim selaku Pembantu Dekan III Fakultas Matematika dan Ilmu Pengetahuan Alam (FMIPA). Bapak Drs. Syahrul Humaidi, M.Sc Ketua Program Studi D-3 Fisika Instrumentasi dan selaku dosen pembimbing penulis yang telah banyak memberikan masukan kepada penulis selama penyelesaian Tugas Akhir ini. Kepada Bapak Tua Raja Simbolon, Ssi.MSi selaku dosen pembimbing penulis selama penulis melakukan penulisan laporan akhir studi ini


(5)

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.

Penulis menyadari bahwa tugas akhir ini masih jauh dari kesempurnaan, oleh karena itu semua masukan maupun kritik yang bersifat membangun sangat diharapkan dari para pembaca sek. Harapan penulis semoga tugas akhir ini bermanfaat bagi semua pihak yang membaca..


(6)

Akhir kata, penulis mengucapkan terimakasih kepada semua pihak yang sudah membantu penulis dalam penyelesaian tugas akhir ini.

Medan, Desember 2008


(7)

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.

Rangkaian sensor inframerah akan membaca kode bar kemudian membandingkannya dengan data yang terprogram pada IC Mikrokontroler AT89S51 dan mengaktifkan motor langkah untuk membuka pintu. Objektif utama dalam perancangan ini adalah Mikrokontroler.


(8)

DAFTAR ISI

Halaman

Persetujuan . .... .... ...

Pernyataan. . . ...

Penghargaan .. ... . .. . ...

Abstrak ...

Daftar Isi

Daftar Gambar ..

BAB 1 PENDAHULUAN.. ...

1.1 Latar Belakang .

1.2 Batasan Masalah ...

1.3 Tujuan Penulisan .. .. .. .. ..

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.2 Motor Langkah (Stepper) . .. . ....

ii iii iv vii viii x 1 1 2 3 3 4 6 6 8 11 14


(9)

2.3.1 Bentuk Barcode ... ...

2.4 Komponen-Komponen Pendukung. ... .

2.4.1 Resistor .

2.4.1.1 Fixed Resistor 2.4.1.2 Variable Resistor 2.4.2 Kapasitor

2.4.2.1 Electrolytic Capacitor (ELCO) 2.4.2.2 Ceramic Capacitor

2.4.3 Transistor

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

3.1 Perangkat Lunak . . ....

17 20 20 20 22 24 26 27 29 33 38 39 41 41 41 42 46 51 53 53 55


(10)

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 65 65 65


(11)

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

11 15 16 18 18 18 19 19 21 23 23 25 26 27 29 30 32 32 38 40


(12)

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

41 43 44 47 51 53 54


(13)

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.

Rangkaian sensor inframerah akan membaca kode bar kemudian membandingkannya dengan data yang terprogram pada IC Mikrokontroler AT89S51 dan mengaktifkan motor langkah untuk membuka pintu. Objektif utama dalam perancangan ini adalah Mikrokontroler.


(14)

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.


(15)

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 .

Pada alat ini akan digunakan mikrokontroler AT89S51, motor stepper dan beberapa LED inframerah serta photodioda sebagai sensor. Mikrokontroler AT89S51 sebagai otak dari sistem, yang berfungsi mengendalikan seluruh sistem.


(16)

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.

2. Mengumpulkan dan membaca data sheet mengenai komponen yang digunakan.


(17)

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

Meliputi uraian tentang cara menguji dan pembahasan cara kerja robot.


(18)

BAB V KESIMPULAN DAN SARAN

Mengenai kesimpulan yang didapat setelah merakit proyek ini dan saran yang diberikan demi kesempurnaan dan pengembangan proyek ini pada masa yang akan datang kearah yang lebih baik.


(19)

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.

Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka, dan lain sebagainya), Mikrokontroller 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 kontrol disimpan dalam ROM yang ukurannya relatif lebih besar, sedangkan


(20)

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


(21)

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 :

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 terhapus begitu IC kehilangan catu daya, dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data.


(22)

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.

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


(23)

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


(24)

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)


(25)

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.0 (pin 10) RXD (untuk menerima data port serial) P3.1 (pin 11) TXD (untuk mengirim data port serial) P3.2 (pin 12) INTO (Interupsi eksternal waktu pencacah 0)


(26)

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.


(27)

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.

Aplikasi penggunaan motor langkah dapat juga dijumpai 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


(28)

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


(29)

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

C D A B


(30)

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)

Adalah sebuah barcode alphanumerik (full ASCII) yang memiliki panjang baris yang bervariasi. Aplikasi barcode jenis code 39 adalah untuk inventory, asset tracking dan digunakan pada tanda pengenal identitas.


(31)

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.


(32)

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


(33)

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

Resistor adalah komponen dasar elektronika yang digunakan untuk membatasi jumlah arus yang mengalir dalam satu rangkaian. Sesuai dengan namanya resistor bersifat resistif dan umumnya terbuat dari bahan karbon. Tipe resistor yang umum berbentuk tabung porselen kecil dengan dua kaki tembaga dikiri dan kanan. Pada badannya terdapat lingkaran membentuk gelang kode warna untuk memudahkan pemakai mengenali besar resistansi tanpa mengukur


(34)

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%


(35)

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

Untuk kelas resistor yang kedua ini terdapat 2 tipe. Untuk tipe pertama dinamakan variable resistor dan nilainya dapat diubah sesuai keinginan dengan mudah dan sering digunakan untuk pengaturan volume, bass, balance, dll. Sedangkan yang kedua adalah semi-fixed resistor. Nilai dari resistor ini biasanya hanya diubah pada kondisi tertentu saja. Contoh penggunaan dari semi-fixed resistor adalah tegangan referensi yang digunakan untuk ADC, fine tune circuit,


(36)

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 gambar 2.10 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 potentiometers. Ada 3 tipe di dalam perubahan nilai dari resistor variabel, perubahan tersebut dapat dilihat pada gambar 2.11.


(37)

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

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


(38)

kakinya. Di alam bebas phenomena kapasitor terjadi pada saat terkumpulnya muatan-muatan positif dan negatif diawan.

dielektrik

Elektroda Elektroda

Gambar 2.12. Skema kapasitor.

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.


(39)

2.4.2.1 Electrolytic Capacitor (ELCO)

Gambar 2.13. Electrolytic Capacitor (ELCO)

Elektroda dari kapasitor ini terbuat dari alumunium yang menggunakan membrane oksidasi yang tipis. Karakteristik utama dari Electrolytic Capacitor adalah perbedaan polaritas pada kedua kakinya. Dari karakteristik tersebut kita harus berhati- hati di dalam pemasangannya pada rangkaian, jangan sampai terbalik. Bila polaritasnya terbalik maka akan menjadi rusak bahkan meledak . Biasanya jenis kapasitor ini digunakan pada rangkaian power supply. Kapasitor ini tidak bisa 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.


(40)

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

Untuk mencari nilai dari kapasitor biasanya dilakukan dengan melihat angka/kode yang tertera pada badan kapasitor tersebut. Untuk kapasitor jenis elektrolit memang mudah, karena nilai kapasitansinya telah tertera dengan jelas pada tubuhnya. Sedangkan untuk kapasitor keramik dan beberapa jenis yang lain nilainya dikodekan. Biasanya kode tersebut terdiri dari 4 digit, dimana 3 digit


(41)

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

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


(42)

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.

C B

E

C B

E


(43)

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

Saklar On Vcc

Vcc

IC R

RB VB

IB VBE


(44)

Saturasi pada transistor terjadi apabila arus pada kolektor menjadi maksimum dan untuk mencari besar arus basis agar transistor saturi adalah :

Rc Vcc

Imax .. .(2.1)

Rc Vcc I.

hfe B  . .(2.2)

Rc . hfeVcc

IB .(2.3)

Hubungan antara tegangan basis (VB) dan arus basis (IB) adalah : B

BE B

B V RV

I   (2.4)

VB= IB. RB+ VBE .(2.5)

BE B

B Vcchfe..RcR V

V   ..(2.5)

Jika tegangan VB telah mencapai VBVcchfe..RcRB  VBE, maka transistor akan

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,

walaupun pada arus kolektor sangat besar bisa melebihi 1 volt. Bagian dibawah knee pada gambar 2.18 dikenal sebagai daerah saturasi.


(45)

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

Titik Sumbat (Cut off) IB> IB (sat)

IB= IB (sat) IB Penjenuhan (saturation) IC Rc Vcc

IB= 0 VCE

Saklar Off Vcc

Vcc

IC R

RB VB

IB VBE


(46)

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 :


(47)

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

...

DJNZ R0,Loop ...


(48)

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


(49)

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


(50)

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 :


(51)

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.


(52)

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

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


(53)

Gambar 2.20. 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.


(54)

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

Secara garis besar, diagram blok dari rangkaian pintu otomatis ini ditunjukkan pada gambar 3.1. berikut ini:


(55)

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.

Setiap pantulan inframerah yang diterima oleh photodioda akan diolah dan dijadikan data digital, sehingga bila photodioda mendapatkan pantulan dari


(56)

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

  


(57)

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

Rangkaian ini menggunakan IC LM 358 sebagai penguat tegangan yang dihasilkan photodioda. IC ini memiliki dua penguat operasional (op-amp). Pada rangkaian ini, kedua op-amp tersebut digunakan. Sehingga sinyal dari photo dioda mengalami dua kali penguatan.


(58)

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

KK

2

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:

V V

K

M K

Vo20 4747 5 0,01

Saat terkena sinar inframerah:

6 , 0 5 47

30047  

V

K

K K


(59)

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)

Rangkaian untuk mengendalikan perputaran motor stepper pada alat ini adalah sebuah rangkaian yang dikenal dengan jembatan H. Jembatan H ini terdiri dari 4 buah transistor, dimana 2 buah transistor bertipe NPN dan 2 buah transistor lagi bertipe PNP. Ke-4 transistor ini dirangkai sedemikian rupa sehingga dengan


(60)

memberikan sinyal low atau high pada rangkaian maka perputaran motor dapat diatur. Gambar rangkaiannya ditunjukkan pada gambar berikut ini:

Vcc Vcc Vcc Vcc

Motor 330 Ohm 330 Ohm 330 Ohm 330 Ohm TIP127 TIP127 C945 TIP122 TIP122 C945 C945 C945 1 K

1 K 1 K

1 K 18 Ohm

18 Ohm 18 Ohm 18 Ohm

P0.0 P0.1

Gambar 3.4. Rangkaian jembatan H

Pada rangkaian di atas, jika P0.0 diset high yang berarti P0.0 mendapat tegangan 5 volt, maka kedua transistor tipe NPN C945 yang disebelah kiri akan aktip. Hal ini akan membuat kolektor dari kedua transistor C945 itu 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). Aktifnya transistor PNP TIP 127 ini akan mengakibatkan kolektornya terhubung ke emitor sehingga kolektor mendapatkan tegangan 5 volt dari Vcc.


(61)

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.

Pada rangkaian di atas, jika P0.1 diset low yang berarti P0.1 mendapat tegangan 0 volt, maka kedua transistor tipe NPN C945 yang disebelah kanan tidak akan aktif. Hal ini akan membuat kolektor dari kedua transistor C945 itu akan mendapat tegangan 5 volt dari Vcc. Kolektor dari transistor C945 yang berada di sebelah kanan atas diumpankan ke basis dari transistor tipe PNP TIP 127 sehingga basis dari transistor TIP 127 mendapatkan tegangan 5 volt yang menyebabkan transistor ini tidak aktif. Akibat transistor PNP TIP 127 tidak aktip maka kolektornya tidak terhubung ke emitor sehingga kolektor tidak mendapatkan tegangan 5 volt dari Vcc, tetapi mendapatkan tegangan yang berasal dari transistor TIP 122 yang berada di bawahnya.


(62)

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

Prinsip tersebut digunakan pada saat menghidupkan motor stepper. Prinsip kerja dari motor stepper yaitu pembangkitan medan magnet untuk memperoleh gaya tarik ataupun gaya lawan dengan menggunakan catu tegangan DC pada lilitan/ kumparannya. Bila kumparan mendapatkan logika 1 maka akan dibangkitkan kutub magnet yang berlawanan dengan kutub magnet tetap pada rotor. Sehingga posisi kutub magnet rotor akan ditarik mendekati lilitan yang menghasilkan kutub magnet berlawanan tadi. Bila langkah berikutnya lilitan yang bersebelahan diberi tegangan, sedangkan catu tegangan lilitan sebelumnya dilepas, maka kutub magnet tetap pada rotor itu akan berpindah posisi menuju kutub magnet lilitan yang dihasilkan. Berarti telah terjadi gerakan 1 step. Bila


(63)

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

Pada Full Step, suatu titik pada sebuah kutub magnet dirotor akan kembali mendapat tarikan medan magnet stator pada lilitan yang sama setelah step ke 4.


(64)

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.

Gambar 3.5 Rangkaian mikrokontroler AT89S51 5V VCC 10uF 5V VCC 2 1 30pF 30pF

XTAL 12 MHz

AT89S51 P0.3 (AD3) P0.0 (AD0) P0.1 (AD1) P0.2 (AD2) Vcc P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.4 (AD4) P0.5 (AD5) P0.6 (AD6) P0.7 (AD7) RST EA/VPP P3.0 (RXD) P3.1 (TXD) P3.2 (INT0) P3.3 (INT1) P3.4 (T0) ALE/PROG PSEN P2.7 (A15) P2.6 (A14) P2.5 (A13) P2.4 (A12) P2.3 (A11) P2.2 (A10) P2.1 (A9) P3.6 (WR) P3.5 (T1) P3.7 (RD) XTAL2 XTAL1 GND P2.0 (A8)

1 2 3 4 5 6 7 8 40 39 38 37 36 35 34 33 9 10 11 12 13 14 15 32 31 30 29 28 27 26 16 17 18 19 20 25 24 23 22 21 4.7k2SA733 5V VCC LED1


(65)

Pin 31 External Access Enable (EA) diset high (H). Ini dilakukan karena mikrokontroler AT89S51 tidak menggunakan memori eskternal. Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan kapasitor 30 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroler AT89S51 dalam mengeksekusi setiap perintah dalam program. Pin 9 merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroler ini. Pin 32 sampai 39 adalah Port 0 yang merupakan saluran atau bus I/O 8 bit open kolektor dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Pin 1 sampai 8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3. Pin 17 yang merupakan P3.7 dihubungkan dengan transistor dan sebuah LED. Ini dilakukan hanya untuk menguji apakah rangkaian minimum mikrokontroler AT89S51 sudah bekerja atau belum. Dengan memberikan program sederhana pada mikrokontroler tersebut, dapat diketahui apakah rangkaian minimum tersebut sudah bekerja dengan baik atau tidak. Jika LED yang terhubung ke Pin 17 sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum tersebut telah siap digunakan. Pin 20 merupakan ground dan dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supplay.


(66)

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)

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


(67)

Vreg LM7805CT

IN OUT TIP32C

100ohm

100uF

330ohm 220V 50Hz 0Deg

TS_PQ4_12

2200uF 1uF 1N5392GP

1N5392GP

12 Volt 5 Volt

Gambar 3.7. 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 memberikan 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 dioda.


(68)

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.

Program diawali dengan pengecekan sensor kode batang. Apabila logika yang dihasilkan pada sensor sama dengan logika yang tersimpan dalam memori mikrokontroler, maka pintu akan membuka. Apabila ternyata logika yang dihasilkan oleh sensor ternyata tidak sama dengan logika yang ada pada mikrokontroler, maka pintu akan tetap tertutup.


(69)

Gambar 3.8. Diagram Alir dari Program

Setelah pintu terbuka dengan sempurna, mikrokontroler kemudian melakukan penundaan waktu beberapa saat. Kemudian, akan segera mengirimkan logika pada jembatan H untuk memerintahkan motor agar menutup pintu. Setelah pintu tertutup dengan sempurna, program akan diulangi dari awal kembali.


(70)

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:

Setb P3.7 Acall tunda


(71)

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


(72)

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.

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


(73)

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.

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 dihadapanya berwarna hitam, namun jika sinyal yang dikirimkan adalah sinyal low, maka ini berarti benda di hadapannaya berwarna putih. Program untuk mendeteksi pengiriman sinyal dari rangkaian pembaca kode warna ini,


(74)

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

. . . .

Di awal program dibuat inisialisasi port, dimana rutin ini menunjukkan bahwa sinyal1 dihubungkan ke P1.3 dan sinyal2 dihubungkan ke P1.2. Kemudian program akan dilanjutkan dengan rutin cek sinyal1. Pada rutin ini program akan melihat kondisi P1.3 yang dihubungkan ke sinyal1, dengan menggunakan perintah JB (jump if bit), jika kondisi P1.3 bit (high), yang berarti benda di hadapan rangkaian pembaca adalah berwarna hitam., maka program akan lompat ke rutin cek sinyal2. Namun jika kondisi P1.3 notbit (low), maka program akan melanjutkan ke rutin Clr P3.7. Perintah ini akan menyebabkan LED yang terhubung ke P3.7 mati. Jika rangkaian telah berjalan sesuai dengan program yang diberikan, maka rangkaian telah bekerja dengan baik.


(75)

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:


(76)

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


(77)

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

Pengujian pada rangkaian ini dilakukan dengan cara menekan saklar batas. Pada saat saklar batas tidak ditekan, maka tegangan output dari rangkaian ini sebesar 5 volt. Namun saat saklar batas ditekan, maka tegangan output dari rangkaian ini sebesar 0 volt. Dengan demikian maka rangkaian ini telah berfungsi dengan baik.


(78)

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


(79)

mempengaruhi pembacaan kode bar, sehingga disarankan untuk pengembangannya alat ini menggunakan penambahan jenis sensor yang lain untuk mendeteksi keberadaan benda.

2. Rangkaian sistem ini masih berupa prototipe, untuk itu hendaknya lebih dikembangkan ke alat yang sebenarnya, agar dapat langsung diaplikasikan.


(80)

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.

Suhata,2004,Aplikasi Mikrokontroler sebagai Pengendali Peralatan Elektonik via Line Telepon, Penerbit PT Elex Media Komputindo, Jakarta.


(81)

(1)

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


(2)

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

Pengujian pada rangkaian ini dilakukan dengan cara menekan saklar batas. Pada saat saklar batas tidak ditekan, maka tegangan output dari rangkaian ini sebesar 5 volt. Namun saat saklar batas ditekan, maka tegangan output dari rangkaian ini sebesar 0 volt. Dengan demikian maka rangkaian ini telah berfungsi dengan baik.


(3)

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.


(4)

mempengaruhi pembacaan kode bar, sehingga disarankan untuk pengembangannya alat ini menggunakan penambahan jenis sensor yang lain untuk mendeteksi keberadaan benda.

2. Rangkaian sistem ini masih berupa prototipe, untuk itu hendaknya lebih dikembangkan ke alat yang sebenarnya, agar dapat langsung diaplikasikan.


(5)

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.

Suhata,2004,Aplikasi Mikrokontroler sebagai Pengendali Peralatan Elektonik via Line Telepon, Penerbit PT Elex Media Komputindo, Jakarta.


(6)