bab ii dasar teori

advertisement
BAB II
DASAR TEORI
Pada bab ini akan dibahas mengenai teori-teori yang mendukung. M ateri
yang akan dibahas adalah mikrokontroler atmega 16, solenoid, LCD (Liquid
Crystal Disp lay), RTC (Real Time Clock), keypad 4x4, IC NE555, Buzzer, Relay,
dan perangkat lunak Bascom AVR.
2.1
Mikrokontroler
Hal yang paling penting dan menjadi otak (processor) adalah
mikrokontroler ATM ega16. ATM ega16 merupakan salah satu dari keluarga
ATM EL yang berfungsi sebagai pusat kendali dari suatu sistem yang dibuat.
Tampilan dan konfigurasi kaki-kaki ATM ega16 :
G ambar 2.1 Mikrokontrole
Mikrokontrolerr ATMega16
2.1.1
Port sebagai input/output digital
PORT
ATM ega16 mempunyai empat buah port yang bernama PORTA,
PORT PORTC,
PORTC, dan PORTD.
PORTD. Keempat port tersebut merupakan jalur
PORTB,
bidirectional dengan pilihan internal pull-up.. Tiap port mempunyai tiga
buah register bit, y aitu DDxn, PORTxn, dan PINxn. Bit DDxn terdapat p ada
I/O address DDRx, bit PORTxn terdapat p ada I/O address PORTx, dan bit
PINxn terdapat pada I/O address PINx. Bit DDxn dalam register DDRx
Data Direction Register)) menentukan arah pin. Bila DDxn diset 1 maka Px
(Data
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
5
berfungsi
berfung
si sebagai pin output
output.. Bila DDxn diset 0 maka Px berfungsi sebagai
pin input. Bila PORTxn diset 1 pada saat pin terkonfigurasi sebagai pin
input, maka resistor pull-up akan diaktifkan. Bila PORTxn diset 1 pada saat
pin terkonfigurasi sebagai pin output maka pin port akan berlogika 1. Dan
bila PORT
PORTxn
xn diset 0 pada saat pin terkonfigurasi sebagai pin output maka
pin port akan berlogika 0.
Biasanya, kondisi pull-up enabled dapat diterima sepenuhnya, selama
lingkungan impedansi tinggi tidak memperhatikan perbedaan antara sebuah
strong high driver dengan sebuah pull-up.. Jika ini bukan suatu masalah,
maka bit PUD pada register SFIOR dapat diset 1 untuk mematikan semua
pull-up dalam semua port. Peralihan dari kondisi input dengan pull-up ke
kondisi output low juga menimbulkan masalah yang sama. M aka harus
digunakan kondisi tri-state.
(DDxn=0,
PORTxn=0)
PORTxn=0)
atau
kondisi
output
high
(DDxn=1,
PORTxn=0)
PORT
xn=0) sebagai kondisi transisi.
2.1.2
Konfigurasi Pin Atmega16
Konfigurasi pin Atmega secara fungsional adalah sebagai berikut :
a. VCC merupakan pin yang berfungsi sebagai input tegangan
b. GND merupakan pin ground.
c. PORTA ( PA0 – PA7 ) merupakan pin I/O dua arah dan pin
masukan ADC.
d. PORTB
PORTB ( PB0 – PB7 ) merupakan pin I/O dua arah dan pin fungsi
khusus, yaitu timer/counter,
timer counter,, komparator analog, dan timer
oscillator.
e. PORTC ( PC0 – PC 7 ) merupakan pin I/O dua arah dan pin fungsi
khusus, yaitu TWI, komparator analog, dan timer oscillator.
oscillator
f. Port D ( PD0 – PD7 ) merupakan pin I/O dua arah dan pin fungsi
khusus, yaitu
komparator
analog,
interupsi
eksternal, dan
komunikasi serial.
g. RESET
merupakan
pin
yang digunakan
untuk
me-reset
mikrokontroller.
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
6
h. XTAL
AL dan XTAL2 merupakan pin masukan clock eksternal.
i. AVCC merupakan pin masukan tegangan untuk ADC.
j. AREF merupakan pin masukan tegangan referensi ADC.
2.2 S olenoid
Solenoid adalah sebuah perangkat yang dapat difungsikan sebagai
aktuator. Perangkat ini terdiri dari 2 bagian utama, yaitu kumparan atau koil,
dan inti besi. Cara kerja dari perangkat ini adalah jika ada tegangan yang
mengalir di kumparan, maka di dalamnya akan menimbulkan medan
magnetis yang akan menarik besi masuk kedalam kumparan. Prinsip kerja
yang digunakan adalah prinsip elektromagnetik.
Gambar 2.2 Solenoid
12Vdc
Solenoid yang digunakan membutuhkan tegangan sebesar 12Vdc
untuk bekerja.
2.3
Liquid Crystal Display (LCD) 4x20
LCD adalah perangkat output yang berfungsi menampilkan data
berupa teks, simbol dan gambar sederhana. LCD ini memiliki 4 baris yang
setiap barisny a terdiri dari 20 kolom atau biasa ditulis 4x20. Sehingga
memungkinkan untuk menampilkan 20 buah karakter di setiap barisny a.
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
7
Bentuk fisik LCD 4x
4x20
20 dapat dilihat p ada gambar 2.3.
Gambar 2.3 LCD 4x20 dengan backlight hijau
LCD 4x20 memiliki 16 buah pin, yang terdiri dari 8 buah pin data I/O
(DB0 – DB7), 2 pin untuk pengaturan backlight (LED+ dan LED-), 2 pin
untuk supply (VCC dan VSS), RS, R/W, E.
Tabel 2.1 Konfigurasi pin LCD 4x20
2.4
RTC (Real Time Clock)
RTC adalah jenis pewaktu yang bekerja berdasarkan waktu yang
sebenarnya atau dengan kata lain berdasarkan waktu yang ada pada jam.
Agar dapat berfungsi, pewaktu ini membutuhkan dua parameter utama
yang harus ditentukan, yaitu pada saat mulai (start
((start)
start) dan pada saat berhenti
stop). RTC pada umumnya berupa sirkuit terpadu yang berfungsi sebagai
stop).
(stop).
pemelihara waktu. RTC memiliki catu daya terpisah sehingga dapat tetap
berfungsi ketika catu daya utama terputus. Real Time Clock berhubungan
dengan waktu mulai dari detik, menit, jam, hari, tanggal, bulan dan tahun.
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
8
RTC
C yang digunakan berjenis D S1307, yang merupakan salah satu
tipe IC RTC yang dapat bekerja dalam daya listrik rendah. Didalamnya
berisi waktu jam dan kalender dalam format BCD. Waktu jam dan
kalender memberikan informasi detik, menit, jam, hari, tanggal, bulan, dan
tahun. Untuk bagian jam dapat berformat 24 jam atau 12 jam. Pendeteksi
sumber listrik juga disediakan untuk mendeteksi kegagalan sumber listrik
dan langsun g mengalihkannya ke sumber baterai. D S1307 berkomunikasi
dengan menggunakan 2 kabel, yaitu SDA dan DSL. SQW/Out adalah
penghasil gelombang kotak yang frekuensinya tergantung dari control
register
register.
Gambar 2.4.Typical slave operating circuit
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
9
Gambar 2.5 Blok diagram IC 1307
IC 1307 terdiri dari 8 buah blok, yaitu blok osilator and driver, square
wave out, control logic, power control, serial bus interface ,address
register, RTC dan RAM . Blok osilator mengontrol kecepatan jam dan
pulsa keluaran dari blok square wave out, blok control logic mengatur
frekuensi yang dikeluarkan oleh blok square wave out,
out address register
menunjukan alamat dari RTC atau RAM berdasarkan input dari blok serial
bus interface dan control logic. Blok RTC berisi data mengenai jam
sedangkan RAM menyimpan data yang telah dituliskan sebelumnya.
Gambar 2.6 RTC DS1307
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
10
2.4.1 Pin-pin
-pin pada IC DS1307
IC DS1307 juga memiliki 8 buah pin, yaitu :

X1, X2: dihubungkan dengan kristal quartz 32,768 kHz. Rangkaian
osilator internal ini didesain untuk beroperasi dengan sebuah
kristal yang mempunyai kapasitansi beban tertentu (CL) yakni 12,5
pF.

Vcc, GND: sebagai power supply utama. Vcc merupakan tegangan
input +5 Volt sedangkan GND merupakan ground. Ketika
tegangan 5 Volt digunakan pada batas normal, RTC dapat diakses
secara penuh dan data dapat ditulis dan dibaca. Ketika Vcc kurang
dari 1,25 x Vbat, proses penulisan dan pembacaan menjadi
terhalang. Namun demikian, proses penghitungan waktu tetap
berjalan. Pada saat Vcc kurang dari Vbat, RAM dan penghitung
waktu terhubung dengan batere 3 Volt.

Vbat: tegangan input batere lithium cell
cell 3 Volt. Tegangan batere
harus berada antara 2,5 Volt sampai 3,5 Volt.

SCL (Serial
(Serial Clock Input):
Input): digunakan untuk mensinkronkan
perubahan data pada antarmuka serial.

SDA (Serial
(Serial Data Input/Output
Input/Output) : merupakan pin input/output
input output
untuk antarmuka serial 2 kawat. Pin SDA membutuhkan resistor
pull-up eksternal.

2.5
SQW/OUT (Square
(Square Wave/Output Driver)
Driver
Keypad 4x4
Keypad digunakan sebagai perangkat input untuk memasukkan
password. Keypad merupakan serangkaian push-button yang disusun secara
matrik sehingga memiliki kolom dan baris. Setiap kolom dan baris
dihubungkan dengan pin I/O dari M ikrokontroler sejumlah 8 pin, 4 pin
untuk kolom dan 4 pin untuk baris.
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
11
Berikut
Beri
kut gambar keypad 4x4.
1
2
3
A
4
5
6
B
7
8
9
C
*
0
#
D
RR1
R1
47K
RR2
C = KOLOM
R = BARIS
R2
47K
RR3
R3
47K
RR4
R4
47K
RC1
47
47K
RC2
4
47K
C1
C2
RC3
4
47K
C3
RC4
47K
47
C4
Gambar 2.7 Keypad 4x4
2.6
IC NE555
IC 555 merupakan jenis IC yang dapat membangkitkan sinyal
frekuensi, baik itu monostabil mulivibrator maupun astabil mutivibrator.
Pada alat ini (rangkaian transmitter) IC 555 digunakan sebagai pembangkit
sinyal frekuensi astabil multivibrator dengan frekuensi yang dihasilkan
sekitar 2,3 kHz.
Gambar 2.8 IC NE555
M ultivibrator astabil dapat menghasilkan aliran-aliran pulsa yang
berkelanjutan, berbentuk segi empat y ang dapat berada pada dua keadaan.
Akan tetapi keadaan kedua pulsa-pulsa yang dihasilkan tidak berada
pada keadaan stabil, seperti terlihat pada gambar 2.9.
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
12
Gambar 2.9 Rangkaian astabil multivibrator
Kapasitor
asitor C mengisi muatan melalui tahanan R1 dan R2, sedangkan
pengosongan muatan hanya melalui tahanan R2. Dalam mode ini, tegangan
kapasitor dalam melakukan pengisian dan pengoson gan berada diantara 1/3
dan 2/3 Vcc. Saat kapasitor mengisi muatan melalui R1 dan R2 tegangan
naik secara eksp onensial.
Perhitungan waktu p engisian pada saat output high adalah :
t 1 =0,693 (R1 + R2 ) C1
Perhitungan waktu p engisian pada saat output low adalah :
t 2 =0,693 (R2 ) C1
M aka total perioda (T) :
T= t 1 + t 2 = 0,693 (R1 + R2 ) C1
Untuk perhitungan frekuensi osilasi :
f =
=(
,
)
Dan untuk
unt uk perhitungan Duty cycle :
D=
R2
R1 + 2R2
Gambar 2.10
10 Bentuk gelombang astabil multivibrator
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
13
2.7 Buzzer
Buzzer merupakan perangkat output yang menghasilkan suara, prinsip
kerjanya mirip dengan sp eaker biasa. Buzzer ini menjadi bagian dari
rangkaian alarm yang berperan untuk menghasilkan bunyi dengan nada
yang diatur di rangkaian sebelumnya.
Gambar 2.11 Buzzer
Buzz
Buzzer ini dapat bekerja dalam rentang tegangan dari 5Vdc hingga
15Vdc. Semakin tinggi tegangan yang disupply, maka bunyi keluaran akan
semakin keras.
2.9 Relay
Relay merupakan salah satu peralatan elektronik yang berfungsi
untuk memtuskan dan menghubungkan suatu rangkaian elektronik yang
satu
dengan yang lainnya. Pada dasarnya relay adalah
saklar
elektromagnetik yang akan bekerja apabila arus mengalir melalui
kumparan, lalu inti besi akan menjadi magnet dan akan menarik kontakrelay.. Kontak-kontak dapat ditarik apabila garis magnet dapat
kontak relay
mengalahkan gaya pegas yang melawannya. Besarnya gaya magnet
bergantung dari medan di celah udara pada inti magnet, jumlah lilitan
kumparan, dan kuat arus yang mengalir. Untuk memperbesar kuat medan
magnet dibentuk sirkuit magnet.
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
14
Kontak-kontak
Kont
ak-kontak atau kutub-kutub dari relay umumnya memiliki tiga
dasar pemakaian yaitu :
1. Bila kumparan dialiri arus listrik maka kontaknya akan menutup dan
disebut sebagai kontak Normally Open (NO).
2. Bila kumparan dialiri arus listrik maka kontaknya akan membuka dan
disebut dengan kontak Normally Close (NC).
3. Tukar-sambung (Change Over/CO), jenis relay ini mempunyai kontak
tengah yang normalnya tertutup tetapi akan membuat kontak dengan
yang lain bila relay dialiri listrik.
Gambar 2.12 memperlihatkan beberapa bentuk kontak dari sebuah relay :
Gambar 2.12
12 Bentuk Kontak Relay
Gambar 2.13 Relay
2.10 Perangkat Lunak
Perangkat lunak atau software yang digunakan pada proyek akhir
ini digunakan pemrograman BASCOM AVR untuk pemrograman pada
mikrokontroler. BASCOM AVR merupakan suatu program compiler
dengan bahasa pemrograman tingkat tinngi yang dilengkapi oleh simulasi
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
15
compil ke bahasa mesin. BASCOM AVR terdiri dari main windows dan
compiler
simulator windows. Main windows merupakan jendela utama yang dapat
digunakan untuk membuat listing program.
Gambar 2.13 Jendala utama pada BASCOM AVR
Pemrograman BA SCOM AVR memiliki beberapa jenis
variabel data dan
karakter. Jenis – jenis variabel data pada pemrograman BA SCOM AVR
yaitu:
1. Bit (1/8 byte)
Sebuah bit hanya memiliki nilai 0 atau 1. Dimana 8 buah bit sama
dengan 1 byte.
2. Byte (1Byte)
Byte ini memiliki jumlah 8 bit-biner yang bernilai 0-255.
3. Integer (two Bytes)
Integer ini memiliki jumlah 16 bit-biner yang bernilai antara -32,768
sampaidengan +32,767.
4. Word (two bytes)
Word ini memiliki jumlah 16 bit-biner yang bernilai antara 0 sampai
dengan 65535.
5. Long (four bytes)
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
16
Long ini memiliki jumlah 32bit-biner yang bernilai antara 2147483648 sampai dengan 2147483647.
6. Single
Single ini memiliki jumlah 32 bit-biner yang bernilai antara 1.5x1045
sampai dengan 3.4x1038.
7. String (up to 254 bytes)
String ini memiliki panjang dimensi sebanyak 10 byte.
Model Pengunci Pintu Multi User dan Logger Menggunakan
Kode Angka Berbasis Atmega 16
17
Download