59
3.4 Penguat Sinyal
Rangkaian ini berfungsi untuk memperkuat sinyal yang dihasilkan oleh sensor RC5 sehingga cukup kuat untuk memberikan logika high atau logika low kepada µC
ATMega8535. Rangkaian penguat sinyal ditunjukkan pada gambar berikut :
Gambar 3.10 Rangkaian penguat sinyal
Sinyal dari sensor akan diperkuat oleh transistor A733 sebagai penguat depan sekaligus menyesuiakan impedansi input terhadap Op-Amp 358. Op-Amp LM 358 sebagai
penguat ganda non inverting memperkuat sinyal yang dihasilkan oleh penguat depan yaitu transistor A733. Pada Op_Amp pertama sinyal akan dikuatkan sampai maksimal 100 kali
penguatan. Kemudian output dari Op-Amp pertama ini akan diinputkan ke Op-Amp kedua untuk dikuatkan lagi sampai maksimal 100 kali penguatan. Dengan demikian output dari Op-
Amp kedua mampu mendrive transistor C945 untuk menekan logika high atau logika low pada pin input µC ATMega8535.
Transistor C945 ini merupakan transistor jenis NPN. Transistor ini akan aktip saturasi jika pada basis diberikan tegangan lebih besar dari 0,7 volt. Jika transistor ini aktif,
maka kolektor akan terhubung ke emiter sehingga tegangan pada kolektor akan jatuh menjadi 0 volt. Jatuhnya tegangan pada kolektor dari 5 volt ke 0 volt inilah yang merupakan indikasi
60 adanya sinyal infra red yang diterima oleh sensor RC5. Jatuhnya tegangan pada kolektor dari
5 volt ke 0 volt ini juga akan menyebabkan LED indikator menyala. Kolektor dari transistor ini akan dihubungkan ke µC ATMega8535, sehingga
perubahan tegangan yang terjadi pada kolektor akan dapat diketahui oleh µC ATMega8535.
3.5 Perancangan Pengkodean RC5
Pengkodean RC5 yang dikembangkan oleh perusahaan philips mengalami tiga kali perubahan susunan, panjang kode alamat, dan perintah. Frekuensi sub-carrier 36 KHz dan
selang waktu minimum antara 2 data = 89 ms. Bila dituliskan dengan urutan dari kode terlama sampai terbaru maka format data RC5 adalah sebagai berikut :
a. Panjang data : 14 bits Header : tidak ada
Format data : S1 S0 T A4 A3 A2 A1 A0 C5 C4 C3 C2 C1 C0 Jumlah kombinasi alamat : 2 x 2³x2 = 32
Jumlah kombinasi perintah : 2³x2³ = 64
Keterangan : S = Start bits berjumlah 2 T = Toggle bit berjumlah 1
A = Address bits alamat berjumlah 5 C = Commond bits perintah berjumlah 6
b. Panjang data : 13 bits Header : tidak ada
Format data : G4 G3 G2 G1 G0 C5 C4 C3 C2 C1 C0 S1 S0 Jumlah kombinasi alamat : 2x2³x2 = 32
61 Jumlah kombinasi perintah = 2³x2³ = 64
Keterangan : G = Group bits kelompok berjumlah 5 C = Commond bits perintah berjumlah 6
S = Stop bits berjumlah 2 c. Panjang data : 13 bits
Header : tidak ada Format data : G4 G3 G2 G1 G0 C6 C5 C4 C3 C2 C1 C0 S
Jumlah kombinasi alamat : 2x2³x2 = 32 Jumlah kombinasi perintah = 2³x2³x2 = 128
Keterangan : G = Group bits kelompok berjumlah 5 C = Commond bits perintahberjumlah 7
S = Stop bit berjumlah 1 Data lengkap kode alamatkelompok dari perintah RC5 dapat dilihat pada Philips, 1997 dan
Rigby, 1992.
3.5.1 Pengkodean SONY
Kode yang dikembangkan oleh perusahaan SONY ini menggunakan frekuensi sub- carrier 40 KHz dan selang waktu minimum anatara 2 data = 35 ms. Spesifikasi selengkapnya
adalah sebagai berikut : Panjang data : 12 bits
Header : 4T T T = 550 ps SONY
62 Format data : H C0 C1 C2 C3 C4 C5 A0 A1 A2 A3 A4 A5
Jumlah kombinasi alamat : 2³x2³ = 64 Jumlah kombinasi data : 2³x2³ = 64
Keterangan : H = Header awalan data C = Commond bits perintah berjumlah 6
A = Address bits alamat berjumlah 6 Kode SONY dapat mengalami 64 jenis peralatan yang diawali oleh kode alamat adderss
bits dan masing – masing peralatan dapat menggunakan maksimal 64 perintah yang diawali oleh kode perintah commond bits.
3.5.2 Pengujian Rangkaian Sensor Infra Red
Pengujian pada pada rangkaian sensor infra red ini dapat dilakukan dengan cara menghubungkan rangkaian ini dengan sumber tegangan 5 volt, kemudian meletakkan
fotodioda dan infra red secara bersebelahan. Ketika diletakkan benda berwarna putih dihadapannya. Maka pantulan sinar infra red akan mengenai fotodioda, sehingga
menyebabkan LED indikator pada rangkaian penerima akan menyala, dan tegangan output rangkaian sebesar 0,09 volt. Namun ketika diletakkan benda berwarna hitam di depan infra
red dan fotodioda, maka pantulan infra red tidak mengenai fotodioda, hal ini menyebabkan LED indikator pada rangkaian penerima tidak menyala dan tegangan output dari rangkaian
ini sebesar 4,9 volt. Pengujian selanjutnya dilakukan dengan cara menghubungkan rangkaian ini dengan
rangkaian mikrokontroler Atmega8535, dan memberikan program tertentu pada mikrokontroler Atmega8535. Untuk mendeteksi adanya sinyal yang dikirimkan oleh
rangkaian sensor infra red, maka mikrokontroler harus diprogram untuk dapat mengecek
63 sinyal apa yang dikirimkan oleh sensor. Jika sinyal yang dikirimkan adalah sinyal high 1,
berarti benda dihadapannya berwarna hitam, namun jika sinyal yang dikirimkan adalah sinyal low, maka ini berarti benda dihadapannya berwarna putih. Program untuk mendeteksi
pengiriman sinyal dari rangkaian pembaca kode warna ini adalah : Sinyal1
Bit P1.3
Sinyal Bit
P1.2 Cek_Sinyal1 :
Jb sinyal1,Cek_Sinyal2 Clr P3.7
. . . . . . . . . . . . . Cek_Sinyal2 :
Jb sinyal2,Cek_Sinyal1 Setb P3.7
. . . . . . . . . . . . . . Di awal program dibuat inisialisasi port, dimana rutin ini menunjukkan bahwa sinyal1
dihubungkan ke P1.3 dan sinyal2 dihubungkan ke P1.2. Kemudian program akan dilanjutkan dengan rutin cek sinyal1. Pada rutin ini program akan melihat kondisi P1.3 yang
dihubungkan ke sinyal1, dengan menggunakan perintah JB jump if bit, jika kondisi P1.3 bit high, yang berarti benda di hadapan rangkaian pembaca adalah berwarna hitam, maka
program akan lompat ke rutin cek sinyal2. Namun jika kondisi P1.3 notbit low, maka program akan melanjutkan ke rutin Clr P3.7. Perintah ini akan menyebabkan LED yang
terhubung ke P3.7 mati. Jika rangkaian telah berjalan sesuai dengan program yang diberikan, maka rangkaian telah bekerja dengan baik.
64
3.6 Seven Segmen
Seven segmen merupakan komponen elektronika yang banyak digunakan untuk menampilkan angka. Seven segmen ini sebenarnya merupakan LED yang disusun sedemikian
rupa sehingga membentuk suatu pola tertentu, dimana jika LED –LED tersebut dinyalakan dengan kombinasi tertentu, maka akan terbentuk suatu angka tertentu.
seven segmen mempunyai 7 buah segmen ditambah 1 segmen yang berfungsi sebagai desimal point. Gambar susunan dari seven segmen ditunjukkan pada gambar berikut ini :
Gambar 3.11 susuna n Seven segmen
Segmen yang atas disebut segmen a, segmen sebelah kanan atas disebut segmen b, dan seterusnya sesuai gambar di atas. Dp merupakan singkatan dari desimal point.
Seven segmen ada 2 tipe, yaitu common anoda dan common katoda. Pada seven segmen tipe common anoda, anoda dari setiap LED dihubungkan menjadi satu kemudian
dihubungkan ke sumber tegangan positif dan katoda dari masing- masing LED berfungsi sebagai input dari seven segmen, seperti ditunjukkan pada gambar berikut ini :
Gambar A konfigurasi seven segmen tipe common anoda
65 Sesuai dengan gambar di atas, maka untuk menyalakan salah satu segmen, maka
katodanya harus diberi tegangan 0 volt atau logika low. Misalnya jika segmen a akan dinyalakan, maka katoda pada segmen a harus diberi tegangan 0 volt atau logika low, dengan
demikian maka segmen a akan menyala. Demikian juga untuk segmen lainnya. Pada seven segmen tipe common katoda, kaoda dari setiap LED dihubungkan menjadi
satu kemudian dihubungkan ke ground dan anoda dari masing- masing LED berfungsi sebagai input dari seven segmen, seperti ditunjukkan pada gambar berikut ini :
Gambar B konfigurasi seven segmen tipe common katoda
Sesua i dengan gambar di atas, maka untuk menyalakan salah satu segmen, maka anodanya harus diberi tegangan minimal 3 volt atau logika high. Misalnya jika segmen a
akan dinyalakan, maka anoda pada segmen a harus diberi tegangan minimal 3 volt atau logika high, dengan demikian maka segmen a akan menyala. Demikian juga untuk segmen
lainnya.
3.6.1 Perancangan Rangkaian Display
Setiap penekanan pada tombol password, nilainya akan ditampilkan ke display. Rangkaiannya adalah sebagai berikut :
66
SEVEN_SEG_DISPLAY
A B C D E FG
In Clock
Out D6
D5 D4
D3 D2
D1 D0
4094
D7 2
3 10
14 13
12 11
7 6
5 4
SEVEN_SEG_DISPLAY
A B C DE FG
In Clock
Out D6
D5 D4
D3 D2
D1 D0
4094
D7 2
3 10
14 13
12 11
7 6
5 4
SEVEN_SEG_DISPLAY
A B C DE F G
In Clock
Out D6
D5 D4
D3 D2
D1 D0
4094
D7 2
3 10
14 13
12 11
7 6
5 4
5V
VCC
i i
i
P3.0 AT89S51 P3.1 AT89S51
Gambar 3.12 Rangkaian Display Seven Segmen
Display ini menggunakan 3 buah seven segmen yang dihubungkan ke IC 4094 yang merupakan IC serial to paralel. IC ini akan merubah 8 bit data serial yang masuk menjadi
keluaran 8 bit data paralel. Rangkaian ini dihubungkan dengan P3.0 dan P3.1 ATMega8535. P3.0 merupakan fasilitas khusus pengiriman data serial yang disediakan oleh mikrokontroler
ATMega8535. Sedangkan P3.1 merupakan sinyal clock untuk pengiriman data serial. Dengan menghubungkan P3.0 dengan IC serial to paralel IC 4094, maka data serial
yang dikirim akan diubah menjadi data paralel. Kemudian IC 4094 ini dihubungkan dengan seven segmen agar data tersebut dapat ditampilkan dalam bentuk angka. Seven segmen yang
digunakan adalah aktip low, ini berarti segmen akan hidup jika diberi data low 0 dan segmen akan mati jika diberi data high 1.
Untuk menampilkan angka pada seven segmen, maka data yang harus diberikan adalah sebagai berikut:
• Untuk menampilkan angka nol, data yang harus dikirim adalah
20h •
Untuk menampilkan angka satu, data yang harus dikirim adalah 0ech
67 •
Untuk menampilkan angka dua, data yang harus dikirim adalah 18h
• Untuk menampilkan angka tiga, data yang harus dikirim adalah
88h •
Untuk menampilkan angka empat, data yang harus dikirim adalah 0c4h
• Untuk menampilkan angka lima, data yang harus dikirim adalah
82h •
Untuk menampilkan angka enam, data yang harus dikirim adalah 02h
• Untuk tampilan kosong tidak ada nilai yang tampil, data yang harus dikir im adalah
0ffh Program untuk menampilkan angka pada display seven segmen adalah sebagai berikut:
bil0 equ 20h bil1 equ 0ech
bil2 equ 18h bil3 equ 88h
bil4 equ 0c4h bil5 equ 82h
bil6 equ 02h bilkosong equ 0ffh
mov 60h,bil1 mov 61h,bil2
mov 62h,bil3 Tampil:
mov sbuf,62h jnb ti,
clr ti mov sbuf,61h
jnb ti, clr ti
mov sbuf,60h jnb ti,
clr ti sjmp Tampil
68 Progran di atas akan menampilkan nilai
123 pada display seven segmen. Dan nilai
berapapun yang diisikan ke alamat 60h, 61h dan 62h
akan ditampilkan pada display seven segmen.
IC HEF4094B adalah suatu IC shift register 8 tingkat yang memiliki register latch untuk setiap bit untuk keperluan memindahkan data dari saluran serial ke saluran paralel
dengan 3 tingkatan pergeseran bit Q0 sampai bit Q7 menuju output. Output paralel dapat dihubungkan langsung dengan jalur data umum. Data digeser pada perbahan sinyal clock dari
Low ke High, selanjutnya data digeser dari register geser ke register penyimpanan, kemudian dengan memberikan logika High pada pin OE akan menggeser data dari regiter penyimpanan
menuju register output.
69
3.7 Diagram Alir Flowchart
Start
P2.2=0?
Infra red RC5
L1 L2 L3 L4 L5 L6 L7 L8 hdp hdp hdp hdp hdp hdp hdp
Ya L1 L2 L3 L4 L5 L6 L7 L8
mati mati mati mati mati mati mati
Hidup Lampu Mati Lampu
P2.0=0? P2.1=0?
Tunggu 8 detik
Cara Kerja :
Program diawali dengan menunggu sinyal dari P2.2 yang dihubungkan ke sensor infra red RC5. Jika sensor ini mengirimkan sinyal high 1, maka program akan terus menunggu
sampai ada pengirim sinyal low 0. Ketika sensor ini memberikan sinyal low, yang berarti ada sinar yang masuk dan posisinya sudah fix, maka program akan membaca sesuai dengan
70 salah satu data yang ada dalam memori, maka program akan memerintah lampu untuk hidup.
Lampu akan berhenti jika sensor lampu hidup mengirim sinyal low 0. Selanjutnya program akan menjalankan program tunda selama kurang lebih 8 detik. Kemudian program akan
memerintah lampu untuk mati. Lampu akan berhenti jika sensor lampu mati mengirimkan sinyal low 0.
Selanjutnya program akan kembali ke rutin awal untuk menerima sinar yang diberikan berikutnya.
71
BAB IV PENGUJIAN PROGRAM
4.1 Analisa Program
Dari proses yang telah dilakukan terhadap pengujian rangkaian dari segi perangkat lunak softwarenya. Perangkat lunak software adalah seperangkat instruksi yang disusun
menjadi sebuah program untuk memerintahkan microkomputer melakukan suatu pekerjaan.
Sebuah instruksi selalu berisi kode operasi po-code, kode pengoperasian inilah yang disebut
dengan bahasa mesin yang dapat dimengerti oleh mikrokontroler. Intruksi- instruksi yang digunakan dalam memprogram suatu program yang diisikan pada AT8535 adalah instruksi
bahasa pemograman assembler atau sama dengan instruksi pemrograman pada IC mikrokontroler 8535.
Sistem pengendalian la mpu AC tersebut tidak terlepas dari program pengendali yang dibuat. Dalam hal ini program pengendali disimpan dalam Flash FEROM mikrokontroler
ATMega8535. jika program pengendali yang dibuat benar, maka pengendalian dapat dilakukan dengan benar. Begitu juga sebaliknya jika program pengendali yang dibuat salah,
maka pengendalian yang dilakukan juga ikut salah. Bagaimanapun juga mikrokontroler ATMega8535 hanyalah Single Chip Microcomputer SCM, yang memiliki arsitektur yang
sama dengan arsitektur computer dan dalam istilah computer dikenal prinsip bahwa ‘garbage in garbage out’, maksudnya : ‘ sampah yang masuk, sampah juga yang keluar’.
Disisi lain peranan manusia, brainware sebagai pembuat program pengendali software maupun perancang perangkat keras hardware turut mendukung keberhasilan