RANCANG BANGUN MINIATUR SECURITY RUANGAN MENGGUNAKAN PINTU OTOMATIS BERBASIS
MIKROKONTROLER AVR ATmega8535
SKRIPSI
NOVI ELDIARTI SIMATUPANG 050801058
PROGRAM STUDI SARJANA FISIKA DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
RANCANG BANGUN MINIATUR SECURITY RUANGAN MENGGUNAKAN PINTU OTOMATIS BERBASIS
MIKROKONTROLER AVR ATmega8535
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains
NOVI ELDIARTI SIMATUPANG 050801058
PROGRAM STUDI SARJANA FISIKA DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : RANCANG BANGUN MINIATUR SECURITY
RUANGAN MENGGUNAKAN PINTU OTOMATIS BERBASIS MIKROKONTROLER AVR ATmega8535
Kategori : SKRIPSI
Nama : NOVI ELDIARTI SIMATUPANG
Nomor Induk Mahasiswa : 050801058
Program Studi : SARJANA (S1) FISIKA
Departemen : FISIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (MIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juni 2010
Komisi Pembimbing :
Diketahui
Departemen Fisika FMIPA USU Pembimbing
Ketua,
Dr. Marhaposan Situmorang Drs. Nasir Saleh, M.Eng.Sc
PERNYATAAN
RANCANG BANGUN MINIATUR SECURITY RUANGAN MENGGUNAKAN PINTU OTOMATIS BERBASIS
MIKROKONTROLER AVR ATmega8535
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juni 2010
PENGHARGAAN
Puji syukur penulis haturkan ke hadirat Allah SWT atas karunia-Nya yang telah memberikan kesehatan dan kesabaran kepada penulis sehingga dapat menyelesaikan skripsi yang berjudul: “Rancang Bangun Miniatur Security Ruangan Menggunakan Pintu Otomatis Berbasis Mikrokontroler AVR Atmega8535”.
Ucapan terima kasih penulis sampaikan kepada Bapak Drs. Nasir Saleh M.Eng.Sc, selaku dosen pembimbing yang telah memberikan panduan dan masukan demi sempurnanya skripsi ini. Ucapan terima kasih juga penulis ucapkan kepada Bapak Dr. Marhaposan Situmorang selaku Ketua Departemen Fisika yang telah memberikan semangat, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Bapak dan Ibu Staf Pengajar Departemen Fisika FMIPA USU terima kasih atas ilmu yang diberikan selama ini, semoga menjadi ilmu yang bermanfaat.
Keluargaku tercinta terkhusus kedua orangtua (Ayahanda Syafaruddin Simatupang dan Ibunda Yuslaini Pane), terima kasih atas kasih sayang, kerja keras dan doa yang telah diberikan selama ini, jerih usaha Ayah dan Bunda tidak akan sia-sia. Terima kasih buat Sahabatku Adbizar yang telah membantu penulis dalam membuat miniaturnya.
Teman-teman di Baitul Mukhlisin, terima kasih atas kebersamaan dan bantuannya untuk penulis. Rekan-rekan kuliahku, walau kita tidak selalu bersama tetapi doa, dukungan dan motivasi kalian sangat berharga bagi penulis. Kita pasti bisa memberikan yang terbaik buat almamater USU dan umat. Semoga Allah memberikan yang terbaik, serta segala pihak yang tidak dapat disebutkan satu persatu, baik secara langsung maupun tidak langsung telah membantu penulis menyelesaikan skripsi ini, terima kasih.
Penulis menyadari bahwa skripsi ini masih jauh dari sempurna. Oleh karena itu, penulis mengharapkan kritik dan saran yang bersifat membangun demi kesempurnaan skripsi ini. Akhir kata, sesungguhnya Allah Maha Kuasa atas apa yang dikehendaki-Nya.
Medan, Juni 2010
ABSTRAK
STAKE FORM MINIATURE SECURITY ROOM USE AUTOMATIC DOOR BASED ON MICROCONTROLLER AVR ATmega8535
ABSTRACT
DAFTAR ISI
Halaman
Persetujuan i
Pernyataan ii
Penghargaan iii
Abstrak iv
Abstract v
Daftar Isi vi
Daftar Tabel viii
Daftar Gambar ix
Bab 1 Pendahuluan 1
1.1 Latar Belakang 1
1.2 Tujuan 2
1.3 Manfaat Penelitian 2
1.4 Pembatasan Masalah 2
1.5 Sistematika Penulisan 3
Bab 2 Landasan Teori 4
2.1 Mikrokontroler ATmega8535 4
2.1.1 Konstruksi ATmega8535 5
2.1.2 Pin-pin Mikrokontroler ATmega8535 7
2.2 Motor DC 9
2.3 Led Super Bright Merah dan Photo Dioda 12
2.4 Rangkaian Sensor dan Komparator 12
2.5 Bahasa Pemrograman ATmega8535 14
2.6 Software ATmega8535 Editor dan Simulator 14
2.6.1 Software ATmega8535 Editor 14
2.6.2 Software Downloader 15
Bab 3 Metode Penelitian 16
3.1 Perancangan dan Pembuatan Perangkat Keras 16 3.1.1 Perancangan Konstruksi Miniatur Security Ruangan 16
3.1.2 Pembuatan Rangkaian Elektronik 17
3.1.2.1 Rangkaian Power Suplay (PSA) 19
3.1.2.2 Rangkaian Sistem Minimum ATmega8535 20
3.1.2.3 Pembuatan Rangkaian Sensor dan Komparator 22
3.1.2.4 Rangkaian Driver 23
3.1.3 Bentuk Konstruksi Akhir Miniatur Security Ruangan
Menggunakan Pintu Otomatis Berbasis Mikrokontroler AVR 25
3.2 Perancangan dan Pembuatan Perangkat Lunak 25
3.2.1 Software Pendukung 26
3.2.2 Deskripsi Alat Kerja 28
3.2.3 Flowchart Sistem Security Ruangan 29
3.2.4 Bahasa Pemrograman 29
3.2.5 Mikrokontroler AVR ATmega8535 30
4.1 Pengujian Alat 32
4.2 Analisa 33
Bab 5 Penutup 34
5.1 Kesimpulan 34
5.2 Saran 34
Daftar Pustaka 35
DAFTAR TABEL
Halaman
Tabel 2.1 Fungsi Khusus Port B 8
Tabel 2.2 Fungsi Khusus Port C 8
Tabel 2.1 Fungsi Khusus Port D 8
Tabel 2.4 Skala Clock Timer/Counter 11
DAFTAR GAMBAR
Halaman
Gambar 2.1 Konfigurasi pin ATmega8535(Data Sheet AVR) 7
Gambar 2.2 Sebuah Motor DC (Innovative Electronics) 9
Gambar 2.3 Konfigurasi pin IC L298 (Data sheet L298) 12
Gambar 2.4 IC LM 324 (Data sheet LM324) 13
Gambar 2.5 Rangkaian sensor garis menggunakan IC LM 324 13
Gambar 2.6 Tampilan Code Vision AVR 15
Gambar 2.7 Tampilan Ponyprog2000 15
Gambar 3.1 Perancangan konstruksi miniatur security ruangan 16
Gambar 3.2 Instalasi rangkaian elektronik 17
Gambar 3.3 Diagram blok pintu otomatis 17
Gambar 3.4 Rangkaian lengkap security ruangan berbasis
mikrokontroler AVR 18
Gambar 3.5 Rangkaian supplay IC AN7805 19
Gambar 3.6 Skematik rangkaian system minimum ATmega8535 21
Gambar 3.7 Rangkaian downloader 21
Gambar 3.8 Atmel downloader programmer 22
Gambar 3.9 Rangkaian komparator LM 324 23
Gambar 3.10 Konfigurasi pin L298 23
Gambar 3.11 Rangkaian driver L298 pada PCB 24
Gambar 3.12 Bentuk akhir miniatur security ruangan berbasis
Mikrokontroler AVR 25
Gambar 3.13 Tampilan Code Vision AVR 26
Gambar 3.14 Tampilan PonyProg2000 27
Gambar 3.15 Flowchart perangkat lunak alat 29
ABSTRAK
STAKE FORM MINIATURE SECURITY ROOM USE AUTOMATIC DOOR BASED ON MICROCONTROLLER AVR ATmega8535
ABSTRACT
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Perbankan merupakan salah satu lembaga yang sangat berperan penting dalam
perekonomian bangsa. Hampir semua pelaku ekonomi menyimpan uangnya dalam
bank, baik dalam jumlah kecil atau dalam skala besar. Tidak hanya uang, bank juga
dapat menyimpan surat-surat berharga seperti surat kepemilikan rumah, gedung, akta
tanah, tanda kepemilikan kendaraan bermotor dan lain sebagainya.
Tingginya angka pencurian menyebabkan tuntutan untuk peningkatan
keamanan atas surat-surat berharga menjadi semakin tinggi. Keterbatasan kemampuan
manusia untuk dapat terus-menerus menjaganya menjadi pendorong utama untuk
munculnya sistem pengaman yang dapat memberikan pengamanan yang baik dan
sekaligus memberikan rasa aman bagi pemilik surat-surat berharga tersebut. Rasanya
kurang efisien jika tugas itu dikerjakan oleh manusia.
Sistem pengamanan yang saat ini banyak dan sering digunakan adalah sistem
pengamanan mekanik, seperti berbagai macam kunci mekanik. Namun demikian,
terasa pula bahwa sistem keamanan mekanik tidak lagi dapat memberikan
pengamanan yang memuaskan sehingga kemudian dirasakan perlunya sistem
pengamanan baru ataupun tambahan, seperti pengaman lain pada sistem pengaman
sebelumnya.
Pada penelitian ini dirancang suatu alat yang mensimulasikan sistem
berharga dari pihak-pihak yang tidak bertanggung jawab, sehingga dapat dijaga
keamanan dan kerahasiaannya. Sistem pengamanan ini menggunakan pintu otomatis.
Pintu otomatis yang ada pada umumnya akan terbuka jika ada orang yang
akan masuk/keluar dari pintu tersebut, dan pintu akan menutup sendiri secara otomatis
jika dalam beberapa menit tidak ada orang yang akan masuk/keluar dari pintu
tersebut. Tetapi dalam hal keamanan, adakalanya pintu otomatis diset sedemikian agar
tidak semua orang dapat memasuki ruangan yang memiliki sistem pengamanan
tersebut.
1.2 Tujuan
Adapun tujuan dari perancangan alat ini, antara lain:
1. Merancang dan membuat alat yang dapat mensimulasikan pengamanan ruangan
dari orang yang tidak berkepentingan.
2. Menggunakan led super bright merah dan photo dioda sebagai sensor halangan
terhubung ke mikrokontroler.
3. Menggunakan bahasa C sebagai bahasa pemrograman mikrokontroler.
1.3 Manfaat Penelitian
Dengan pengembangan lebih lanjut, miniatur security ruangan dapat digunakan
sebagai sistem security rumah/kantor sesuai karakteristik sensor yang digunakan.
1.4 Pembatasan Masalah
Dikarenakan banyaknya pembahasan pada pintu otomatis ini, maka penulis
membatasi masalah pada:
1. Mikrokontroler AVR ATmega8535 sebagai alat kontrol pintu otomatis.
2. Sensor halangan yang terbuat dari led super bright merah dan photo dioda.
1.5 Sistematika Penulisan
Sistematika penulisan skripsi ini terbagi menjadi beberapa bagian utama yaitu:
BAB I PENDAHULUAN
Bab ini berisikan pendahuluan yang menjelaskan mengenai latar
belakang perumusan masalah, tujuan, batasan masalah, dan sistematika
penulisan tugas akhir.
BAB II LANDASAN TEORI
Bab ini dijelaskan tentang teori pendukung yang digunakan untuk
pembahasan dan cara kerja dari rangkaian. Teori pendukung itu antara
lain tentang mikrokontroler AVR Atmega8535 (hardware dan
software), photodioda, led super bright merah dan bahasa program
yang digunakan.
BAB III METODE PENELITIAN
Bab ini membahas tentang perancangan dan pembuatan perangkat
keras alat yang meliputi perancangan miniatur dan pembuatan
rangkaian elektronik. Pada bab ini juga dibahas pembuatan perangkat
lunak untuk pemrograman mikrokontroler ATmega8535.
BAB IV HASIL DAN ANALISA
Bab ini berisikan pengujian alat dan analisa tugas akhir yang telah
dibuat.
BAB V KESIMPULAN DAN SARAN
BAB 2
LANDASAN TEORI
2.1 Mikrokontroler Atmega8535
Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis atau
dihapus (Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis dan
manual pada perangkat elektronika.
Beberapa tahun terakhir, mikrokontroler sangat banyak digunakan terutama
dalam pengontrolan robot. Seiring perkembangan elektronika, mikrokontroler dibuat
semakin kompak dengan bahasa pemrograman yang juga ikut berubah. Salah satunya
adalah mikrokontroler AVR (Alf and Vegard’s Risc processor) ATmega8535 yang
menggunakan teknologi RISC (Reduce Instruction Set Computing) dimana program
berjalan lebih cepat karena hanya membutuhkan satu siklus clock untuk mengeksekusi
satu instruksi program. Secara umum, AVR dapat dikelompokkan menjadi 4 kelas,
yaitu kelas ATtiny, keluarga AT90Sxx, keluarga ATmega, dan AT86RFxx. Pada
dasarnya yang membedakan masing-masing kelas adalah memori, peripheral, dan
fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan
hampir sama.
Mikrokontroler AVR ATmega8535 memiliki fitur yang cukup lengkap.
Mikrokontroler AVR ATmega8535 telah dilengkapi dengan ADC internal, EEPROM
internal, Timer/Counter, PWM, analog comparator, dll (M.Ary Heryanto, 2008).
Sehingga dengan fasilitas yang lengkap ini memungkinkan kita belajar
mikrokontroler keluarga AVR dengan lebih mudah dan efisien, serta dapat
Fitur-fitur yang dimiliki oleh mikrokontroler ATmega8535 adalah sebagai
berikut:
1. Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D.
2. ADC internal sebanyak 8 saluran.
3. Tiga buah Timer/Counter dengan kemampuan pembandingan.
4. CPU yang terdiri atas 32 buah register.
5. SRAM sebesar 512 byte.
6. Memori Flash sebesar 8 kb dengan kemampuan Read While Write.
7. Port antarmuka SPI
8. EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
9. Antarmuka komparator analog.
10. Port USART untuk komunikasi serial.
11. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz.
12. Dan lain-lainnya.
2.1.1 Konstruksi ATmega8535
Mikrokontroler ATmega8535 memiliki 3 jenis memori, yaitu memori program,
memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah.
a. Memori program
ATmega8535 memiliki kapasitas memori progam sebesar 8 Kbyte yang
terpetakan dari alamat 0000h – 0FFFh dimana masing-masing alamat
memiliki lebar data 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu
bagian program boot dan bagian program aplikasi.
b. Memori data
ATmega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi
menjadi 3 bagian yaitu register serba guna, register I/O dan SRAM.
ATmega8535 memiliki 32 byte register serba guna, 64 byte register I/O yang
dapat diakses sebagai bagian dari memori RAM (menggunakan instuksi LD
atau ST) atau dapat juga diakses sebagai I/O (menggunakan instruksi IN atau
OUT), dan 512 byte digunakan untuk memori data SRAM.
ATmega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari
memori program maupun memori data. Memori EEPROM ini hanya dapat
diakses dengan menggunakan register-register I/O yaitu register EEPROM
Address, register EEPROM Data, dan register EEPROM Control. Untuk
mengakses memori EEPROM ini diperlakukan seperti mengakses data
eksternal, sehingga waktu eksekusinya relatif lebih lama bila dibandingkan
dengan mengakses data dari SRAM.
ATmega8535 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran
ADC internal dengan fidelitas 10 bit. Dalam mode operasinya, ADC ATmega8535
dapat dikonfigurasi, baik secara single ended input maupun differential input. Selain
itu, ADC ATmega8535 memiliki konfigurasi pewaktuan, tegangan referensi, mode
operasi, dan kemampuan filter derau yang amat fleksibel, sehingga dengan mudah
disesuaikan dengan kebutuhan ADC itu sendiri.
ATmega8535 memiliki 3 modul timer yang terdiri dari 2 buah timer/counter 8
bit dan 1 buah timer/counter 16 bit. Ketiga modul timer/counter ini dapat diatur dalam
mode yang berbeda secara individu dan tidak saling mempengaruhi satu sama lain.
Selain itu, semua timer/counter juga dapat difungsikan sebagai sumber interupsi.
Masing-masing timer/counter ini memiliki register tertentu yang digunakan untuk
mengatur mode dan cara kerjanya.
Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi
serial syncrhronous kecepatan tinggi yang dimiliki oleh ATmega8535. Universal
Syncrhronous and Asyncrhronous Serial Receiver and Transmitter (USART) juga
merupakan salah satu mode komunikasi serial yang dimiliki oleh ATmega8535.
USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat
digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan
modul-modul eksternal termasuk PC yang memiliki fitur UART.
USART memungkinkan transmisi data baik secara syncrhronous maupun
asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART.
Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun
Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock
sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan
secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous
hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode
syncrhronous harus 3 pin yaitu TXD, RXD dan XCK.
2.1.2 Pin-pin pada Mikrokontroler ATmega8535
Gambar 2.1 Konfigurasi pin ATmega8535 (Data Sheet AVR)
Konfigurasi pin ATmega8535 dengan kemasan 40 pin DIP (Dual Inline
Package) dapat dilihat pada gambar 2.1. Dari gambar di atas dapat dijelaskan fungsi
dari masing-masing pin Atmega8535 sebagai berikut:
1. VCC merupakan pin yang berfungsi sebagai masukan catu daya.
2. GND merukan pin Ground.
3. Port A (PortA0…PortA7) merupakan pin input/output dua arah dan pin masukan
ADC.
4. Port B (PortB0…PortB7) merupakan pin input/output dua arah dan dan pin
fungsi khusus, seperti dapat dilihat pada tabel di bawah ini.
Tabel 2.1 Fungsi Khusus Port B
Pin Fungsi Khusus
PB7 SCK (SPI Bus Serial Clock)
PB6 MISO (SPI Bus Master Input/ Slave Output)
PB5 MOSI (SPI Bus Master Output/ Slave Input)
PB4 SS (SPI Slave Select Input)
PB3
AIN1 (Analog Comparator Negative Input)
OC0 (Timer/Counter0 Output Compare Match Output)
PB2
AIN0 (Analog Comparator Positive Input) INT2 (External Interrupt 2 Input)
PB1 T1 (Timer/ Counter1 External Counter Input)
PB0
T0 T1 (Timer/Counter External Counter Input) XCK (USART External Clock Input/Output)
4. Port C (PortC0…PortC7) merupakan pin input/output dua arah dan pin fungsi
khusus, seperti dapat dilihat pada tabel dibawah ini.
Tabel 2.2 Fungsi Khusus Port C
Pin Fungsi khusus
PC7 TOSC2 ( Timer Oscillator Pin2)
PC6 TOSC1 ( Timer Oscillator Pin1)
PC5 Input/Output
PC4 Input/Output
PC3 Input/Output
PC2 Input/Output
PC1 SDA ( Two-wire Serial Buas Data Input/Output Line)
PC0 SCL ( Two-wire Serial Buas Clock Line)
5. Port D (PortD0…PortD7) merupakan pin input/output dua arah dan pin fungsi
khusus, seperti yang terlihat pada tabel dibawah ini.
Tabel 2.3 Fungsi Khusus Port D
Pin Fungsi khusus
PD6 ICP (Timer/Counter1 Input Capture Pin)
PD5 OC1A (Timer/Counter1 Output Compare A Match Output)
PD4 OC1B (Timer/Counter1 Output Compare B Match Output)
PD3 INT1 (External Interrupt 1 Input)
PD2 INT0 (External Interrupt 0 Input)
PD1 TXD (USART Output Pin)
PD0 RXD (USART Input Pin)
6. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.
7. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.
8. AVCC merupakan pin masukan tegangan untuk ADC.
9. AREFF merupakan pin masukan tegangan referensi ADC.
2.2 Motor DC
Motor DC (Direct Current) adalah peralatan elektromagnetik dasar yang berfungsi
untuk mengubah tenaga listrik menjadi tenaga mekanik yang desain awalnya
diperkenalkan oleh Michael faraday lebih dari seabad yang lalu (E. Pitowarno, 2006).
Motor DC dikendalikan dengan menentukan arah dan kecepatan putarnya. Arah
putaran motor DC adalah searah dengan arah putaran jarum jam (Clock Wise/CW)
atau berlawanan arah dengan arah putaran jarum jam (Counter Clock Wise/CCW),
yang bergantung dari hubungan kutub yang diberikan pada motor DC. Kecepatan
putar motor DC diatur dengan besarnya arus yang diberikan.
Motor DC dipakai untuk menggerakkan roda robot. Digunakan H-Brighge IC
L298 sebagai penguat motor DC yang berfungsi sebagai driver, sebab sangat tidak
mungkin mengendalikan motor DC langsung dari mikrokontroler yang memiliki arus
dan tegangan terbatas. Untuk itu digunakan H-Brihge sebagai driver motor DC
(H.Andrianto, 2008).
Metode Pulsa with modulation atau PWM dapat digunakan untuk mengatur
kecepatan motor dan untuk menghindarkan rangkaian mengkomsumsi daya berlebih.
PWM dapat mengatur kecepatan motor karena tegangan yang diberikan dalam selang
waktu tertentu saja. PWM ini dapat dibangkitkan melalui software. Lebar pulsa PWM
dinyatakan dalam Duty Cycle. Misalnya duty cycle 10 %, berarti lebar pulsa adalah
1/10 bagian dari satu perioda penuh (E. Pitowarno, 2006).
Berikut adalah rumusan frekuensi sinyal keluaran pin output compare
OC1A/OC1B dengan menggunakan timer/counter1 (A.Bejo, 2008):
a. Mode Phase Correct PWM
fOC1A_PCP = fOSC …….(2.1)
2 * N * (1+TOP)
fOC1B_PCP = fOSC …….(2.2)
2 * N * (1+TOP)
D = OCR1A+OCR1B * 100 % …….(2.3)
TOP
Keterangan:
fOC1A_PCP = frekuensi output OC1A mode PCP
fOC1B_PCP = frekuensi output OC1B mode PCP
fOSC = frekuensi kristal/ osilator
D = duty cycle
N = skala clock (Tabel 2.1)
TOP = nilai maksimum counter (TCNT1)
b. Mode CTC
fOC1A_CTC = fOSC ……..(2.4)
2 * N * (1 + OCR1A)
fOC1B_CTC = fOSC ……..(2.5)
Keterangan:
fOC1A_CTC = frekuensi output OC1A mode CTC
fOC1B_CTC = frekuensi output OC1B mode CTC
fOSC = frekuensi Kristal/ osilator
N = skala clock (Tabel 2.1)
OCR1A = isi register OCR1A
OCR1B = isi register OCR1B
c. Mode Fast PWM
fOC1A_FastPWM = fOSC ……..(2.6)
N * (1 + TOP)
fOC1B_FastPWM = fOSC ……..(2.7)
N * (1 + TOP)
Keterangan:
fOC1A_FastPWM = frekuensi output OC1A mode fast PWM
fOC1B_FastPWM = frekuenai output OC1B mode fast PWM
fOSC = frekuensi Kristal/ osilator
N = skala clock (Tabel 2.1)
TOP = nilai maksimum counter (TCNT1)
Tabel 2.4 Skala Clock Timer/Counter
CS12 CS11 CS10 Deskripsi
0 0 0 Tidak ada clock, timer/counter berhenti.
0 0 1
Skala clock = 1,
(clock timer = clock osilator)
0 1 0
Skala clock = 8,
(clock timer = 1/8 clock osilator)
0 1 1
Skala clock = 64,
(clock timer = 1/64 clock osilator)
1 0 0
Skala clock = 256,
(clock timer = 1/256 clock osilator)
1 0 1
Skala clock = 1024,
(clock timer = 1/1024 clock osilator)
1 1 0
Sumber clock eksternal pada pin T0, clock pada transisi turun.
1 1 1
Sumber clock eksternal pada pin T0, clock pada transisi naik.
IC L298 sudah mencukupi digunakan sebagai rangkain driver. Cukup
dihubungkan ke mikrokontroler dan diberi tegangan sebesar 7 volt dengan arus
minimal 2 ampere rangkaian driver berbasis L298 sudah dapat digunakan. Selain itu,
supply IC L298 dapat diberi tegangan sampai 50 Volt (Data Sheet L298).
Gambar 2.3 Konfigurasi pin IC L298 (Data sheet L298)
Untuk menjalankan motor, pin enable A dan enable B pada IC L298 harus
diberi logika 1. Current sensing A dan current sensing B dihubungkan ke ground.
Input 1 dan input 2 masing-masing berlogika 1 dan 0, output 1 dan output 2
dihubungkan ke motor.
2.3 Led Super Bright Merah dan Photo Dioda
Led super bright merah dan photo dioda dapat digunakan sebagai sensor halangan.
Photo dioda bekerja jika mendapat cahaya. Prinsip kerjanya yaitu led super bright
memancarkan cahaya ke photo dioda sehingga photo dioda menjadi aktif. Jika
mendeteksi adanya halangan, maka photo dioda akan berlogika low dan jika tidak ada
halangan maka photo dioda akan berlogika high. Logika high dan low inilah yang
harus dibaca mikrokontroler untuk mengambil keputusan. Disamping itu, digunakan
rangkaian op-amp IC LM 324 sebagai penguat keluaran photo dioda.
2.4 Rangkaian Sensor dan Komparator
Komparator berfungsi untuk membandingkan input yang diterima dari sensor dengan
maka output akan berlogika high. Sebaliknya, jika tegangan referensi lebih besar dari
input sensor, maka output akan berlogika low. Komparator konvensional umumnya
dapat menggunakan IC LM 324 atau LM 339 yang merupakan sebuah penguat
operasional (op-amp) (W. Budiharto, 2004). Perbedaan input positif dan input negatif
menyebabkan keluaran pada pin output. Perbedaan ini diatur menggunakan
potensiometer dimana pada penerapan pada robot dipasang sensor Led super bright
dan Photo dioda.
Gambar 2.4 IC LM 324 (Data sheet LM324)
Sensor analog dalam aplikasi selalu berhadapan dengan berbagai macam
gangguan. Selain itu sensor memiliki impedansi dan jangkauan tegangan output yang
tidak selalu kompatibel dengan perangkat data yang digunakan. Sensor garis yang
output-nya analog perlu dikuatkan agar jangkauannya maksimal. Untuk itu
diperlukan perlakuan penyelarasan sinyal antara sensor dengan mikrokontroler (H.
Andrianto, 2008).
Gambar 2.5 Rangkaian sensor garis menggunakan IC LM 324
2.5 Bahasa Pemrograman ATmega8535
Pemrograman mikrokontroler ATmega8535 dapat menggunakan low level language
yang digunakan (Widodo Budiharto, 2006). Bahasa Assembler mikrokontroler AVR
memiliki kesamaan instruksi, sehingga jika pemrograman satu jenis mikrokontroler
AVR sudah dikuasai, maka akan dengan mudah menguasai pemrograman keseluruhan
mikrokontroler jenis mikrokontroler AVR. Namun bahasa assembler relatif lebih
sulit dipelajari dari pada bahasa C.
Untuk pembuatan suatu proyek yang besar akan memakan waktu yang lama
serta penulisan programnya akan panjang. Sedangkan bahasa C memiliki keunggulan
dibanding bahasa assembler yaitu independent terhadap hardware serta lebih mudah
untuk menangani project yang besar. Bahasa C memiliki
keuntungan-keuntungan yang dimiliki bahasa assembler (bahasa mesin), hampir semua operasi
yang dapat dilakukan oleh bahasa mesin, dapat dilakukan dengan bahasa C dengan
penyusunan program yang lebih sederhana dan mudah. Bahasa C terletak diantara
bahasa pemrograman tingkat tinggi dan assembly (Agus Bejo,2007).
2.6 Software ATmega8535 Editor dan Simulator
2.6.1 Software ATmega8535 Editor
Instruksi‐instruksi yang merupakan bahasa C tersebut dituliskan pada sebuah editor, yaitu
Code Vision AVR. Tampilannya seperti berikut ini:
2.6.2 Software Downloader
Melakukan download program ke mikrokontroler dapat menggunakan ponyprog2000.
Tampilannya seperti di bawah ini:
BAB III
METODE PENELITIAN
3.1 Perancangan dan Pembuatan Perangkat Keras
Perancangan dan pembuatan perangkat keras mencakup perancangan kontruksi
mekanik dan bagian elektronik dari pintu pengaman serta langkah-langkah
pembuatannya.
3.1.1 Perancangan Kontruksi Miniatur Security Ruangan
Sebelum pada tahapan pembuatan alat, penulis merasa perlu mendesain bentuk jadi
miniatur security ruangan sebagaimana pada gambar di bawah ini:
Keterangan:
c
d. Ruangan brankas
e. Lorong masuk ruangan brankas
f. Pintu pengaman
g. Tempat kedudukan rangkaian
elektronik
3.1.2 Pembuatan Rangkaian Elektronik
Gambar 3.2 Instalasi rangkaian elektronik
Sensor dihubungkan ke rangkaian komparator dan dilanjutkan ke
mikrokontroler untuk diproses. Setelah diproses, logika pemrograman dikeluarkan
melalui port D untuk dikuatkan menggunakan rangkaian driver sebelum dijalankan
oleh motor penggerak pintu.
Motor Pintu
Gambar 3.3 Diagram blok pintu otomatis
Tegangan referensi sebesar 5 volt dan dapat diubah menggunakan trimpot 10
KOhm. Tegangan referensi diperlukan untuk membandingkan antara tegangan yang
dikeluarkan oleh sensor yang kemudian akan melalui IC komparator. Hasil
pembacaan sensor sangat kecil untuk dapat dibaca mikrokontroler. Jadi, dengan
menggunakan komparator hasil pembacaan sensor dapat kita kuatkan hingga ± 4 volt
[image:30.595.140.496.446.589.2]Gambar 3.4 Rangkaian lengkap security ruangan berbasis mikrokontroler AVR
Keterangan:
1. Mikrokontroler ATmega8535 berfungsi sebagai kontroler pintu otomatis
pengaman ruangan. Mikrokontroler diprogram sedemikian rupa sehingga dapat
mengendalikan sistem. Bahasa yang digunakan untuk memprogram adalah
bahasa C.
2. Sensor merupakan perpaduan antara Led super bright dengan photo dioda. Sensor
hasil pembacaan sensor mudah dibaca. Keluarannya dapat dimaksimalkan
menggunakan rangkaian komparator ini.
3. Untuk menggerakkan motor DC diperlukan rangkaian penguat. Rangkaian driver
sebagai rangkaian penguat menggunakan IC L 298. L 298 sudah mencukupi
sebagai driver disamping mudah digunakan juga cukup kuat untuk mengontrol
motor maksimal sampai 50 volt.
4. Motor yang digunakan sebagai penggerak adalah motor DC yang biasa terdapat
pada CD Rom. CD Rom ini dimodifikasi sedemikian rupa menjadi sebuah pintu
mini yang dapat dikontrol dari mikrokontroler AVR.
Rangkaian dapat dibuat menggunakan software untuk perancangan PCB,
seperti protel 99, protel DXP, eagle dan keluarganya, dan sebagainya. Untuk
keseluruhan rangkaian pada alat pengaman ini dibuat menggunakan eagle versi 5.0.
3.1.2.1 Rangkaian Power Suplay (PSA)
Rangkaian power suplay berfungsi untuk mensuplay tegangan ke seluruh rangkaian.
Pada umumnya IC elektronika menggunakan tegangan 5 volt. Penulis menggunakan
IC regulator 7805 untuk menstabilkan tegangan yang masuk ke rangkaian. Jadi,
tegangan berlebih pada input dapat dijadikan 5 volt oleh IC 7805 ini. Jika tegangan
berlebih dapat menyebabkan kerusakan pada komponen. Oleh karena itu, penulis juga
menggunakan penstabil tegangan. Dioda dipasang pada input regulator dengan tujuan
jika terjadi hubungan pendek tidak sampai merusak rangkaian lain. Rangkaian supply
[image:32.595.213.420.616.722.2]menggunakan regulator AN7805 dapat dilihat pada gambar dibawah ini:
Gambar 3.5 Rangkaian supply IC AN7805
3.1.2.2 Rangkaian Sistem Minimum ATmega8535
Mikrokontroler disebut sebagai one chip solution sudah dilengkapi dengan fitur utama
komputer seperti CPU, RAM, EEPROM, I/O, Timer, dan Interrupt controller.
Mikrokontroler dapat digunakan untuk pengontrolan seperti pengontrolan temperatur,
penampil display LCD, pemroses sinyal digital, pengontrolan mesin-mesin industri
dan sebagainya. Dengan mikrokontroler dapat dibuat alat pengaman, tetapi disini
penulis hanya membuat dalam bentuk miniatur saja.
Chip mikrokontroler ini dapat diprogram menggunakan port paralel dan serial.
Selain itu, dapat beroperasi hanya dengan 1 chip dan beberapa komponen dasar
seperti kristal, kapasitor, dan resistor.
Mikrokontroler ATmega8535 dipilih sebagai kontroler untuk mengontrol
sistem karena sudah dilengkapi dengan ADC internal dengan lebar 10 bit. Untuk
dapat mengendalikan pintu pengaman, harus diisikan perangkat lunak (software) ke
dalam chip mikrokontroler.
Mikrokontroler tidak dapat berdiri sendiri, harus dibuat rangkaian tambahan
yang dapat dijadikan sebagai pendukung diantaranya berisikan power supply,
pembangkit frekuensi, tombol reset, beberapa kapasitor, konektor sebagai I/O dan
beberapa komponen tambahan lainnya seperti rangkaian sistem minimum di bawah
Gambar 3.6 Skematik rangkaian sistem minimum ATmega8535
Untuk mengisi program ke mikrokontroler dapat digunakan teknik
programmer menggunakan software ponyprog2000 yang telah mendukung chip
mikrokontroler AVR. Sebagai downloader dapat dibuat rangkaian programmer seperti
gambar di bawah ini. Rangkaian ini dihubungkan ke PB.5, PB.6, PB.7, Reset, Gnd
dan Vcc mikrokontroler. Untuk informasi lebih lengkap mengenai downloader ini,
[image:34.595.136.493.503.710.2]dapat dikunjungi situs www.atmel.com.
Gambar 3.8 Atmel downloader programmer
3.1.2.3 Pembuatan Rangkaian Sensor dan Komparator
Rangkaian komparator digunakan untuk mendeteksi garis. Respon keluaran dari photo
dioda tidak cukup besar untuk dibaca mikrokontroler. Dengan menggunakan
komparator, respon dari photo dioda dapat ditingkatkan sampai maksimal. Prinsip
kerjanya adalah dengan membandingkan dua input yang berbeda. Input pertama
diambil dari sensor garis dan input kedua dari potensiometer. Potensiometer dapat
diatur tergantung dari tingkat pencahayaan lapangan. Untuk hasil maksimal, dapat
ditambahkan pull up resistor pada output komparator.
Banyak jenis op-amp yang dapat digunakan sebagai komparator. Penulis
menggunakan IC LM324 sebagai op-amp pada rangkaian komparator ini. Rangkaian
.
Gambar 3.9 Rangkaian komparator LM 324
3.1.2.4 Rangkaian Driver
Output mikrokontroler tidak memadai untuk menggerakkan motor DC dengan
maksimal. Keluaran mikrokontroler yang tidak lebih dari + 5 volt tidak kuat untuk
menggerakkan motor sebesar + 6 volt.
Karena itu dibutuhkan rangkaian yang dapat membantu pengontrolan
mikrokontroler. Banyak cara yang dapat dilakukan untuk mengendalikan motor DC,
diantaranya dengan menggunakan transistor, relay dan IC driver seperti L 293 atau L
298. Alat pengaman ruangan ini menggunakan IC driver L 298 sebagai penguat untuk
mengontrol motor DC. Konfigurasi pin L 298 sebagai berikut:
[image:36.595.205.438.551.706.2]Gambar 3.11 Rangkaian driver L 298 pada PCB
Supply yang digunakan untuk IC L 298 sebesar 12 volt. Untuk mengaktifkan,
diberi logika 1 dan 0 pada pin input dan logika 1 pada pin enable. Di dalam IC ini
terdapat 2 buah driver yang sudah terintegrasi, dapat dipakai untuk mengendalikan
motor pintu depan dan motor pintu belakang. Untuk menjalankan 2 buah motor,
enable A dan enable B harus diberi logika 1, sedangkan input berlogika 1,0 untuk
motor kiri dan 1,0 untuk motor kanan. Output untuk motor dapat dihubungkan
3.1.3 Bentuk Kontruksi Akhir Miniatur Security Ruangan Menggunakan Pintu Otomatis Berbasis Mikrokontroler AVR
Gambar 3.12 Bentuk akhir miniatur security ruangan berbasis mikrokontroler AVR
3.2 Perancangan dan Pembuatan Perangkat Lunak
Perancangan dan pembuatan perangkat lunak meliputi pembahasan mengenai
pengujian sensor, perancangan program mikrokontroler serta pengontrolan motor dan
3.2.1 Software Pendukung
Mikrokontroler sebagai alat kontrol membutuhkan perangkat lunak yang berguna
untuk memerintahkan sistem kontrol melakukan suatu tugas, misalnya pintu depan
[image:39.595.132.498.176.410.2]membuka, pintu belakang menutup dan tugas lainnya.
Gambar 3.13 Tampilan Code Vision AVR
Code Vision AVR dapat digunakan sebagai editor penulisan program, compiler
dan PonyProg2000 sebagai Downloader serta Bahasa C sebagai bahasa pemrograman.
Code Vision AVR ini dapat mengimplementasikan hampir semua instruksi bahasa C
yang sesuai dengan arsitektur Mikrokontroler AVR, bahkan terdapat beberapa
keunggulan tambahan untuk memenuhi keunggulan spesifik dari mikrokontroler
AVR. Hasil kompilasi objek Code Vision AVR dapat digunakan sebagai source
Gambar 3.14 Tampilan PonyProg2000
Selain pustaka bahasa C, Code Vision AVR juga menyediakan fitur tambahan
yang sangat membantu pemrograman mikrokontroler AVR, yaitu:
- Menggunakan IDE (Integrated Devolopment Environment).
- Fasilitas yang disediakan lengkap (mengedit program, mengkompilasi program,
download program) serta tampilannya terlihat menarik dan mudah dimengerti.
Kita dapat mengatur settingan editor sedemikian rupa sehingga membantu
memudahkan kita dalam penulisan program.
- Mampu membangkitkan kode program secara otomatis dengan menggunakan
fasilitas CodeWizardAVR.
- Memiliki fasilitas untuk mendowload program secara langsung dari Code Vision
AVR dengan menggunakan hardware khusus seperti Atmel STK500, Kanda
System STK200+/300 dan beberapa hardware lain yang telah didefenisikan oleh
Code Vision AVR.
- Memiliki fasilitas debugger sehingga dapat menggunakan software compiler lain
untuk mengecek kode assembler-nya, seperti AVR Studio 4.0.
- Memiliki terminal komunikasi serial yang terintegrasi dalam Code Vision AVR
sehingga dapat digunakan untuk membantu pengecekan program yang telah
dibuat khususnya yang menggunakan fasilitas komunikasi serial UART.
Untuk melakukan proses download progam ke mikrokontroler, penulis
memilih menggunakan PonyProg2000. PonyProg2000 cukup mudah digunakan,
mendownload file Hex. saja. Hampir semua jenis mikrokontroler AVR dapat
didownload menggunakan PonyProg2000. Software ini dapat didownload di
www.LancOS.com.
3.2.2 Deskripsi Kerja Alat
Penulis merancang dan membuat sebuah miniatur security ruangan berbasis
mikrokontroler AVR yang dapat menutup secara otomatis jika sensor mendeteksi
adanya halangan. Pintu depan dan belakang menutup secara otomatis jika sensor
mendeteksi adanya halangan dan pada LCD pun akan ada tulisan sebagai indikator
bahwa ruangan brankas sedang tidak aman, jika sensor tidak mendeteksi apa pun
maka pintu akan tetap terbuka. Peristiwa ini akan berlangsung secara terus-menerus.
Pada miniatur security ruangan ini pintu otomatis dibuat seolah-olah samar
dengan dinding. Posisi pintu otomatis berada sebelum ruangan brankas. Pintu
otomatis pada miniatur ini dibuat terdiri atas dua pintu, yaitu pintu depan dan pintu
depan. Dimana posisi sensor diletakkan diantara pintu depan dan pintu belakang.
Posisi sensor pada miniatur ini dibuat dalam posisi vertikal dari atas ke bawah.
Dan pada rangkaian, sensor dirancang paralel. Hal ini untuk mengantisipasi orang
yang tidak diinginkan memasuki ruangan brankas masuk dengan cara memanjat
dinding atau jongkok/merayap pada lantai. Karena walaupun sensor di atas/bawah
yang mendeteksi adanya halangan, output yang terbaca oleh mikrokontroler tetap
3.2.3 Flowchart Sistem Security Ruangan
start
Inisialisasi Input,output PWM, LCD
Sensor 1 == 0 Sensor 2 == 0
PWM Motor pintu
tertutup
if
if
Pintu 1 dan 2 terbuka
No No
Yes
LCD
Tunda 2 menit
[image:42.595.137.479.88.553.2]Yes
Gambar 3.15 Flowchart perangkat lunak alat
3.2.4 Bahasa Pemrograman
Bahasa C dipilih karena sudah terbukti kehandalannya menangani berbagai aplikasi,
baik hardware maupun software. Hampir semua intruksi bahasa mesin dapat
dilakukan dengan bahasa C disamping penanganan bahasa berasas tinggi. Program C
Bahasa C adalah bahasa yang terstruktur yang memungkinkan program yang
besar dibangun dari potongan-potongan kode yang kecil dan mudah dipahami.
Bahasa-bahasa pendahulu seperti Basic dan Fortran asli tidak memiliki gagasan
seperti ini. Bahasa C memiliki banyak keistimewaan bahasa beraras tinggi (sebuah
bahasa pemrograman yang menggunakan perintah yang hubungannya sedikit dengan
intruksi-instruksi yang digunakan komputer), tetapi juga dapat menangani rinci
pemrograman yang sama dengan bahasa assembly (kode yang secara langsung
[image:43.595.113.516.270.504.2]mewakili instruksi mesin, yang merupakan bahasa beraras rendah).
Gambar 3.16 Tampilan editor Code Vision AVR
3.2.5 Mikrokontroler AVR ATmega8535
Mikrokontroler AVR merupakan keluarga mikrokontroler RISC keluaran Atmel.
AVR ATmega8535 memiliki fitur yang cukup lengkap. Mulai dari kapasitas memori
program dan memori data yang cukup besar, interupsi timer/counter, PWM, USART,
TWI, analog komparator, EEPROM internal dan ADC internal semuanya ada dalam
ATmega8535. Sehingga dengan fitur yang cukup lengkap ini memungkinkan kita
untuk dapat belajar mikrokontroler keluarga AVR dengan lebuh mudah dan efisien,
sistem yang sederhana sampai dengan sistem yang relatif komplek hanya dengan
menggunakan satu chip IC saja, yaitu dengan IC AVR ATmega8535.
Selain itu, kemampuan kecepatan eksekusi yang lebih tinggi menjadi alasan
bagi banyak orang untuk beralih dan memilih menggunakan mikrokontroler AVR
BAB IV
HASIL DAN ANALISA
4.1 Pengujian alat
Miniatur security ruangan ini merupakan sebuah miniatur untuk menciptakan
pengamanan pada ruangan dari yang tidak diinginkan, misalnya untuk melindungi
ruangan tempat menyimpan dokumen-dokumen penting atau surat-surat berharga.
Pada saat pengujian, pintu otomatis ini dapat bekerja dengan baik. Saat sensor
mendapat halangan, pintu secara otomatis menutup dan membuka kembali setelah
lebih kurang dua menit kemudian. Kejadian ini akan diulang oleh mikrokontroler
secara terus-menerus dengan cara membaca logika yang dikeluarkan sensor. Bila
mendeteksi adanya halangan, sensor akan memberikan logika low atau 0 ke
mikrokontroler, dan jika sensor tidak mendeteksi adanya halangan, sensor akan
memberikan logika high atau 1.
Logika 1 atau 0 inilah yang dijadikan pedoman oleh mikrokontroler untuk
mengambil keputusan, apakah pintu harus ditutup atau tetap terbuka. Penulis memilih
logika 0 untuk memerintahkan rangkaian driver melakukan penutupan pintu secara
otomatis jika mikrokontroler mendeteksi adanya pengiriman logika 0 dari sensor. Jika
[image:45.595.126.511.664.767.2]sensor mengirimkan logika 1, maka mikrokontroler membiarkan pintu tetap terbuka.
Tabel 4.1 Pengujian pintu otomatis pengaman ruangan Jika ada halangan
No. Sensor
Sensor Pintu 1 Pintu 2
Waktu (menit)
1 Percobaan 1 Aktif Menutup Menutup 2.25
3 Percobaan 3 Aktif Menutup Menutup 2.23
4 Percobaan 4 Aktif Menutup Menutup 2.18
5 Percobaan 5 Aktif Menutup Menutup 2.15
Dari beberapa percobaan seperti pada tabel diatas terlihat, bahwa jika terdapat
sesuatu yang menghalangi sensor maka pintu secara otomatis akan menutup dan
membuka kembali setelah lebih kurang dua menit kemudian. Lamanya respon dari
pembacaan sensor sampai pintu bereaksi lebih kurang 2 detik ketika waktu pada
program diset sebesar 2 menit.
4.2 Analisa
Sistem kontrol pintu otomatis ini menggunakan Chip mikrokontroler ATmega8535
dengan pemrograman bahasa C. Bahasa C dipilih karena beberapa keunggulan yang
dimilikinya antara lain dapat menangani program dengan bahasa aras tinggi dan juga
dapat menangani hampir semua instruksi bahasa aras rendah (assembly). Bahasa C
sangat mudah dipahami dan telah teruji kemampuannya dalam pembuatan berbagai
aplikasi berat bahkan pembuatan sistem operasi dapat menggunakan bahasa C.
Sensor halangan ini dapat dibuat dari 2 buah led super bright merah dan 2
buah photo dioda. Setelah rangkaian sensor selesai, maka diposisikan sedemikian rupa
pada dinding miniatur tersebut. Output dari sensor ini harus dikuatkan agar
mikrokontroler dengan mudah membacanya. Untuk menguatkan sinyal dari sensor
garis, dapat menggunakan rangkaian komparator. Rangkaian komparator dapat dibuat
menggunakan IC Op-Amp seperti LM 324. LM 324 ini sudah mempunyai 4 buah
saluran Op-Amp, jadi dapat digunakan maksimal untuk 4 buah input pembanding.
IC L298 sangat memuaskan dalam hal ini, karena dalam IC ini telah terdapat 2
buah driver yang dapat dengan mudah digunakan. Selain itu, IC ini dapat berjalan dari
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
1. Lamanya respon dari pembacaan sensor sampai pintu bereaksi lebih
kurang 2 detik ketika waktu pada program mikrokontroler diset sebesar 2
menit.
2. IC L298 sangat memuaskan ketika digunakan pada sistem security ini, karena
pada IC diberi tegangan masukan sebesar 12 V sehingga dapat menggerakkan
motor dengan cepat. Batas minimum tegangan masukan IC L298 adalah 7 V
DC, sehingga jika diberi tegangan di bawah batas minimum maka motor akan
bergerak lambat.
5.2 Saran
Beberapa saran yang penulis rasa perlu antara lain:
5 Penulis mengharapkan kepada seluruh pembaca agar dapat mengembangkan
perangkat lunak pintu pengaman ruangan ini karena penulis merasa software
pada alat ini masih jauh dari sempurna dan masih dapat dikembangkan.
6 Untuk menjangkau jarak yang lebih jauh, led super bright dapat digantikan
dengan infra merah atau yang lainnya.
7 Penulis mengharapkan dalam pembuatan dan pemasangan mekanik berikutnya
harus diperhatikan ketelitiannya karena dapat mempengaruhi pembacaan
sensor jika pemasangannya kurang tepat.
8 Pada aplikasi sebenarnya penulis menyarankan menggunakan sensor yang
telah dibuat secara khusus untuk mendeteksi keberadaan manusia seperti
DAFTAR PUSTAKA
Andrianto, Heri. 2008. Pemrograman Mikrokontroler AVR ATmega16 Menggunakan Bahasa C. Bandung: Penerbit Informatika.
Bejo, Agus. 2007. C & AVR’Rahasia Kemudahan Bahasa C Dalam Mikrokontroler ATmega8535’. Yogyakarta: Graha Ilmu.
Budiharto, Widodo. 2006. Belajar Sendiri Membuat Robot Cerdas. Bekasi: Elex Media Komputindo.
Budiharto, Widodo & Gamayel Rizal. 2006. Belajar Sendiri 12 Proyek Mikrokontroler Untuk Pemula. Bekasi: Elex Media Komputindo.
Budiharto, Widodo & Sigit Firmansyah. 2004. Elektronika Digital dan Mikroprosesor. Jakarta: Penerbit Andi.
Heryanto, Ari M & Wisnu Adi. 2008. Pemrograman Bahasa C untuk Mikrokontroler ATmega8535. Yogyakarta: Penerbit Andi.
Perry, Greg & Ian Spencer. 2001. Visual C++ Dalam 12 Pelajaran Yang Mudah. Yogyakarta: Penerbit Andi.
Pitowarno, Endra. 2006. Robotika ‘Desain, Kontrol, dan Kecerdasan Buatan. Yogyakarta: Penerbit Andi.
Sugianto. 2007. Desain Rangkaian Elektronika dan Layout PCB Dengan Protel 99 SE. Bekasi: Elex Media Komputindo.
Sutedjo, Budi & Michael AN. 2000. Algoritma & Teknik Pemrograman. Yogyakarta: Penerbit Andi.
Wardana, Lingga. 2006. Belajar Sendiri Mikrokontroler AVR Seri ATmega8535, Simulasi Harware dan Aplikasi. Yogyakarta: Penerbit Andi.
Winoto, Ardi. 2008. Mikrokontroler AVR ATmega8/32/16/8535 dan Pemrogramannya dengan Bahasa C pada WinAVR. Cirebon: Penerbit Informatika.
LAMPIRAN
Bahasa pemrograman pada mikrokontroler ATmega8535 dengan menggunakan bahasa C
#include <mega8535.h> #include <delay.h> #include <stdio.h> #include <math.h> #define Sensor_A PIND.0 #define Sensor_B PIND.1
#define Enable_Motor_A PORTD.2 #define Motor_A_Right PORTD.3 #define Motor_A_Left PORTD.4 #define Enable_Motor_B PORTD.5 #define Motor_B_Right PORTD.6 #define Motor_B_Left PORTD.7 #define Lampu PORTB.0
#define Alarm PORTB.1
// Alphanumeric LCD Module functions #asm
.equ __lcd_port=0x15 ;PORTC #endasm
#include <lcd.h>
Motor_B_Right=0; Motor_B_Left=1; } void Buka_Pintu_2() { Enable_Motor_B=1; Motor_B_Right=1; Motor_B_Left=0; } void Stop_Pintu_2() { Enable_Motor_B=0; Motor_B_Right=0; Motor_B_Left=0; }
//Inialisasi Alarm and Led inside Room void Kedip() { Lampu=0; } void Off_Kedip() { Lampu=1; }
//Inisialisasi Top and Central Program's void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization // Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;
DDRB=0x00;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=In Func0=In // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=T State0=T
DDRD=0xFC;
// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00;
TCNT0=0x00; OCR0=0x00;
// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 500.000 kHz
// Mode: Ph. correct PWM top=03FFh // OC1A output: Inverted
// OC1B output: Inverted // Noise Canceler: Off
// Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off //TCCR1A=0xF3; //TCCR1B=0x02; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;
// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00;
TCCR2=0x00; TCNT2=0x00; OCR2=0x00;
// External Interrupt(s) initialization // INT0: Off
// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 125.000 kHz // ADC Voltage Reference: AREF pin // ADC High Speed Mode: On
// ADC Auto Trigger Source: None // Only the 8 most significant bits of // the AD conversion result are used ADCSRA=0x85;
SFIOR&=0xEF; SFIOR|=0x10;
// LCD module initialization lcd_init(16);
lcd_gotoxy(0,0);
lcd_putsf("=Novi Eldiarti="); lcd_gotoxy(0,1);
lcd_putsf("=Physics of USU="); delay_ms(1000); lcd_clear(); delay_ms(200); lcd_init(16); lcd_gotoxy(0,0); lcd_putsf("=Pintu Otomatis="); if (Sensor_A==1) { Buka_Pintu_1(); Buka_Pintu_2(); delay_ms(600); Stop_Pintu_1(); Stop_Pintu_2(); delay_ms(300); //Stop_Pintu_1(); //Stop_Pintu_2(); //delay_ms(300); lcd_gotoxy(3,1); lcd_putsf("Kamar Aman"); //Lampu==1; //Alarm==0; //delay_ms(3000); } while (1) {
//Stop_Pintu_1(); //Stop_Pintu_2(); //delay_ms(300); Kedip();
Stop_Pintu_1(); Stop_Pintu_2(); delay_ms(300); lcd_clear; lcd_gotoxy(0,1);
lcd_putsf("Kamar di Isolasi"); delay_ms(6000);
delay_ms(6000); }
}; }
LAMPIRAN
Bahasa pemrograman pada mikrokontroler ATmega8535 dengan menggunakan bahasa C
#include <mega8535.h> #include <delay.h> #include <stdio.h> #include <math.h> #define Sensor_A PIND.0 #define Sensor_B PIND.1
#define Enable_Motor_A PORTD.2 #define Motor_A_Right PORTD.3 #define Motor_A_Left PORTD.4 #define Enable_Motor_B PORTD.5 #define Motor_B_Right PORTD.6 #define Motor_B_Left PORTD.7 #define Lampu PORTB.0
#define Alarm PORTB.1
// Alphanumeric LCD Module functions #asm
.equ __lcd_port=0x15 ;PORTC #endasm
#include <lcd.h>
Motor_B_Right=0; Motor_B_Left=1; } void Buka_Pintu_2() { Enable_Motor_B=1; Motor_B_Right=1; Motor_B_Left=0; } void Stop_Pintu_2() { Enable_Motor_B=0; Motor_B_Right=0; Motor_B_Left=0; }
//Inialisasi Alarm and Led inside Room void Kedip() { Lampu=0; } void Off_Kedip() { Lampu=1; }
//Inisialisasi Top and Central Program's void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization // Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;
DDRB=0x00;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=In Func0=In // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=T State0=T
DDRD=0xFC;
// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00;
TCNT0=0x00; OCR0=0x00;
// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 500.000 kHz
// Mode: Ph. correct PWM top=03FFh // OC1A output: Inverted
// OC1B output: Inverted // Noise Canceler: Off
// Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off //TCCR1A=0xF3; //TCCR1B=0x02; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;
// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00;
TCCR2=0x00; TCNT2=0x00; OCR2=0x00;
// External Interrupt(s) initialization // INT0: Off
// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 125.000 kHz // ADC Voltage Reference: AREF pin // ADC High Speed Mode: On
// ADC Auto Trigger Source: None // Only the 8 most significant bits of // the AD conversion result are used ADCSRA=0x85;
SFIOR&=0xEF; SFIOR|=0x10;
// LCD module initialization lcd_init(16);
lcd_gotoxy(0,0);
lcd_putsf("=Novi Eldiarti="); lcd_gotoxy(0,1);
lcd_putsf("=Physics of USU="); delay_ms(1000); lcd_clear(); delay_ms(200); lcd_init(16); lcd_gotoxy(0,0); lcd_putsf("=Pintu Otomatis="); if (Sensor_A==1) { Buka_Pintu_1(); Buka_Pintu_2(); delay_ms(600); Stop_Pintu_1(); Stop_Pintu_2(); delay_ms(300); //Stop_Pintu_1(); //Stop_Pintu_2(); //delay_ms(300); lcd_gotoxy(3,1); lcd_putsf("Kamar Aman"); //Lampu==1; //Alarm==0; //delay_ms(3000); } while (1) {
//Stop_Pintu_1(); //Stop_Pintu_2(); //delay_ms(300); Kedip();
Stop_Pintu_1(); Stop_Pintu_2(); delay_ms(300); lcd_clear; lcd_gotoxy(0,1);
lcd_putsf("Kamar di Isolasi"); delay_ms(6000);
delay_ms(6000); }
}; }