Perancangan Dan Pembuatan Sistem Parkir Otomatis Menggunakan Koin Berbasis Mirokontroler AT89S52 Secara Software

(1)

PERANCANGAN DAN PEMBUATAN SISTEM PARKIR

OTOMATIS MENGGUNAKAN KOIN BERBASIS

MIROKONTROLER AT89S52 SECARA SOFTWARE

TUGAS AKHIR

JUHENDRA SIREGAR

072408018

PROGRAM STUDI D3 FISIKA INSTRUMENTASI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN

ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN


(2)

PERANCANGAN DAN PEMBUATAN SISTEM PARKIR

OTOMATIS MENGGUNAKAN KOIN BERBASIS

MIROKONTROLER AT89S52 SECARA SOFTWARE

TUGAS AKHIR

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli Madya

PROGRAM STUDI D3 FISIKA INSTRUMENTASI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN

ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN


(3)

Judul : PERANCANGAN DAN PEMBUATAN SISTEM PARKIR OTOMATIS MENGGUNAKAN KOIN BERBASIS MIKROKONTROLLER AT89S52 SECARA SOFTWARE

Kategori : TUGAS AKHIR

Nama : JUHENDRA SIREGAR

Nomor Induk Mahasiswa : 072408018

Program Studi : DIPLOMA 3 (D3) FISIKA INSTRUMENTASI

Departemen : FISIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN

ALAM (MIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan,

Komisi Pembimbing :

Ketua Program Studi,

D3 Fisika Instrumentasi Pembimbing,

(Drs.Syarul Humaidi, M.Sc)

NIP.196505171993031009 NIP.195812231988111001 (Drs. Ansharudin)


(4)

PERANCANGAN DAN PEMBUATAN SISTEM PARKIR

OTOMATIS MENGGUNAKAN KOIN BERBASIS

MIKROKONTROLER AT89S52 SECARA SOFTWARE

TUGAS AKHIR

Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa hal kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan,

JUHENDRA SIREGAR 072408018


(5)

Puji dan syukur penulis panjatkan kepada ALLAH Swt Yang Maha Pengasih dan Maha Penyayang, atas Kasih Karunia-NYA yang melimpah penulis dapat menyelesaikan Tugas Akhir ini sesuai dengan waktu yang telah ditetapkan.

Ucapan terimakasih penulis sampaikan kepada berbagai pihak yang telah banyak membantu penulis dalam penyelesaian tugas ini yaitu kepada:

1. Bapak Dr.Eddy Marlianto, M.Sc, selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam.

2. Bapak Drs.Syarul Humaidi, M.sc, selaku Ketua Jurusan Program Studi Fisika Instrumentasi Fakultas Matematika dan ILmu Pengetahuan Alam. 3. Ibu Drs.Justinon, MSi, selaku Sekretaris Jurusan Program Studi Fisika

Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan Alam. 4. Bapak Drs.Ansharuddin selaku Dosen pembimbing Tugas Akhir. 5. Staff dan pegawai di Fakultas Matematika dan Ilmu Pengetahuan Alam. 6. Teristimewa kepada kedua orangtua penulis Ayahanda dan Ibunda yang

telah banyak membantu melalui Doa, dan moril maupun materil. Tidak ada yang boleh penulis berikan selain doa. Semoga ALLAH memberikan kesehatan dan rezeki makin bertambah-tambah. Kepada Kakak saya yang tak henti-hentinya memberi perhatian, motivasi, dan dukungan Doa. Serta kepada Adik saya tetap semangat ya, semoga cita-citanya tercapai.

7. Buat teman-teman saya satu kontrakan aseng selaku teman Tugas Akhir saya,Feri,Tuya dan teman seperjuangan di Fisika Instrumentasi,mantan-mantan saya yang telah memberi motivasi saya untuk semangat belajar.


(6)

Penulis menyadari dalam pembuatan tugas akhir ini masih jauh dari kesempurnaan, untuk itu penulis mengharapkan kritik dan saran dari pembaca yang bersifat membangun dalam penyempurnaan tugas akhir ini.

Akhir kata penulis mengucapkan banyak terimakasih kepada semua pihak yang telah turut serta membantu dalam menyelesaiakan tugas akhir ini.

Medan, Juli 2010

Juhendra Siregar NIM : 072408018


(7)

ABSTRAK

Sistem Parkir Otomatis menggunakan Koin merupakan suatu sistem Otomatisasi yang diterapkan pada system parkir baik yang ad d mall maupun perkantoran berfungsi untuk suatu sistem kerja otomatis yang dapat bekerja sendiri,cepat,teliti tanpa harus dibantu oleh manusia dalam mengerjakan proses sistem parkiran mulai dari pemasukan koin sampai mobil keluar area parkiran.Dimana alat ini dilengkapiberbagai indicator agar pengguna parkiran mengetahui informasi jika yang mendukung syarat untuk memasuki area parkiran.Aplikasi ini hanyalah sebuah simulasi yang menggambarkan sebuah aplikasi untuk sistem parkir yang dapat bergerak secara otomatis.

Sistem parkir otomatis ini mempunyai enam bagian umum yaitu sensor warna yang akan menyeleksi warna koin,sensor halangan yang akan mengetahui mobil masuk,mobil keluar,motor stepper yang akan berputar untuk membuka dan menutup palang pintu masuk,pintu keluar pengerak wadah koin,pengerak batas koin pada sensor warna,limit switch yang akan menyeleksi berat koin dan sebagai instruksi untuk mengetahui ada koin atau tidak dan pusat pengolah data yaitu mikrokontroler AT89S52 serta indicator-indikator yang digunakan (LCD 2x16,Sirine).Mikrokontroler inilah yang dapat central processing baik dalam membaca data sensor maupun dalam mengaktifkan indicator dan motor stepper.Tujuan tugas akhir ini adalah merancang dan mengimplementasikan sistem parkir otomatis menggunakan berbasis mikrokontroler AT89S52.


(8)

DAFTAR ISI

Halaman

Persetujuan ... i

Pernyataan ... ii

Penghargaan ... iii

Abstrak ... v

Daftar Isi ... vi

Daftar Tabel ... viii

Daftar Gambar ... ix

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah ... 1

1.2 Tujuan Penulisan ... 3

1.3 Batasan Masalah ... 3

1.4 Sistematika Penulisan ... 4

BAB 2 LANDASAN TEORI 2.1 Perangkat Keras ... 6

2.1.1 Pengenalan Mikrokontroller AT89S52 ... 6

2.1.2 Kontruksi AT89S52 ... 7

2.1.3 Sensor Warna LDR...10

2.1.4 Photodioda ... 12

2.1.5 LED Inframerah...14

2.1.6 Motor Stepper ... 18

2.1.7 Liquid Crystal Display(LCD)...20

2.1.8 Relay...22

2.2 Perangkat Lunak...23

2.2.1 Instruksi Transfer Data...24

2.2.2 instruksi Aritmatika………..24

2.2.3 Instruksi Logika………25

2.2.4 Intruksi Transfer Kendali……….26


(9)

2.2.6 Software Downloader(ISP-Flash Programmer3.0a)……28

BAB 3 PERANCANGAN SISTEM 3.1 Perancangan Alat ... 30

3.1.1 Diagram Blok ... 30

3.1.2 Perancangan Warna LDR ... 33

3.1.3 Rangkaian Mikrokontroler AT89S52 ... 34

3.1.4 Rangkaian Catudaya (PSA) ... 36

3.1.5 Perancangan Sensor inframerah………..37

3.1.6 Perancangan Driver Penggerak Motor Stepper…………41

3.1.7Rangkaian Relay...43

3.1.8Perancangan Rangkaian Saklar Batas...44

3.1.9 Display LCD Character 2x16...45

3.2 Kerja Alat Keseluruhan ... …48

BAB 4 PENGUJIAN RANGKAIAN DAN ANALISA 4.1 Pengujian Rangkaian ... 89

4.1.1 Pengujian Rangkaian Mikrokontroler AT89S52 ... 89

4.1.2 Pengujian Rangkaian sensor Inframerah ... 91

4.1.3 Pengujian Rangkaian Driver Motor Stepper ... 92

4.1.4 Pengujian Rangkaian PSA ... 94

4.1.5 Pengujian Rangkaian Sirine... 95

4.1.6 Pengujian Rangkaian Saklar Batas...95

4.1.7 Pengujian LCD...96

BAB 5 KESIMPULAN DAN SARAN 5.1 Kesimpulan ... ..99

5.2 Saran……….100 Daftar Pustaka


(10)

DAFTAR TABEL


(11)

DAFTAR GAMBAR

Gambar 2.1 Konfigurasi Pin AT89S52...7

Gambar 2.2 LDR (Light Dependent Resistor)...10

Gambar 2.3 Photodioda dan simbolnya...13

Gambar 2.4 Gambar Led Inframerah...15

Gambar 2.5 Diagram Motor Langkah (Stepper)...19

Gambar 2.6 Pemberian Data/Pulsa Pada Motor Stepper...20

Gambar 2.7 Diagram Blok Tampilan Kristal Cair (LCD)...21

Gambar 2.8 Relay...22

Gambar 3.1. Diagram blok Sistem Parkir Otomatis………...30

Gambar 3.2 Skematik Sensor Warna...33

Gambar 3.3 Rangkaian Minimum Mikrokontroller AT89S52...35

Gambar 3.4 Rangkaian Power Supply (PSA)...36

Gambar 3.5 Rangkaian Pemancar Inframerah...38

Gambar 3.6 Rangkaian Penerima Sinar Inframerah...39

Gambar 3.7 IC ULN 2803 Dan Driver Motor Stepper...42

Gambar 3.8 Rangkaian Relay Pengendali Sirine...43

Gambar 3.9 Rangkaian Saklar Batas...44

Gambar 3.10 LCD Character 2 x 16...45

Gambar 4.1 Pengujian Rangkaian Mikrokontroller AT89S52...89

Gambar 4.2 Rangkaian Sensor Inframerah...91

Gambar 4.3 Rangkaian Driver Motor Stepper...92

Gambar 4.4 Rangkaian PSA...94

Gambar 4.5 Interfacing LCD 2x16 dengan mikrokontroler AT89S52...96


(12)

ABSTRAK

Sistem Parkir Otomatis menggunakan Koin merupakan suatu sistem Otomatisasi yang diterapkan pada system parkir baik yang ad d mall maupun perkantoran berfungsi untuk suatu sistem kerja otomatis yang dapat bekerja sendiri,cepat,teliti tanpa harus dibantu oleh manusia dalam mengerjakan proses sistem parkiran mulai dari pemasukan koin sampai mobil keluar area parkiran.Dimana alat ini dilengkapiberbagai indicator agar pengguna parkiran mengetahui informasi jika yang mendukung syarat untuk memasuki area parkiran.Aplikasi ini hanyalah sebuah simulasi yang menggambarkan sebuah aplikasi untuk sistem parkir yang dapat bergerak secara otomatis.

Sistem parkir otomatis ini mempunyai enam bagian umum yaitu sensor warna yang akan menyeleksi warna koin,sensor halangan yang akan mengetahui mobil masuk,mobil keluar,motor stepper yang akan berputar untuk membuka dan menutup palang pintu masuk,pintu keluar pengerak wadah koin,pengerak batas koin pada sensor warna,limit switch yang akan menyeleksi berat koin dan sebagai instruksi untuk mengetahui ada koin atau tidak dan pusat pengolah data yaitu mikrokontroler AT89S52 serta indicator-indikator yang digunakan (LCD 2x16,Sirine).Mikrokontroler inilah yang dapat central processing baik dalam membaca data sensor maupun dalam mengaktifkan indicator dan motor stepper.Tujuan tugas akhir ini adalah merancang dan mengimplementasikan sistem parkir otomatis menggunakan berbasis mikrokontroler AT89S52.


(13)

BAB 1

PENDAHULUAN

1.1 Latar Belakang Masalah

Perkembangan teknologi instrumentasi elektronika sekarang mengalami perkembangan yang sangat pesat, sudah banyak dikenal dan bukan sesuatu hal yang asing lagi. Manusia membutuhkan bantuan dari sesuatu yang dapat bekerja cepat, teliti, dan tidak mengenal lelah. Sistem otomatisasi dapat menggantikan manusia untuk mengerjakan sesuatu perkerjaan. Kemajuan teknologi dalam bidang elektronika akan mampu mengatasi masalah-masalah yang rumit sekalipun, dengan ketelitian dan kecepatan serta ketepatan yang sangat tinggi.

Dalam kehidupan yang serba modern sekarang ini, semakin banyak tempat-tempat perbelanjaan, hiburan dan lain-lain dimana tentunya didukung dengan masyarakatnya yang juga semakin maju yang sudah tentu memiliki mobil. Tak sedikit dari mereka yang bepergian ketempat tersebut membawa kenderaannya. Dari pernyataan tersebut sudah tentu tempat-tempat perbelanjaan, hiburan harus mempunyai tempat parkir yang memadai baik area yang luas dan harus didukung dengan sistem parkir yang bagus. Sementara tempat-tempat tersebut harus mengeluarkan biaya mahal untuk membayar gaji karyawannya hanya untuk memberikan tiket parkir membuka palang pintu masuk/keluar dan menerima bayaran parkir. Berangkat dari masalah ini penulis membuat tugas akhir


(14)

yang berjudul Perancangan dan Pembuatan Sistem Parkir Otomatis Menggunakan Koin Berbasis Mikrokontroler AT89S52.

Dengan adanya alat ini sistem parkir dapat dijalankan secara otomatis, sehingga penguna parkir hanya memasukkan koin yang sesuai, lalu dapat memasuki area parkiran, ditambah dengan tampilan pesan yang mendukung sehingga pengguna parkir mengetahui informasi tentang area parkiran, layaknya alat ini seperti manusia yang memberi informasi. Sistem ini juga memiliki keamanan sehingga pengguna parkir yang tidak memasukkan koin yang sesuai tidak akan bisa masuk area parkir. Maka, dengan alat ini sistem parkir akan dikerjaan secara otomatis, cepat, mudah, aman dan dilengkapi dengan tampilan pesan-pesan bagi pengguna parkiran.

Mikrokontroler AT89S52 adalah chip mikrokontroler produksi Atmel Inc, merupakan keluarga dari MCS-51 rancangan Intel. AT89S52 mempunyai fitur dasar yang cukup lengkap untuk suatu pemrosesan input-output. Bahasa pemrograman yang digunakan AT89S52 hampir tidak jauh berbeda dengan instruksi set pada mikroprosesor intel yang sudah dipelajari pada perkuliahan. Mikrokontroler adalah system computer yang ringkas, dapat menggantikan fungsi computer dalam pengendalian kerja dan desain yang jauh lebih ringkas daripada computer. Dengan ukurannya yang sangat kecil mikrokontroler dapat digunakan pada peralatan yang bersifat bergerak (mobile) dalam hal ini adalah pada sebuah sistem parkir otomatis.


(15)

1.2 Tujuan Penulisan

Tujuan dilakukan tugas akhir ini adalah sebagai berikut:

1. Membuat suatu perancangan alat sistem parkir otomatis menggunakan koin berbasis mikrokontroler AT89S52.

2. Untuk mengetahui keefektifan sensor LDR dalam mendeteksi warna koin pada sistem parkis otomatis.

3. Untuk memanfaatkan mikrokontroler sebagai pusat pemproses data yang diberikan oleh sensor.

4. Merancang suatu alat yang mudah digunakan, cepat, teliti dan dilengkapi dengan sistem otomatis.

5. Sebagai informasi bagaimana dasar membangun sebuah instrument yang dapat digunakan sebagai sistem parkir otomatis menggunakan koin.

1.3 Batasan Masalah

Penulisan tugas akhir ini dibatasi pada:

1. Alat ini difokuskan terhadap sistem parkir otomatis menggunakan koin. 2. Koin yang memenuhi syarat untuk memasuki area parkir ditentukan oleh

warna dan beratnya koin yang telah ditentukan.

3. Mikrokontroler yang digunakan adalah jenis AT89S52.

4. Sensor warna koin yang digunakan sensor LDR yang dikelilingi oleh LED. 5. Sensor berat yang digunakan adalah Limit switch

6. Untuk menampilkan display tulisan digunakan LCD 2x16.


(16)

1.4 Sistematika Penulisan

Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika penulisan bagaimana sebenarnya prinsip kerja alat yang dibuat oleh penulis tersebut yaitu Sistem Parkir Otomatis.

BAB 1 PENDAHULUAN

Bagian ini meliputi latar belakang masalah, tujuan penulisan, batasan masalah, metode pengumpulan data, dan sistematika penulisan.

BAB 2 LANDASAN TEORI

Pada bagian ini akan dijelaskan landasan teori meliputi arsitektur dan konstruksi mikrokontroler AT89S52 (hardware dan software), sensor LDR, sensor fotodioda dan inframerah, selain itu juga membahas komponen pendukung lainnya yang berhubungan dengan Sistem Parkir Otomatis.

BAB 3 PERANCANGAN SISTEM

Pada bagian ini akan dijelaskan tentang perancangan alat yang meliputi diagram blok, skematik dari masing-masing rangkaian, diagram alir, serta program yang diisikan ke mikrokontroler AT89S52.


(17)

BAB 4 PENGUJIAN RANGKAIAN DAN ANALISA

Bagian ini meliputi uraian tentang cara menguji dan pembahasan cara kerja Sistem Parkir Otomatis.

BAB 5 KESIMPULAN DAN SARAN

Bagian ini merupakan penutup yang meliputi tentang kesimpulan dari pembahasan dari laporan proyek ini serta saran yang diberikan demi kesempurnaan dan pengembangan proyek ini pada masa yang akan datang ke arah yang lebih baik.


(18)

BAB 2

LANDASAN TEORI

2.1 Perangkat Keras

2.1.1 Pengenalan Mikrokontroler AT89S52

Mikrokontroler saat ini sudah dikenal dan digunakan secara luas pada dunia industri. Banyak sekali penelitian atau tugas akhir mahasiswa menggunakan berbagai versi mirokontroler yang dapat dibeli dengan murah dari harga 15.000 - 350.000. Hal ini dikarenakan produksi massal yang dilakukan oleh para produsen chip seperti atmel, Maxim dan Microchip. Mikrokontroler saat ini merupakan chip utama pada hampir setiap peralatan elektronika canggih. Robot – robot canggih pun bergantung pada kemampuan mikrokontroler dan ketekunan pembuat program mikrokontroler tersebut, hal ini karena menentukan kecepatan eksekusi program pada mikrokontroler dan kecerdasan pada mikrokontroler tersebut. Mikrokontroler umumnya bekerja pada frekwensi sekitar 12 MHz hingga 40 MHz.

Mikrokontroler A89S51/52 merupakan versi terbaru dibandingkan mikrokontroler AT89S51 yang telah banyak diunakan saat ini. Mikrokontroler AT89S52 ialah mikrokomputer CMOS 8 bit dengan 8 KB Flash Programmable

dan Erasable Read Only Memory (PEROM). Mikrokontroler berteknologi

memori non volatile kerapatan tinggi dari Atmel ini kompatibel dengan mikrokontroler standar industri MCS – 51 baik pin kaki IC maupun set instruksinya serta harga yang cukup murah. Oleh karena itu, sangatlah tepat jika


(19)

kita mempelajari mikrokontroler jenis ini. Mikrokontroller jenis AT89S52 lebih cepat didalam pengisian program.

2.1.2 Konstruksi AT89S52

Mikrokontroller keluarga MCS 51 memiliki port-port yang lebih banyak (40 port I/O) dengan fungsi yang bisa saling menggantikan sehingga mikrokontroller jenis ini menjadi sangat digemari karena hanya dalam sebuah chip sudah bisa mengkafer untuk banyak kebutuhan. Konfigurasi dan Deskripsi kaki-kaki mikrokomputer. AT89S52 adalah sebagai berikut:


(20)

Fungsi dari masing – masing pin AT89S52 adalah :

1. Pin 1 sampai 8 (Port1) merupakan port paralel 8 bit dua arah (bidirectional) yang dapat digunakan untuk berbagai keperluan (general

purpose)

2. Pin 9 merupakan pin reset, reset aktif jika mendapat catuan tinggi.

3. Pin 10 sampai 17 (Port 3) adalah port paralel 8 bit dua arah yang memiliki fungsi pengganti sebagai berikut :

a. P3.0(10) : RXD (port serial penerima data) b. P3.1(11) : TXD (port serial pengirim data)

c. P3.2(12) : INT0 (input interupsi eksternal 0,aktif low) d. P3.3(13) : INT1 (input interupsi eksternal 1,aktif low) e. P3.4(14) : T0 (eksternal input timer / counter 0) f. P3.5(15) : T1 (eksternal input timer / counter 1 )

g. P3.6(16) : WR (Write,aktif low) Sinyal kontrol penulisan data dari port 0 ke memori data dan input – output eksternal.

h. P3.7(17) : RD (Read,aktif low) Sinyal kontrol pembacaan memori data input – output eksternal ke port 0.

4. Pin 18 sebagai XTAL 2, keluaran osilator yang terhubung pada kristal. 5. Pin 19 sebagai XTAL 1, masukan ke osilator berpenguatan

tinggi,terhubung pada kristal.

6. Pin 20 sebagai Vss, terhubung ke 0 atau ground pada rangkaian.

7. Pin 21 samapi 28 (Port 2) adalah port paralel 8 bit dua arah. Port ini mengirim byte alamat bila pengaksesan dilakukan pada memori eksternal.


(21)

8. Pin 29 sebagai PSEN (Program Store Enable) adalah sinyal yang digunakan untuk membaca, memindahkan program memori eksternal (ROM / EPROM) ke mikrokontroler (aktif low).

9. Pin 30 sebagai ALE (Address Latch Enable) untuk menahan alamat bawah selama mengakses memori eksternal. Pin ini juga berfungsi sebagai PROG (aktif low) yang diaktifkan saat memprogram internal flash memori pada mikrokontroler (on chip).

10.Pin 31 sebagai EA (External Accesss) untuk meilih memori yang akan digunakan, memori program eksternal (EA = Vcc) atau memori program eksternal (EA = Vss), juga berfungsi sebagai Vpp (programming supply

voltage) pada saat memprogram internal flash memori pada

mikrokontroler.

11.Pin 32 sampai 39 (Port 0) merupakan port paralel 8 bit dua arah. Berfungsi sebagai alamat bawah yang d multipleks dengan data untuk mengakses program dan data memori eksternal.

12.Pin 40 sebagai Vcc, terhubung ke +5 V sebagai catuan untuk mikrokontroler.

Spesifikasi penting AT89S52 :

a. Kompatibel dengan keluarga mikrokontroler MCS51 sebelumnya. b. 8 K Bytes In system Programmable (ISB) flash memori dengan

kemampuan 1000 kali baca/tulis. c. Tegangan kerja 4-5.0 V.


(22)

d. Bekerja dengan rentang 0 – 33 MHz. e. 256x8 bit RAM internal.

f. 32 jalur I/O dapat diprogram. g. 3 buah 16 bit Timer/Counter. h. 8 sumber interrupt.

i. Saluran full dup leks serial UART. j. Watchdog timer.

k. Dua data pointer.

l. Mode pemrograman ISP yang fleksibel (Byte dan Page Mode).

2.1.3 Sensor Warna LDR

LDR (Light Dependent Resistor) merupakan suatu sensor yang apabila terkena cahaya maka tahanannya akan berubah. Tampilan fisik LDR dapat dilihat pada gambar 2.3. dibawah ini :

Gambar 2.2. LDR (Light Dependent Resistor)

Biasanya LDR (atau lebih dikenal dengan fotoresistor) dibuat berdasarkan kenyataan bahwa film kadmium sulfida mempunyai tahanan yang besar kalau tidak terkena cahaya dan tahanannya akan menurun kalau permukaan film itu terkena sinar. Resistor peka cahaya atau fotoresistor adalah yang


(23)

mengenainya. Fotoresistor dapat merujuk pula pada light dependent resistor (LDR), atau fotokonduktor.

Fotoresistor dibuat dar mengenainya memiliki semikonduktor akan menyebabkan meloncat ke

Besarnya tahanan LDR/fotoresistor dalam kegelapan mencapai jutaan ohm dan turun sampai beberapa ratus ohm dalam keadaan terang. LDR dapat digunakan dalam suatu jaringan kerja (network) pembagi potensial yang menyebabkan terjadinya perubahan tegangan kalau sinar yang datang berubah.

LDR atau Light Dependent Resistor adalah jenis resistor yang memiliki nilai resistansi yang tidak tetap. Artinya nilai tahanan/resistansi komponen ini dapat berubah-ubah. Perubahan nilai resistansinya tergantung dari kuat lemahnya cahaya yang dia terima. Resistansi LDR akan berubah seiring dengan perubahan intensitas cahaya yang mengenainya atau yang ada disekitarnya. Dari sifat itulah LDR dapat digunakan sebgai sensor warna. Supaya cahaya yang diterima LDR lebih fokus maka disekeliling LDR diberi cahaya LED, sehingga LDR dapat mengenali warna-warna yang mengenainya, yang diterjemahkan dalam bentuk tegangan (Volt). Dalam keadaan gelap resistansi LDR sekitar 10MΩ dan dalam

keadaan terang sebesar 1KΩ atau kurang. LDR terbuat dari bahan semikonduktor


(24)

menyebabkan lebih banyak muatan yang dilepas atau arus listrik meningkat. Artinya resistansi bahan telah mengalami penurunan.

Komponen yang dapat menerima ini merupakan komponen yang peka cahaya . Komponen ini akan berjalan apabila berada ditempat akan menjadi pulsa-pulsa sinyal listrik. Pada keadaan gelap tanpa cahaya sama sekali, LDR memiliki nilai resistansi yang besar (sekitar beberapa Mega ohm). Nilai resistansinya ini akan semakin kecil jika cahaya yang jatuh ke permukaannya semakin terang. Pada keadaan terang benderang (siang hari) nilai resistansinya dapat mengecil hingga beberapa ohm saja (hampir seperti konduktor).

2.1.4 Photodioda

Fotodioda adalah suatu jenis dioda yang resistansinya berubah-ubah jika cahaya yang jatuh pada dioda berubah-ubah intensitasnya. Dalam gelap nilai tahanannya sangat besar hingga praktis tidak ada arus yang mengalir. Semakin kuat cahaya yang jatuh pada dioda maka semakin kecil nilai tahanannya. Foto dioda ini digunakan terutama sebagai saklar elektronik yang bereaksi akibat perubahan intensitas cahaya.

Photodioda adalah dioda sambungan p-n yang secara khusus dirancang untuk mendeteksi cahaya dan biasanya terdapat lapisan instrinsik antara lapisan p dan n. Piranti yang memiliki lapisan instrinsik disebut pin atau PIN photodiode. Energi cahayanya lewat melalui lensa yang mengekspos sambungan.


(25)

Photodioda dirancang beroperasi pada mode bias-mundur. Arus bocor bias mundur meningkat dengan peningkatan level cahaya. Harga arus umumnya adalah dalan rentang micro-ampere. Photodiode mempunyai waktu respon yang cepat terhadap berbagai cahaya. Cahaya diserap pada daerah penyambungan atau daerah instrinsik menimbulkan pasangan electron-hole, kebanyakan pasangan tersebut menghasilkan arus yang berasal dari cahaya.

Mode operasi:

Photodiode dapat dioperasikan dalam 2 animal mode yang berbeda:

1. Mode photovoltaic: seperti solar sell, penyerapan pada photodiode menghasilkan tegangan yang dapat diukur. Bagaimanapun, tegangan yang dihasilkan dari tenaga cahaya ini sedikit tidak linier, dan range perubahannya sangat kecil.

2. Mode photokonduktivitas: disini photodiode di aplikasikan sebagai tegangan revers (tegangan balik) dari sebuah dioda (yaitu tegangan pada arah tersebut pada dioda tidak akan menghantarkan tanpa terkena cahaya) dan pengukuran menghasilkan arus photo (hal ini juga bagus untuk mengaplikasikan tegangan mendekati nol)


(26)

Karakteristik bahan photodiode:

1. Silicon (Si) : arus lemah sangat gelap, kecepatan tinggi,sensitivitas bagus antara 400 nm sampai 1000 nm (terbaik antara 800 nm sampai 900 nm). 2. Germanium (Ge) : arus tinggi sangat gelap, kecepatan lambat, sensitivitas

baik antara 600 nm sampai 1800 nm (terbaik 1400 nm sampai1500 nm). 3. Indium Gallium Arsennida (InGaAs) : mahal, arus kecil saat gelap,

kecepatan tinggi sensitivitas baik pada jarak 800 nm sampai 1700 nm (terbaik antara 1300 nm sampai 1600 nm)

2.1.5 LED Inframerah

Sinar infra merah termasuk dalam gelombang elektromagnetik yang tidak tampak oleh mata telanjang. Sinar ini tidak tampak oleh mata karena mempunyai panjang gelombang berkas cahaya yang terlalu panjang bagi tanggapan mata manusia. Sifat-sifat cahaya infra merah:

1. tidak tampak manusia

2. tidak dapat menembus materi yang tidak tembus pandang

Led inframerah adalah suatu bahan semikonduktor yang memancarkan cahaya monokromatik (cahaya yang hanya terdiri atas satu warna dan satu panjang gelombang) yang tidak koheren ketika diberi tegangan maju. Pengembangan led inframerah dimulai dengan alat inframerah dibuat dengan galliumarsenide. Cahaya infra merah pada dasarnya adalah radiasi elektromagnetik dari panjang gelombang yang lebih panjang dari cahaya tampak, tetapi lebih pendek dari radiasi gelombang radio, dengan kata lain infra


(27)

merupakan warna dari cahaya tampak dengan gelombang terpanjang, yaitu sekitar 700 nm sampai 1 mm.

Gambar 2.4 Led Inframerah

Cahaya led inframerah timbul sebagai akibat penggabungan elektron dan hole pada persambungan antara dua jenis semikonduktor dimana setiap penggabungan disertai dengan pelepasan energi. Pada penggunaannya led inframerah ini merupakan komponen elektronika yang memancarkan cahaya infra merah dengan konsumsi daya sangat kecil. Led inframerah dapat diaktifkan dengan tegangan dc untuk transmisi atau sensor jarak dekat, dan dengan tegangan ac (30–40 KHz) untuk transmisi atau sensor jarak jauh.

Karakteristik dari LED Infra merah:

1.Dapat dipakai dalam waktu yang sangat lama. 2.Membutuhkan daya yang kecil.

3.Tidak mudah panas.


(28)

Prinsip utama dari rangkaian sensor ini seperti layaknya sebuah saklar yang memberikan perubahan tegangan apabila terdapat penghalang diantara transceiver dan receiver. Sensor ini memiliki dua buah piranti yaitu rangkaian pembangkit/pengirim (Led Inframerah) dan rangkaian penerima (Fotodiode). Rangkaian pembangkit/pengirim memancarkan sinar inframerah kemudian pancarannya diterima oleh penerima (fotodioda) sehingga bersifat menghantar akibatnya tegangan akan jatuh sama dengan tegangan ground (0). Dan sebaliknya apabila tidak mendapat pancaran sinar inframerah maka akan menghasilkan tegangan.

Led inframerah adalah suatu jenis dioda yang apabila diberi tegangan maju maka arus majunya akan membangkitkan cahaya pada pertemuan PN-nya. Disini cahaya yang dibangkitkan adalah infra merah yang tidak dapat dilihat dengan mata. Dioda-dioda yang digunakan terbuat dari bahan Galium (Ga), Arsen (As), dan Fosfor (P) atau disingkat GaAsP. Tegangan maju antara anoda-katoda berkisar antara 1,5V-2V, sedangkan arus majunya berkisar 5mA-20mA. Led inframerah sesuai dengan rancangannya memancarkan cahaya pada spectrum inframerah dengan panjang gelombang λ = 940 nm. Spectrum cahaya inframerah ini mempunyai level panas yang paling tinggi diantara sinar-sinar yang lain walaupun tidak tampak oleh mata dan mempunyai efek fotolistrik yang terkuat.

LED adalah dioda yang menghasilkan cahaya saat diberi energi listrik. Dalam bias maju sambungan p-n terdapat rekombinasi antara electron bebas dan lubang (hole). Energi ini tidak seluruhnya diubah ke dalam bentuk energi cahaya atau photon melainkan dalam bentuk panas sebagian. Untuk dioda yang memancarkan cahaya inframerah (infrared emiting dioda = IRED). Sinar


(29)

inframerah tidak dapat dilihat manusia , dengan menambahkan obat gallium arsenide dengan berbagai bahan dapat dibuat LED dengan output yang dapat dilihat seperti sinar merah, hijau, kuning, atau biru. Dioda yang memancarkan cahaya (LED) digunakan untuk display alphabet dan digital serta sebagai lampu tanda.

Sebagian besar LED membutuhkan 1,5 V sampai 2,2 V untuk memberi bias maju dan membutuhkan arus sekitar 20 mA sampai 30 mA untuk memancarkan cahaya. Dengan level-level tegangan yang lebih tinggi, LED dapat terbakar apabila tegangan maju yang diberikan melebihi 2 V. untuk mengatasi hal ini LED biasanya dihubungkan secara seri dengan tahanan yang membatasi tegangan dan arus pada nilai yang dikehendaki. Proses pemancaran cahaya akibat adanya energi listrik yang diberikan terhadap suatu bahan disebut dengan sifat elektroluminesensi. Material lain misalnya galiumarsenida pospat (GaP): photon energi cahaya dipancarkan untuk menghasilkan cahaya tampak. Jenis lain dari LED digunakan untuk menghasilkan energi tidak tampak seperti yang dipancarkan oleh pemancar laser atau inframerah.

Gambar 2.5 Simbol dan rangkaian dasar sebuah LED

Pemancar inframerah adalah dioda solid state yang terbuat dari bahan Galium Arsenida (GaAs) yang mampu memancarkan fluks cahaya ketika dioda

330฀ VCC


(30)

ini dibias maju. Bila diberi bias maju electron dari daerah-n akan menutup lubang electron yang ada di daerah-p. selama proses rekombinasi ini, energi dipancarkan dari permukaan p dan n dalam bentuk photon. Photon-photon yang dihsilkan ini ada yang diserap lagi dan ada yang meninggalkan permukaan dalam bentuk radiasi energi.

Led inframerah adalah suatu bahan semikonduktor yang memancarkan cahaya monokromatik (cahaya yang hanya terdiri atas satu warna dan satu panjang gelombang) yang tidak koheren ketika diberi tegangan maju. Pengembangan led inframerah dimulai dengan alat inframerah dibuat dengan galliumarsenide. Cahaya infra merah pada dasarnya adalah radiasi elektromagnetik dari panjang gelombang yang lebih panjang dari cahaya tampak, tetapi lebih pendek dari radiasi gelombang radio, dengan kata lain infra merupakan warna dari cahaya tampak dengan gelombang terpanjang, yaitu sekitar 700 nm sampai 1 mm.

2.1.6 Motor Stepper

Motor langkah (stepper) banyak digunakan dalam berbagai aplikasi, dipergunakan apabila dikehendaki jumlah putaran yang tepat atau di perlukan sebagian dari putaran motor. Suatu contoh dapat di jumpai pada disk drive, untuk proses pembacaan dan/atau penulisan data ke/dari cakram(disk), head baca-tulis ditempatkan pada tempat yang tepat di atas jalur atau track pada cakram, untuk head tersebut di hubungkan dengan sebuah motor langkah.

Aplikasi penggunaan motor langkah dapat juga di jumpai dalam bidang industri atau untuk jenis motor langkah kecil dapat di gunakan dalam perancangan


(31)

suatu alat mekatronik atau robot. Motor langkah berukuran besar digunakan, misalnya, dalam proses pengeboran logam yang menghendaki ketepatan posisi pengeboran, dalam hal ini di lakukan oleh sebuah robot yang memerlukan ketepatan posisi dalam gerakan lengannya dan lain-lain.

Pada gambar di bawah ditunjukkan dasar susunan sebuah motor langkah (stepper).

Gambar 2.6. 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 berputar menurut suatu sudut tertentu, biasanya informasi besar sudut putar tertulis pada badan motor langkah yang bersangkutan. Jumlah keseluruhan pengalihan menentukan sudut perputaran motor.Jika pengalihan arus di tentukan, maka rotor akan berhenti pada posisi terakhir. Jika kecepatan pengalihan tidak terlalu tinggi, maka

U

S A

D B


(32)

slip akan dapat dihindari. Sehingga tidak di perlukan umpan balik (feedback) pada pengendalian motor langkah.

Motor langkah yang akan di gunakan memiliki 4 fase (pole atau kutub), pengiriman pulsa dari mikrokontroler ke rangkaian motor langkah dilakukan secara bergantian, masing-masing 4 data (sesuai dengan jumlah phase-nya), sebagian di tunjukkan pada gambar di bawah ini.

Gambar 2.7. 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.1.7 Liquid Crystal Display (LCD)

LCD merupakan salah satu komponen yang banyak dipilih untuk dipergunakan sebagai tampilan karena kemudahannya dalam mengatur tampilan agar lebih menarik. Salah satu contoh LCD yang banyak digunakan yaitu LCD M1632 (LCD 2x16).

C D A B


(33)

Controller

LCD (16 X 2 ) Segmen

Driver

Timing Signal 3 Serial Data Segmen Signal

16 Comon Signal

40 DB0 - 7

RS E R/W VLC VSS VDD 40

Gambar 2.8 Diagram Blok Tampilan Kristal Cair (LCD)

LCD display module M1632 terdiri dari dua bagian, yang pertama merupakan panel LCD sebagai media penampil informasi dalam bentuk huruf/ angka dua baris, masing – masing baris bisa menampung 16 huruf/ angka.

Bagian kedua merupakan sebuah sistem yang dibentuk dengan mikrokontroler yang ditempel dibalik pada panel LCD, berfungsi mengatur tampilan LCD. Dengan demikian pemakaian LCD M1632 menjadi sederhana, sistem lainnya cukup mengirimkan kode – kode ASCII dari informasi yang ditampilkan .

Spesifikasi LCD M1632, yaitu ; a. Tampilan 16 karakter 2 baris.

b. RAM data tampilan dan RAM pembangkit karakter dapat dibaca dari unit mikroprosesor.

c. Beberapa fungsi perintah antara lain adalah penghapusan tampilan (display clear), posisi kursor awal (cursor home), tampilan karakter kedip (display character blink), pengeseran krusor (cursor shift) dan penggeseran tampilan (display shif).

d. Rangkaian otomatis reset saat daya dinyalakan. e. Catu daya tunggal +5 volt.


(34)

2.1.8 Relay

Relay adalah komponen elektronika berupa saklar elektronik yang digerakkan oleh arus listrik. Secara prinsip, relai merupakan tuas saklar dengan lilitan kawat pada batang besi (solenoid) di dekatnya. Ketika solenoid dialiri arus listrik, tuas akan tertarik karena adanya gaya magnet yang terjadi pada solenoid sehingga kontak saklar akan menutup. Pada saat arus dihentikan, gaya magnet akan hilang, tuas akan kembali ke posisi semula dan kontak saklar kembali terbuka. Relay biasanya digunakan untuk menggerakkan arus/tegangan yang besar (misalnya peralatan listrik 4 ampere AC 220 V) dengan memakai arus/tegangan yang kecil (misalnya 0.1 ampere 12 Volt DC). Dalam pemakaiannya biasanya relay yang digerakkan dengan arus DC dilengkapi dengan sebuah dioda yang di-paralel dengan lilitannya dan dipasang terbalik yaitu anoda pada tegangan (-) dan katoda pada tegangan (+). Ini bertujuan untuk mengantisipasi sentakan listrik yang terjadi pada saat relay berganti posisi dari on ke off agar tidak merusak komponen di sekitarnya.

Gambar 2.9 Relay

Relay adalah suatu komponen elektronika yang akan bekerja bila ada arus yang melalui kumparannya. Sebuah relay terdiri dari kumparan yang dililitkan pada inti besi dan kontak-kontak penghubung. Apabila kumparan yang melilit inti


(35)

besi dilalui arus listrik maka akan menimbulkan induksi medan magnet, dan induksi ini akan menarik kontak-kontak penghubung relay.

Kontak penghubung relay terdiri dari dua bagian, yaitu :

1. Kontak NC (Normally Close)

Kontak penghubung dalam kondisi menutup atau terhubung bila relay tidak mendapat masukan tegangan pada kumparannya. Tetapi bila diberi tegangan yang mencukupi pada kumparannya maka kontak penghubung menjadi terbuka (kondisi awal sebelum diaktifkan close).

2. Kontak NO (Normally Open)

Kontak penghubung dalam kondisi terbuka bila relay tidak mendapat tegangan pada kumparannya. Tetapi bila diberi tegangan yang mencukupi pada kumparannya maka kontak penghubung menjadi tertutup atau terhubung. (kondisi awal sebelum diaktifkan open)

2.2 Perangkat Lunak

Perangkat lunak (software) adalah seperangkat intruksi yang disusun menjadi sebuah program untuk memerintahkan microcomputer melakukan suatu pekerjaan. Sebuah instruksi selalu berisi kode operasi (op-code), kode pengoperasian inilah yang disebut dengan bahasa mesin yang dapat dimengerti oleh mikrokontroller. Instruksi-instruksi yang digunakan dalam memprogram suatu program yang diisikan pada AT89S51 adalah instruksi bahasa pemograman

assembler atau sama dengan intruksi pemograman pada IC mikrokontrller 8051


(36)

2.2.1 Instruksi Transfer Data

Instruksi transfer data terbagi menjadi dua kelas operasi sebagai berikut :

Transfer data umum ( General Purpose Transfer ), yaitu : MOV, PUSH dan POP.

Transfer spedifik akumulator ( Accumulator Specific Transfer ), yaitu : XCH, XCHD, dan MOVC.

Instruksi transfer data adalah intruksi pemindahan /pertukaran data antara

operand sumber dengan operand tujuan. Operand-nya dapat berupa register,

memori atau lokasi suatu memori. Penjelasan instruksi transfer data tersebut dapat dijelaskan sebagai berikut.

MOV : Transfer data dari Register satu ke Register yang lainnya, antara

Register dengan Memory.

PUSH : Transfer byte atau dari operand sumber ke suatu lokasi dalam stack yang alamatnya ditunjuk oleh register penunjuk.

POP : Transfer byte atau dari dalam stack ke operand tujuan.

XCH : Pertukaran data antara operand akumulator dengan operand sumber.

XCHD : Pertukaran nibble orde rendah antara RAM internal ( lokasinya ditunjukkan oleh R0 dan R1 )

2.2.2 Instruksi Aritmatika

Operasi dasar aritmatik seperti penjumlahan, pengurangan, perkalian dan pembagian dimiliki oleh AT89S51 dengan mnemonic : INC, ADD, SUBB, DEC, MUL dan DIV. Penjelasan dari operasi mnemonic tersebut dijelaskan sebagai berikut :


(37)

INC : Menambah satu isi sumber operand dan menyimpan hasilnya ke

operand tersebut

ADD : Penjumlahan antara akumulator dengan sumber operand dan hasilnya disimpan di akumulator

SUBB : Pengurangan akumulator dengan sumber operand, hasilnya disimpan dalam operand tersebut.

DEC : Mengurangi sumber operand dengan 1. dan hasilnya disimpan pada

operand tersebut.

MUL : Perkalian antara akumulator dengan Register B.

DIV : Pembagian antara akumulator dengan Register B dan hasilnya disimpan dalam akumulator, sisanya di Register B.

2.2.3 Instruksi Logika

Mikrokontroller AT89S51 dapat melakukan operasi logika bit maupun operasi logika byte. Operasi logika tersebut dibagi atas dua bagian yaitu :

Operasi logika operand tunggal, yang terdiri dari CLR, SETB, CPL, RL, RR, dan SWAP.

Operasi logika dua operand seperti : ANL, ORL, dan XRL.

Operasi yang dilkukan oleh AT89S51 dengan pembacaan instruksi logika tersebut dijelaskan dibawah ini :

CLR : Menghapus byte atau bit menjadi nol. SETB : Menggeser bit atau byte menjadi satu. CPL : Mengkomplemenkan akumulator. RL : Rotasi akumulator 1 bit ke kiri.


(38)

RR : Rotasi akumulator ke kanan. SWAP : Pertukaran nibble orde tinggi.

2.2.4 Instruksi Transfer Kendali

Instruksi transfer kendali (control transfer) terdiri dari tiga kelas operasi yaitu : Lompatan tidak bersyarat ( Unconditional Jump ) seperti : ACALL,

AJMP, LJMP,SJMP

Lompatan bersyarat ( Conditional Jump ) seperti : JZ, JNZ, JB, CJNE, dan DJNZ.

• Insterupsi seperti : RET dan RET1. Penjelasan dari instruksi diatas sebagai berikut :

ACALL : Instruksi pemanggilan subroutine bila alamat subroutine tidak lebih dari 2 Kbyte.

LCALL : Pemanggilan subroutine yang mempunyai alamat antara 2 Kbyte – 64 Kbyte.

AJMP : Lompatan untuk percabangan maksimum 2 Kbyte. LJMP : Lompatan untuk percabangan maksimum 64 Kbyte. JNB : Percabangan bila bit tidak diset.

JZ : Percabangan akan dilakukan jika akumulator adalah nol. JNZ : Percabangan akan dilakukan jika akumulator adalah tidak

nol.

JC : Percabangan terjadi jika CY diset “1”.

CJNE : Operasi perbandingan operand pertama dengan operand kedua, jika tidak sama akan dilakukan percabangan.


(39)

DJNZ : Mengurangi nilai operand sumber dan percabangan akan dilakukan apabila isi operand tersebut tidak nol.

RET : Kembali ke subroutine.

RET1 : Kembali ke program interupsi utama

Dalam merancang suatu program mikrokontroler dibutuhkan suatu software yang dapat menulis program dan mengubahnya menjadi bilangan heksadesimal. Untuk menulis program dapat digunakan Software M-IDE Studio for MCS-51. Untuk men-download program heksadesimal ke dalam mikrokontroler dapat digunakan Software Downloader (ISP – Flash Programmer 3.0a).

2.2.5 Software M-IDE Studio for MCS-51

Instruksi-instruksi yang merupakan bahasa assembly dituliskan pada sebuah editor, yaitu M-IDE Studio Editor. Tampilannya seperti gambar 2.13 di bawah ini.

Gambar 2.10 Tampilan M-IDE Studio MCS 51 sebagai 8051 editor menulis program


(40)

Setelah program selesai ditulis, kemudian save dan setelah itu 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 M-IDE Studio for MCS-51 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 mikrokontroler.

2.2.6 Software Downloader (ISP – Flash Programmer 3.0a)

Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroler digunakan software ISP- Flash Programmer 3.0a yang dapat di download dari internet. Tampilannya seperti gambar 2.14 di bawah ini :


(41)

Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi M-IDE, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroler. Untuk mengecek apakah mikrokontroler bisa ditulisi atau tidak dapat diketahui dengan dua cara, yaitu dengan cara meng-klik Signature dan Read. Jika dapat ditulis maka program akan dijalankan, jika tidak dapat ditulis maka akan ada peringatan “ no response”. Untuk mengamankan agar program pada mikrokontroler tidak dapat dibaca oleh orang yang tidak diinginkan, dapat digunakan Lock Bit-1, Lock Bit-2 dan Lock Bit-3 yang masing-masingnya memiliki tingkat keamanan yang berbeda. Makin tinggi tingkatan Lock Bitnya maka makin sulit membongkar programnya. Tetapi apabila telah di lock (dikunci) maka mikrokontroler tidak dapat lagi ditulis.


(42)

BAB 3

PERANCANGAN SISTEM

3.1 Perancangan Alat 3.1.1 Diagram Blok

Secara garis besar, diagram blok dari sistem parkir otomatis ini ditunjukkan pada gambar berikut ini:

Sensor Warna LDR Saklar Batas 2 Driver Motor Stepper 1 Saklar Batas 1 A T 8 9 S 5 2 1 Driver Sensor Warna LDR Motor Stepper 1 Driver Motor Stepper 2 Motor Stepper 2 Buzzer Driver LCD LCD

2 x 16

A T 8 9 S 5 2 2 Driver Motor Stepper 3 Motor Stepper 3 Driver Motor Stepper 4 Motor Stepper 4 LCD 2 x 16 Driver

LCD Fotodioda & inframerah 1

Driver Fotodioda & inframerah 1

Fotodioda & inframerah 2

Driver Fotodioda & inframerah 2

Fotodioda & inframerah 3

Driver Fotodioda & inframerah 3

Gambar 3.1. Diagram Blok Sistem Parkir Otomatis

Fungsi Tiap Blok : 1. Sensor Warna LDR

Merupakan sensor yang berfungsi mengetahui/menyeleksi warna koin yang masuk sesuai atau tidak dengan yang ditentukan. dimana prinsip kerjanya


(43)

memberikan data high (terkena halangan) atau low (tidak ada halangan) ke mikrokontroler tetapi data yang masuk kemikrokontroler telah diset sesuai karakteristik koin yang ditentukan.

2. Mikrokontroler AT89S52

Merupakan pusat pengolah data yang diterima dari sensor untuk memproses kerja sistem parkir otomatis . Pada blok ini mikrokontroler telah diprogram untuk dapat membaca data dari sensor baik sensor warna LDR maupun sensor halangan yang kemudian mengolah semua data tersebut dan selanjutnya mengambil keputusan perangkat mana saja yang harus dikendalikan sesuai data yang diterima dari sensor baik menentukan koin itu sesuai atau tidak, membuka palang pintu masuk, palang pintu keluar dan perintah-perintah lainnya.

3. Driver Motor Stepper

Berfungsi untuk mengendalikan putaran motor stepper baik arah putarannya maupun gerak sudut putarannya agar dapat bekerja sesuai yang diinginkan.

4. Motor stepper - motor stepper 1

Motor ini berfungsi sebagai pengerak otomatis pembatas koin sebelum dinyatakan benar atau tidak oleh sensor warna dengan mengatur sudut buka batas koin tersebut.


(44)

- motor stepper 2

Motor ini berfungsi sebagai pemutar otomatis wadah koin benar atau salah sehingga koin dapat masuk sesuai tempatnya dengan mengatur sudut putar wadah tersebut.

- motor stepper 3

Motor ini berfungsi sebagai pengerak otomatis palang pintu masuk parkiran dan mengatur sudut buka tutup palang pintu parkiran tersebut.

- motor stepper 4

Motor ini berfungsi sebagai pengerak otomatis palang pintu keluar parkiran dan mengatur sudut buka tutup palang pintu parkiran tersebut.

5. Saklar batas - saklar batas 1

Saklar ini bertujuan agar koin yang masuk setelah diterima dari seleksi sensor warna LDR apakah dapat memberikan logika high ke mikrokontroler (artinya koin tertekan) atau memberikan logika low (koin tidak sampai tertekan) jika high maka koin diterima dan jika low koin bukan yang memenuhi karakter yang ditentukan.

- saklar batas 2

saklar ini bertujuan agar mikrokontroler mengetahui ada koin yang masuk atau tidak.

6. Buzzer

Buzzer merupakan indikator peringatan agar pengguna parkiran masuk mengetahui bahwa koin yang dimasukkan salah atau bukan koin yang ditentukan sehingga buzzer berbunyi.


(45)

7. Driver LCD

Merupakan rangkaian yang digunakan untuk menjalankan/mengaktifkan LCD baik untuk menghubungkan ke jalur mikrokontroler maupun mengatur kontras dari tampilan LCD.

8. LCD 2 x 16

Display LCD 2x16 berfungsi sebagai penampil pesan yang diinginkan baik pada pintu masuk maupun pada pintu keluar.

9. Driver Fotodioda & inframerah

Merupakan rangkaian yang digunakan untuk menjalankan/mengaktifkan fotodioda & inframerah agar kompatibel dengan mikrokontroler.

10. Sensor fotodioda & inframerah

Sensor ini bertujuan sebagai sensor halangan baik untuk mengetahui mobil telah masuk area parker (1), mobil mau keluar (2), mobil telah keluar area parkir (3).

3.1.2 Perancangan Warna LDR

Rangkaian skematik dan layout PCB sensor warna dapat dilihat pada gambar 3.2 di bawah ini:


(46)

Dari gambar 3.2. skematik sensor warna jelas terlihat salah satu kaki LDR (Light Dependent Resistor) dihubungkan terlebih dahulu ke tahanan 1000 Ohm sebelum dihubungkan ke Vcc 5 volt dan kaki yang lain dari LDR langsung dihubungkan ke ground

Jika LDR terkena cahaya, maka tahanan pada LDR akan berkurang, sehingga tegangan antara kaki LDR dengan tahanan 1000 Ohm juga akan berubah.

Tahanan 1000 Ohm digunakan agar arus yang diterima LDR tidak begitu besar. Tahanan 1000 Ohm sesuai dengan arus maksimum yang boleh diterima oleh LDR. Arus maksimum yang boleh diterima LDR adalah 5 mA. Jadi apabila tegangan yang digunakan tegangan Vcc 5 volt maka tahanan yang dapat digunakan adalah :

4 R = V / I = 5 Volt / 5 mA = 1000 Ohm Oleh karena itu digunakanlah tahanan 1000 Ohm.

3.1.3 Rangkaian Mikrokontroler AT89S52

Rangkaian mikrokontroller AT89S52 ini merupakan pusat pengolahan data dari sensor. Dalam alat ini, mikrokontroler digunakan sebagai untuk membaca dan mengolah data dari sensor. Input (masukan) pada rangkaian mokrokontroler ini dihubungkan dengan 3 buah sensor fotodioda dan inframerah, limit switch dan sensor warna LDR, sedangkan output (keluaran) dihubungkan dengan piranti tampilan, dalam hal ini dot matrix LCD, motor stepper dan sirinai. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini:


(47)

Gambar 3.3 rangkaian minimum mikrokontroller AT89S52

Pada rangkaian, Pin 31 External Access Enable (EA) diset high (H). Ini dilakukan karena mikrokontroller AT89S52 tidak menggunakan memori eskternal. Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan capasitor 33 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroller AT89S52 dalam mengeksekusi setiap perintah dalam program. Pin 9 merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroller ini. Pin 32 sampai 39 adalah Port 0 yang merupakan saluran/bus I/O 8 bit open collector dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Pada Port 0 ini masing masing pin dihubungkan dengan resistor 4k7 ohm. Resistor 4k7 ohm yan dihubungkan ke port 0 befungsi sebagai pull up( penaik tegangan ) agar output dari mikrokontroller dapat mntrigger transistor. Pin 1 sampai 8 adalah Port 1. Pin 21 sampai 28 adalah Port 2. Dan Pin 10 sampai 17 adalah Port 3. Pin 20 merupakan


(48)

Vreg

LM7805CT

IN OUT

TIP32C

100ohm

100uF

330ohm 220V 50Hz 0Deg

TS_PQ4_12

2200uF 1uF 1N5392GP

1N5392GP

12 Volt

5 Volt

ground dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supplay.

3.1.4 Rangkaian Catu Daya (PSU)

Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt, keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian.

Rangkaian power supplay ditunjukkan pada gambar 3.4 berikut ini :

Gambar 3.4 Rangkaian Power Supply (PSU)

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


(49)

pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 32 disini berfungsi untuk mensupplay arus apabila terjadi kekurangan arus pada rangkaian, sehingga regulator tegangan (LM7805CT) tidak akan panas ketika rangkaian butuh arus yang cukup besar. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda penyearah.

3.1.4 Perancangan Sensor Inframerah

3.1.4.1 Perancangan Pemancar Inframerah

Untuk dapat mendeteksi adanya mobil, maka sistem parkir otomatis ini dilengkapi dengan 3 buah sensor inframerah. Semua sensor ini mempunyai rangkaian yang sama, hanya penempatannya saja yang berbeda.

Masing-masing sensor menggunakan 1 buah pemancar inframerah dan sebuah potodioda. Sensor ini memanfaatkan pantulan dari pemancar inframerah yang diterima oleh potodioda. Digunakan 1 buah pemancar inframerah pada masing-masing sensor bertujuan agar sinyal pantulan semakin kuat, sehingga mobil dapat terdeteksi dengan baik.

Setiap pantulan yang diterima oleh potodioda akan diolah dan dijadikan data digital, sehingga bila potodioda mendapatkan pantulan dari pemancar inframerah, maka akan mengirimkan sinyal low (0) ke mikrokontrolert AT89S52. Dengan demikian mikrokontroler dapat mendeteksi sensor yang mengirimkan sinyal low dan mengambil tindakan untuk mengatur putaran motor ke kanan atau ke kiri. Rangkaian pemancar inframerah tampak seperti gambar di bawah ini:


(50)

Gambar 3.5 Rangkaian Pemancar inframerah

Pada rangkaian di atas digunakan 1 buah LED inframerah yang diparalelkan, dengan demikian maka intensitas yang dipancarkan oleh inframerah semakin kuat, karena merupakan gabungan dari buah LED inframerah. Resistor yang digunakan adalah 100 ohm sehingga arus yang mengalir pada masing-masing 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.

3.1.4.2 Perancangan Penerima Inframerah

330Ω฀ VCC


(51)

Pantulan dari sinar inframerah akan diterima oleh potodioda, kemudian akan diolah oleh rangkaian penerima agar menghasilkan data biner, dimana jika potodioda menerima pantulan sinar inframerah maka output dari rangkaian penerima ini akan mengeluarkan logika low (0), namun jika potodioda tidak menerima pantulan sinar inframerah, maka output dari rangkaian penerima akan mengeluarkan logika high (1).

Rangkaian penerima inframerah seperti gambar di bawah ini:

Gambar 3.6 Rangkaian Penerima sinar inframerah

Potodioda memiliki hambatan sekitar 15 s/d 20 Mohm jika tidak terkena sinar inframerah, dan hambatannya akan berubah menjadi sekitar 80 s/d 300 Kohm jika terkena sinar inframerah tergantung dari besarnya intensitas yang mengenainya. Semakin besar intensitasnya, maka hambatannya semakin kecil.

Pada rangkaian di atas, output dari potodioda diumpankan ke basis dari transistor tipe NPN C828, ini berarti untuk membuat transistor tersebut aktif

VCC 5V 330k฀ Poto dioda 4.7k฀ C828 10k฀ 1.0k฀ Q2 2SA733 10k฀ 2SC945 4.7k฀ 1.0k฀ 1.0k฀ Q4 2SA733 10k฀ 330฀ LED1 AT8 9 S5 1


(52)

maka tegangan yang keluar dari potodioda harus lebih besar dari 0,7 volt. Syarat ini akan terpenuhi jika potodioda mendapatkan sinar inframerah. Analisanya sebagai berikut:

Jika tidak ada sinar inframerah yang mengenai potodioda, maka hambatan pada potodioda 15 Mohm, sehingga:

2 330.000

5 0,107 1 2 15.000.000 330.000

R

Vo xVcc x Volt

R R

== =

+ +

Vout akan diumpankan ke basis dari transistor C828, karena tegangannya hanya 0,107 Volt maka transistor tidak aktif.

Jika ada sinar inframerah yang mengenai potodioda, maka hambatan pada potodioda 300 Kohm, sehingga:

2 330.000

5 2, 619 1 2 300.000 330.000

R

Vo xVcc x Volt

R R

== =

+ +

Vout akan diumpankan ke basis dari transistor C828, karena tegangannya lebih besar dari 0,7 volt yaitu 2,619 Volt maka transistor akan aktif.

Aktifnya transistor C828 akan menyebabkan colektornya terhubung ke emitor, sehingga colektor mandapat tegangan 0 volt dari ground, tegangan ini diumpankan ke basis dari transistor ke-2 tipe PNP A733, sehingga transistor ini


(53)

terhubung ke emitor, sehingga colektor mandapat tegangan 5 volt dari Vcc, tegangan ini diumpankan ke basis dari transistor ke-3 tipe NPN C945, sehingga transistor ini juga aktif.

Kolektor dari transistor C945 dihubungkan mikrokontroler AT89S52 sehingga jika transistor ini aktif, maka kolektor akan mendapatkan tegangan 0 volt dari ground. Tegangan 0 volt inilah yang merupakan sinyal low (0) yang diumpankan ke mikrokontroler AT89S52, sehingga mikrokontroler dapat mengetahui bahwa sensor ini mengirimkan sinyal, yang berarti bahwa kreta api akan lewat.

Transistor ke-4 tipe PNP A733 berfungsi untuk menyalakan LED sebagai indikator bahwa sensor ini menerima pantulan sinar inframerah dari pemancar. LED ini akan menyala jika sensor menerima sinar inframerah, dan akan mati jika sensor tidak menerima sinar inframerah.

3.1.5 Perancangan Driver penggerak Motor Stepper

Rangkaian driver penggerak motor ini hanya menggunakan IC buffer ULN 2803, dimana fungsi IC ini agar data yang yang diterima dari mikrokontroler benar-benar terdefinisi sebagai data digital (high/low) sehingga dat-data ini dapat mengatur gerakan motor stepper searah jarum jam, berlawanan jarum jam ataupun mengatur sudut putaran motor steper.


(54)

Gambar 3.7 IC ULN 2803 dan Driver Motor Stepper

Dimana IC ULN 2803 ini diaktifkan dengan tegangan supplay 12 VDC, mempunyai 8 bit data input dan 8 bit data output dimana tegangan supplay diberikan pada common (kaki 10) dan ground pada kaki 9. Tetapi pada rangkaian ini hanya digunakan 4 bit data untuk menggerakkan 1 motor stepper, karena motor stepper hanya memiliki 4 bit data yang dapat digerakkan dan diatur putaran nya baik searah maupun berlawanan jarum jam.


(55)

3.1.6 Rangkaian Relay

Relay berfungsi sebagai saklar elektronik yang dapat menghidupkan atau mematikan peralatan elektronik (dalam hal sirinai). Rangkaian relay pengendali kipas tampak seperti gambar 3.8 berikut :

Ke mikrokontroler

4k7

C945

relay NO

Sirinai

+

-NO NC

Gambar 3.8 Rangkaian Relay Pengendali sirinai

Relay merupakan salah satu komponen elektronik yang terdiri dari lempengan logam sebagai saklar dan kumparan yang berfungsi untuk menghasilkan medan magnet. Pada rangkaian ini digunakan relay 12 volt.

Pada rangkaian ini untuk mengaktipkan atau menon-aktipkan relay digunakan transistor tipe NPN. Dari gambar dapat dilihat bahwa negatip relay dihubungkan ke kolektor dari transistor NPN (C945) dan positif relay dihubungkan pada tegangan 12 volt., ini berarti jika transistor dalam keadaan aktip maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0 volt, keadaan ini akan mengakibatkan relay aktip. Disaat relay aktif maka kaki-kaki relay yang berfungsi sebagai Normali Close sudah mendapatkan tegangan 12 volt. Sementara kaki-kaki relay yang berfungsi sebagai Normali open masih belum mendapatkan tegangan 12 volt sebelum ada inputan (inputan berupa logika high atau 5 volt).


(56)

Sebaliknya jika transistor tidak aktip, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 12 volt, keadaan ini menyebabkan relay tidak aktip. Resistor didalam rangkaian berfungsi sebagai pull up untuk menaikkan tegangan agar inputan mikrokontroler sanggup mengaktifkan relay. Dioda dihubungkan secara terbalik untuk mengantisipasi sentakan listrik yang terjadi pada saat relay berganti posisi dari on ke off agar tidak merusak komponen di sekitarnya, sentakan itu hanya terjadi ketika relay dinonaktipkan, pada saat ini arus akan terus mengalir melalui kumparan dan arus ini akan dialirkan ke dioda. Tanpa adanya dioda sentakan listrik itu akan mengalir ke transistor, yang mengakibatkan kerusakan pada transistor.

3.1.7 Perancangan Rangkaian Saklar Batas

(AT89S51)

Gambar 3.9. Rangkaian Saklar batas

Saklar batar mempunyai 3 funsi pin common, NO dan NC. Dimana Common dihubungkan ke VCC 5 Volt. NO akan menghasilkan tegangan 5 Volt pada pin Common telah dihubungkan dengan VCC 5 Volt dan NO akan 5 Volt Jika Saklar ditekan. Dalam alat ini NO lah yang digunakan artinya jika saklar ditekan maka NO akan 5 Volt setelah dilepaskan akan berubah menjadi 0 volt. Perubahan inilah yang dikenali oleh mikrokontroler sebagai pertanda bahwa koin telah dimasukkan atau tidak. Dan digunakan sebagai sensor berat pada koin,


(57)

artinya jika koin jatuh dan membuat limit switch tertekan maka koin benar sebaliknya maka koin salah.

3.1.8 Display LCD Character 2x16

Display LCD 2x16 berfungsi sebagai penampil nilai kuat induksi medan elektromagnetik yang terukur oleh alat. LCD yang digunakan pada alat ini mempunyai lebar display 2 baris 16 kolom atau biasa disebut sebagai LCD Character 2x16, dengan 16 pin konektor, yang didifinisikan sebagai berikut:

PIN Nama Fungsi

1 VSS Ground voltage

2 VCC +5V

3 VEE Contrast voltage

4 RS

Register Select

0 = Instruction Register 1 = Data Register

5 R/W

Read/ Write, to choose write or read mode

0 = write mode 1 = read mode

6 E

Enable

0 = start to lacht data to LCD character

1= disable

7 DB0 LSB

8 DB1 -

9 DB2 -

10 DB3 -

11 DB4 -


(58)

13 DB6 -

14 DB7 MSB

15 BPL Back Plane Light

16 GND Ground voltage

Tabel 3.1 fungsi pinLCD character 2x16

Gambar 3.10 LCD character 2x16

Modul LCD terdiri dari sejumlah memory yang digunakan untuk display. Semua teks yang kita tuliskan ke modul LCD akan disimpan didalam memory ini, dan modul LCD secara berturutan membaca memory ini untuk menampilkan teks ke modul LCD itu sendiri.

Gambar 3.11 Peta memory LCD character 2x16

Pada peta memori diatas, daerah yang berwarna biru ( 00 s/d 0F dan 40 s/d 4F ) adalah display yang tampak. jumlahnya sebanyak 16 karakter per baris dengan dua baris. Angka pada setiap kotak adalah alamat memori yang bersesuaian dengan posisi dari layar. Dengan demikian dapat dilihat karakter


(59)

pertama yang berada pada posisi baris pertama menempati alamat 00h. dan karakter kedua yang berada pada posisi baris kedua menempati alamat 40h

Agar dapat menampilkan karakter pada display maka posisi kursor harus terlebih dahulu diset. Instruksi Set Posisi Kursor adalah 80h. dengan demikian untuk menampilkan karakter, nilai yang terdapat pada memory harus ditambahkan dengan 80h.

Sebagai contoh, jika kita ingin menampilkan huruf “B” pada baris kedua pada posisi kolom kesepuluh.maka sesuai dengan peta memory, posisi karakter pada kolom 10 dari baris kedua mempunyai alamat 4Ah, sehingga sebelum kita menampilkan huruf “B” pada LCD, kita harus mengirim instruksi set posisi kursor, dan perintah untuk instruksi ini adalah 80h ditambah dengan alamat 80h + 4Ah =0Cah. Sehingga dengan mengirim perintah 0Cah ke LCD, akan menempatkan kursor pada baris kedua dan kolom ke 11.


(60)

3.2 Perancangan Program

Alat ini dirancang untuk sistem parkir otomatis menggunakan koin. Diagram alir dari program yang akan dibuat adalah sebagai berikut:

MIKRO 1:

START

INISIALISASI

Ada koin dimasukkan?

Ada mobil keluar?

Periksa warna koin Warna koin

sesuai ? Lewatkan koin

Periksa masssa koin

Masakoin sesuai ?

Wadah diputar kanan 60 derajat dan diputar kiri 60

derajat Lewatkan koin

Wadah diputar kiri 60 derajat dan diputrar

kanan 60 derajat

Suruh mikro2 membuka gerbang masuk

Update display1

Hidupkan alamr

Update display2

Tuggu sampai mikro dua mengirimkan pesan bahwa gerbang masuk

telah dibuka Updiae display3 Suruh mikro2 menutup

gerbang masuk Tunggu sampai mikro dua mengirimkan pesan

bahwa gerbang masuk telah ditutup

Data = data - 1

Update display1 Data = data

+ 1 YA YA YA YA TIDAK TIDAK TIDAK TIDAK

Update display 1 : “jumlah maximum 10 sisa = data” Update display2 : “koin salah”

Update display3 : “Silahkan masuk”

Program pertama kali dimulai dari start, setelah itu dilakukan penginisialisasi program untuk memetakan port dan memori yang digunakan dalam program. Mikrokontroler akan memeriksa apakah ada koin dimasukkan


(61)

atau tidak, jika ada selanjutnya mikro memeriksa warna koin. Jika warnanya sesuai dilanjutkan dengan memeriksa berat koin, jika sesuai juga, maka koin diletakkan pada wadah yang benar dan mikro memerintahkan mikro yang satu lagi untuk membuka gerbang masuk dan data tempat kosong pada parkir dikurangi satu. Mikro satu akan menunggu sampai mikro dua membuka gerbang masuk dan mengirimkan pesan bahwa gerbang telah dibuka. Mikro 1 akan mengirimkan data pada display untuk menampilkan kalimat “silahkan masuk”. Setelah itu mikro akan memerintahkan mikro satu lagi untuk menutup gerbang masuk dan menunggu pesan dari mikro satu lagi bahwa gerbang telah ditutup, setelah itu mikro akan mengirimkan data yang akan ditampilkan pada display 1 dan mikro akan kembali ke program utama

Jika dari pemeriksaan mikro bahwa ada koin yang dimasukkan beratnya tidak sesuai, maka mikro akan melewatkan koin, dan ditempatkan pada wadah yang salah, kemudian mikro akan menghidupkan alarm dan akan ditampilkan pada display yang berisi kalimat “koin salah”, setelah itu mikro akan kembali ke program utama

Jika setelah diperiksa oleh mikro bahwa warna koin yang diperiksa tidak sesuai, maka mikro akan memeriksa warna koin tersebut kemudian akan melewatkan koin, dan ditempatkan pada wadah yang salah, kemudian mikro akan memerintahkan untuk menghidupkan alaram dan mengirimkan data untuk ditampilkan pada display yang berisi kalimat “koin salah”

Jika mikro memeriksa bahwa tidak ada koin yang dimasukkan , maka mikro 1 akan menunggu pesan dari mikro 2 apakah ada mobil yang keluar, jika ada maka data tempat kosong pada parkir ditambah satu dan mikro akan


(62)

menampilkan data pada display 1, setelah itu mikro akan kembali memeriksa apakah ada koin yang dimasukkan

Jika mikro 2 tidak mengirimkan pesan bahwa ada mobil yang keluar maka, mikro 1 akan memeriksa apakah ada koin yang dimasukkan begitu seterusnya.

MIKRO 2: START INISIALISASI Mobil mau masuk? Ada kendaraan mau keluar? Mobil sudah masuk? Buka gebang masuk Kirim pesan bahwa gerbang sudah dibuka Tuggu kenraan masuk Tutup gebang masuk Data = data + 1

Buka gerbang keluar Tampilkan kata “terimakasih” Pada display tutup gerbang keluar Kendraan sudah keluar? Kirim pesan bahwa gerbang sudah ditutup

Kirim pesan ke mikro1 bahwa ada kendraan keluar Update display YA TIDAK TIDAK TIDAK TIDAK YA YA YA

Program dimulai dengan start dan dilakuakn proses inisialisasi untuk memetakan port dan memori yang digunakan dalam program. Selanjutnya mikro akan emunggu perintah dari mikro1, atau ada kendraan keluar. Begitu seterusnya

Jika ada perintah dari mikro satu untuk membuka gerbang masuk, maka mikrokontroler akan membuka gerbang masuk sebesar 90 derajat, dan menunggu sampai sensor fotodioada mendetaksi bahwa kendraan sudah benar-benar masuk,


(63)

dan selanjutnya mikrokontroler mengirimkan pesan ke mikro 1 bahwa gerbang telah dibuka. Selanjutnya mikrokontroler kembali ke routin utama

Jika ada perintah dari mikro 1 untuk menutup grbang, maka mikro satu akan menghitung kendraan masuk, kemudian gerbnag ditutup dan elanjutnya dikirim pesan kepada mikro 1 bahwa gerbang telah ditutup.

Jika sensor mendeteksi ada kendraan yang mau keluar, maka mikrokontroler akan membuka gerbang keluar, dan menunggu sampai kendraan benar-benar keluar, dan selanjutnya menutup gerbang keluar, dan dikirim pesan kepada mikro 1 bahwa ada kendraan yang telah keluar dan selanjutnya program kembali ke program utama.

Program Sistem Parkir Otomatis Menggunakan Koin Berbasis Mikrokontroler AT89S52 :

Mikrokontroler 1 : LDR equ p2.1 pas equ p2.3 com1 equ p2.0 RS EQU P2.5 RW EQU P2.6 EN EQU P2.7 tekan equ p2.3 clr p2.4 setb com1


(64)

masuk equ p2.2 clr p2.2

mov 20h,#'0' mov r4,#10 mov p1,#0 clr p2.3

acall silahkan utama:

jb masuk,koin jb p1.2,adakeluar

sjmp utama

adakeluar: inc r4 setb p1.3 jb p1.2,$ acall delay clr p1.3 acall silahkan sjmp utama


(65)

koin:

acall delaymax acall delaymax jb LDR,warna_cocok

jnb LDR,tkcocok sjmp koin

tkcocok: ajmp takcocok

warna_cocok: acall delay

acall lewatkankoin acall delay

jnb p2.3,salahdah acall putarkanan acall delay acall delay acall putarkiri acall tutup dec r4


(66)

acall mikro1

acall silahkan acall delay

CJNE R4,#0,utama sjmp sesak

sesak: acall penuh bandel:

jb masuk,bandal jb p1.2,adakeluar sjmp bandel

bandal:

acall delaymax acall lewatkankoin acall putarkiri acall delay acall delay acall putarkanan acall tutup


(67)

setb p2.4 acall delaymax acall delaymax clr p2.4

sjmp bandel

takcocok:

acall lewatkankoin salahdah:

acall putarkiri acall delay acall delay acall putarkanan acall tutup setb p2.4 acall koins acall delaymax acall delaymax acall silahkan clr p2.4 ajmp utama


(68)

lewatkankoin: mov p3,#0 mov r1,#14 lewatsaja:

setb p3.4 acall delay clr p3.4 setb p3.5 acall delay clr p3.5 setb p3.6 acall delay clr p3.6 setb p3.7 acall delay clr p3.7

djnz r1,lewatsaja ret

tutup: mov p3,#0 mov r1,#15 tarik:


(69)

setb p3.7 acall delay clr p3.7 setb p3.6 acall delay setb p3.5 clr p3.6 acall delay setb p3.4 clr p3.5 acall delay clr p3.4 djnz r1,tarik ret

putarkanan: mov p3,#0 mov r1,#14 kanan:

setb p3.0 acall delay setb p3.1 clr p3.0


(70)

acall delay setb p3.2 clr p3.1 acall delay setb p3.3 clr p3.2 acall delay clr p3.3 djnz r1,kanan ret

putarkiri: mov p3,#0 mov r1,#10 kiri:

setb p3.3 acall delay setb p3.2 clr p3.3 acall delay setb p3.1 clr p3.2 acall delay setb p3.0


(71)

clr p3.1 acall delay clr p3.0 djnz r1,kiri ret

mikro1: clr com1 acall delay

acall silahkanmasuk jnb p1.0,$

setb com1 ret

delay:

mov r2,#0ffh deli: mov r3,#10h

djnz r3,$ djnz r2,deli ret

delaymax: mov r7,#060h


(72)

de:

ACALL delay djnz r7,de ret

konversi: mov 21h,#' '

satu:

cjne r5,#1,dua mov r5,#'1' ret

dua:

cjne r5,#2,tiga mov r5,#'2' ret

tiga:

cjne r5,#3,empat mov r5,#'3' ret

empat:

cjne r5,#4,lima mov r5,#'4' ret


(73)

lima:

cjne r5,#5,enam mov r5,#'5' ret

enam:

cjne r5,#6,tujuh mov r5,#'6' ret

tujuh:

cjne r5,#7,lapan mov r5,#'7' ret

lapan:

cjne r5,#8,sembilan mov r5,#'8'

ret sembilan:

cjne r5,#9,sepuluh mov r5,#'9'

ret

sepuluh:

cjne r5,#10,anti_error mov r5,#'0'


(74)

mov 21h,#'1' ret

anti_error: mov r5,#'0' mov 21h,#'1' ret

silahkan:

mov a,r4 mov r5,a acall konversi mov 20h,r5

MOV A,#038H LCALL SCAN ACALL PENAMPIL ACALL SCAN MOV A,#'J' ACALL KIRIM MOV A,#'L' ACALL KIRIM


(75)

mOV A,#'H' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#'M' ACALL KIRIM MOV A,#'A' ACALL KIRIM MOV A,#'K' ACALL KIRIM MOV A,#'S' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#':' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#'1' ACALL KIRIM MOV A,#'0' ACALL KIRIM MOV A,#' ' ACALL KIRIM


(76)

MOV A,#0c0H LCALL SCAN MOV A,#'S' ACALL KIRIM MOV A,#'I' ACALL KIRIM MOV A,#'S' ACALL KIRIM MOV A,#'A' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#':' acall KIRIM MOV A,#' ' ACALL KIRIM MOV A,21h ACALL KIRIM MOV A,20h ACALL KIRIM RET

silahkanmasuk:


(77)

LCALL SCAN ACALL PENAMPIL ACALL SCAN MOV A,#'S' ACALL KIRIM MOV A,#'I' ACALL KIRIM MOV A,#'L' ACALL KIRIM MOV A,#'A' ACALL KIRIM mOV A,#'H' ACALL KIRIM MOV A,#'K' ACALL KIRIM MOV A,#'A' ACALL KIRIM MOV A,#'N' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#'M' ACALL KIRIM MOV A,#'A'


(78)

ACALL KIRIM MOV A,#'S' ACALL KIRIM MOV A,#'U' ACALL KIRIM MOV A,#'K' ACALL KIRIM MOV A,#' ' ACALL KIRIM

MOV A,#0c0H LCALL SCAN MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' acall KIRIM


(79)

MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM RET

ret koins:

MOV A,#038H LCALL SCAN

ACALL PENAMPIL ACALL SCAN MOV A,#'M' ACALL KIRIM MOV A,#'A' ACALL KIRIM mOV A,#'A' ACALL KIRIM MOV A,#'F' ACALL KIRIM MOV A,#' '


(80)

ACALL KIRIM MOV A,#'K' ACALL KIRIM MOV A,#'O' ACALL KIRIM MOV A,#'I' ACALL KIRIM MOV A,#'N' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#'S' ACALL KIRIM MOV A,#'L' ACALL KIRIM MOV A,#'H' ACALL KIRIM

MOV A,#0c0H LCALL SCAN MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM


(81)

MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' acall KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM RET

penuh:

MOV A,#038H LCALL SCAN ACALL PENAMPIL ACALL SCAN ACALL KIRIM mOV A,#'P'


(82)

ACALL KIRIM MOV A,#'A' ACALL KIRIM MOV A,#'R' ACALL KIRIM MOV A,#'K' ACALL KIRIM mOV A,#'I' ACALL KIRIM mOV A,#'R' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#'P' ACALL KIRIM MOV A,#'E' ACALL KIRIM mOV A,#'N' ACALL KIRIM MOV A,#'U' ACALL KIRIM MOV A,#'H' ACALL KIRIM MOV A,#'!'


(83)

ACALL KIRIM MOV A,#' ' ACALL KIRIM

ACALL KIRIM

MOV A,#0c0H LCALL SCAN MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' acall KIRIM MOV A,#' ' ACALL KIRIM MOV A,#' ' ACALL KIRIM


(84)

MOV A,#' ' ACALL KIRIM RET

PENAMPIL:

MOV A,#00CH LCALL SCAN MOV A,#006H LCALL SCAN MOV A,#080H LCALL SCAN RET

SCAN:

MOV P0,A CLR RS CLR RW SETB EN

CLR EN

LCALL DELAY RET


(85)

KIRIM:

MOV P0,A SETB RS CLR RW SETB EN CLR EN

LCALL DELAY RET

End

Mikrokontroler 2 : com1 equ p2.0 fotodioda1 equ p2.2 fotodioda2 equ p2.4 fotodioda3 equ p2.3 RS EQU P2.5 RW EQU P2.6 EN EQU P2.7 mov p0,#0 mov p1,#0

mov p3,#0 mov r4,#0


(86)

mov r6,#0 acall silahkan

utama:

jnb com1,mikro1

jnb fotodioda2,kendraankeluar sjmp utama

kendraankeluar:

acall buka_palangkeluar ACALL silahkankeluar jb fotodioda3,$

jnb fotodioda3,$

acall tutup_palangkeluar acall silahkan

sjmp utama

mikro1:


(87)

jb fotodioda1,$ jnb fotodioda1,$

acall tutup_palangmasuk setb p1.0

acall delay acall delay acall delay clr p1.0 sjmp utama

buka_palangmasuk: mov p3,#0

mov r1,#13 tarik:

setb p3.7 acall delay clr p3.7 setb p3.6 acall delay setb p3.5 clr p3.6 acall delay setb p3.4


(88)

clr p3.5 acall delay clr p3.4 djnz r1,tarik ret

tutup_palangmasuk: mov p3,#0

mov r1,#13 sjmp itung refles:

acall silahkan mon:

setb p3.4 acall delay clr p3.4 setb p3.5 acall delay setb p3.6 clr p3.5 acall delay setb p3.7 clr p3.6 acall delay


(89)

clr p3.7 djnz r1,mon ret

itung: inc r4

cjne r4,#12,refles mov r4,#0

inc r6 sjmp refles

tutup_palangkeluar: mov p3,#0

mov r1,#12 kanan:

setb p3.0 acall delay setb p3.1 clr p3.0 acall delay setb p3.2 clr p3.1 acall delay setb p3.3


(90)

clr p3.2 acall delay clr p3.3 djnz r1,kanan ret

buka_palangkeluar: mov p3,#0

mov r1,#13 setb p1.2 acall delay jnb p1.3,$ clr p1.2

kiri:

setb p3.3 acall delay setb p3.2 clr p3.3 acall delay setb p3.1 clr p3.2 acall delay setb p3.0


(91)

clr p3.1 acall delay clr p3.0 djnz r1,kiri ret

delaymin:

mov r2,#0ffh deli: mov r3,#05h

djnz r3,$ djnz r2,deli ret

delay: mov r7,#08h

de:

ACALL delaymin djnz r7,de

ret

konversi:


(92)

mov r5,#'0' ret

satu:

cjne r5,#1,dua mov r5,#'1' ret

dua:

cjne r5,#2,tiga mov r5,#'2' ret

tiga:

cjne r5,#3,empat mov r5,#'3' ret

empat:

cjne r5,#4,lima mov r5,#'4' ret

lima:

cjne r5,#5,enam mov r5,#'5' ret

enam:


(93)

mov r5,#'6' ret

tujuh:

cjne r5,#7,lapan mov r5,#'7' ret

lapan:

cjne r5,#8,sembilan mov r5,#'8'

ret sembilan:

cjne r5,#9,anti_error mov r5,#'9'

ret

anti_error: ret

silahkan:

mov a,r4 mov r5,a acall konversi mov 20h,r5


(94)

mov a,r6 mov r5,a acall konversi mov 21h,r5

MOV A,#038H LCALL SCAN

ACALL PENAMPIL ACALL SCAN MOV A,#'J' ACALL KIRIM MOV A,#'L' ACALL KIRIM mOV A,#'H' ACALL KIRIM MOV A,#' ' ACALL KIRIM MOV A,#'M' ACALL KIRIM MOV A,#'A' ACALL KIRIM MOV A,#'K' ACALL KIRIM MOV A,#'S'


(1)

4.1.5 Pengujian Rangkaian Sirine

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

Selanjutnya buzzer dihubungkan dengan mikrokontroler dan mikrokontroler diberi program sederhana untuk megaktipkan buzzer. Program yang diisikan ke mikrokontroler untuk mengaktipkan buzzer adalah :

Setb P0.0 . . .

Perintah di atas akan memberikan logika high (1) atau tegangan 5 volt. pada P0.0, sehingga dengan demikian buzzer akan berbunyi.

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


(2)

4.1.7 Pengujian LCD

Bagian ini hanya terdiri dari sebuah LCD dot matriks 2 x 16 karakter yang berfungsi sebagai tampilan hasil pengukuran dan tampilan dari beberapa keterangan. LCD dihubungkan langsung ke Port 0 dari mikrokontroler yang berfungsi mengirimkan data hasil pengolahan untuk ditampilkan dalam bentuk alfabet dan numerik pada LCD.

AT89S52

AT89S52

Gambar 4.5 Interfacing LCD 2x16 dengan mikrokontroller AT89S52

Display karakter pada LCD diatur oleh pin EN, RS dan RW: Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa anda sedang mengirimkan sebuah data. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low “0” dan set ( high ) pada dua jalur kontrol yang lain RS dan RW. Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika high ”1”, maka program akan melakukan pembacaan


(3)

memori dari LCD. Sedangkan pada aplikasi umum pin RW selalu diberi logika low ( 0 )

berdasarkan keterangan di atas maka kita sudah dapat membuat progam untuk menampilkan karaker pada display LCD. Adapun program yang diisikan ke mikrokontroller untuk menampilkan karakter pada display LCD adalah sebagai berikut:

rs bit p2.0

rw bit p2.1

en bit p2.2

kirim_karakter: call data_penampil mov a,#'H' call kirim_data mov a,#'e' call kirim_data mov a,#'l' call kirim_data mov a,#'l' call kirim_data mov a,#'o' call kirim_data jmp kirim_karakter data_penampil:

mov a,#80h ;posisi awal karakter

call data_scan ret kirim_data: mov p0,a setb rs clr rw clr en call delay ret end

Program di atas akan menampilkan kata “Hello” di baris pertama pada display LCD 2x16.


(4)

Pada alat dalam alat ini, LCD 1 akan menampilkan JLH MAKS : (sesuai angka yang diinginkan) dibaris pertama dan SISA : (sesuai dengan sisa mobil yang masih dapat masuk diarea parkis sesuai jumlah maksimum) dibaris kedua. Disaat ada yang memasukkan koin akan tam pil di LCD tampilan SLHKAN MASUK (jika koin benar) dan tampilan MAAF KOIN ANDA SLH ( jika koin yang dimasukkan salah). Tampilan LCD akan kembali seperti awal. Yaitu JLH MAKS : (sesuai angka yang diinginkan) dibaris pertama dan SISA : (sesuai dengan sisa mobil yang masih dapat masuk diarea parkis sesuai jumlah maksimum) dibaris kedua.

Pada alat dalam alat ini, LCD 2 akan menampilkan JLH MAKS : (sesuai angka yang diinginkan) dibaris pertama dan JLH MOBIL MSK : (sesuai penambahan setiap mobil yang memasuki area parkiran) dibaris kedua ketika ada mobil yang keluar maka pesan yang akan ditampilkan yaitu TERIMAKASIH dan Tampilan LCD akan kembali seperti awal. Yaitu JLH MAKS : (sesuai angka yang diinginkan) dibaris pertama dan JLH MOBIL MSK : (sesuai penambahan setiap mobil yang memasuki area parkiran) dibaris kedua.


(5)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

1. Alat yang dirancang hanya mampu menjalankan sistem parkir otomatis yang menggunakan koin sebagai syarat masuknya , dimana koin tersebut di seleksi melalui sensor warna LDR dan sensor limit switch dengan mikrokontroler sebagai central processingnya dalam mengolah data yang ditampilkan didalam LCD dengan sirine sebagai tanda peringatannya. 2. Sensor warna LDR adalah salah satu sensor yang efektif dalam membaca

warna koin.

3. Mikrokontroler merupakan pusat pengolah data yang cukup handal dalam merancang sistem parkir otomatis menggunakan koin dan menampilkan pesan pada LCD.

4. Sistem parkir otomatis menggunakan koin ini dapat bekerja cepat dan teliti dalam menyeleksi koin sesuai yang ditentukan yang digerakkan secara otomatis.

5.2 Saran

1. Agar pembacaan koin lebih akurat sebaiknya digunakan sensor warna yang lebih baik agar warna koin lebih bervariasi.

2. Sensor berat yang digunakan lebih baik diguakan sensor berat yang dapat membaca berat koin tersebut.


(6)

DAFTAR PUSTAKA

Agfianto Eko Putra, 2002, ”Belajar Mikrokontroler AT89S51/52/653 Teori dan Aplikasi”, Edisi 2, Yogyakarta : Penerbit Gava Media.

Bhisop, Owen, 2004, Dasar-dasar Elektronika, Jakarta : Erlangga

Endra Pirowarno, 1998, ” Mikroprocessor dan Interfacing”, Edisi 1, Yogyakarta : Penerbit Andi.

Usman, 2008, ”Teknik Antarmuka + Pemograman Mikrokontroler AT89S52 ”, Edisi 1, Yogyakarta : Penerbit Andi.

Widodo Budiharto, 2007, ”Sistem Akuisisi Data”, Jakarta : Penerbit PT Elex Media Komputindo.

Diakses tanggal 15 Desember 2009