DASAR TEORI
2.1 Perangkat Keras
2.1.1 LDR (Light Dependent Resistor)
LDR (Light Dependent Resistant) merupakan suatu jenis resistor yang nilai resistansinya berubah-ubah karena adanya intensitas cahaya yang diserap. LDR dibentuk dari Cadium Sulfide (CDS) yang mana Cadium Sulfide dihasilkan dari serbuk keramik. Prinsip kerja LDR ini pada saat mendapatkan cahaya maka tahanannya turun, sehingga pada saat LDR mendapatkan kuat cahaya terbesar maka tegangan yang dihasilkan adalah tertinggi.
Pada saat gelap atau cahaya redup, bahan dari cakram pada LDR menghasilkan elektron bebas dengan jumlah yang relatif kecil. Sehingga hanya ada sedikit elektron untuk mengangkut muatan elektrik. Artinya pada saat cahaya redup LDR menjadi pengantar arus yang kurang baik, atau bisa disebut juga LDR memiliki resistansi yang besar pada saat gelap atau cahaya redup. Pada saat cahaya terang, ada lebih banyak elektron yang lepas dari bahan semikonduktor tersebut. Sehingga akan ada lebih
banyak elektron untuk mengangkut muatan elektrik. Artinya pada saat cahaya terang LDR menjadi konduktor atau bisa disebut juga LDR memilki resistansi yang kecil pada saat cahaya terang. Simbol LDR seperti ditunjukan pada Gambar 2.1, sedangkan Gambar 2.2 menunjukkan grafik hubungan antara resistansi dan intensitas cahaya.
Gambar 2.1 Simbol LDR
LDR digunakan untuk mengubah energi cahaya menjadi energi listrik. Saklar cahaya otomatis adalah salah satu contoh alat yang menggunakan LDR. Akan tetapi karena responsnya terhadap cahaya cukup lambat, LDR tidak digunakan pada situasi dimana intesitas cahaya berubah secara drastis.
Gambar 2.3 LDR (Light Dependent Resistor)
2.1.2 Mikrokontroler ATmega8535
2.1.2.1 Gambaran Umum
Mikrokontroler merupakan suatu trobosan teknologi mikrokontroler dan mikrokomputer menjadi kebutuhan pasar dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semikondultor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah yang banyak) sehingga harga menjadi murah (dibandingkan mikroprosesor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan pada alat-alat bantu dan mainan yang lebih canggih.
Sebagai contoh yang mungkin dapat memberikan gambaran yang jelas dalam penggunaan mikrokontroler adalah pada aplikasi alat ukur tinggi badan otomatis. Umumnya alat ukur tinggi badan masih bersifat manual, dimana pengguna harus menaikkan dan menurunkan sendiri palang atas kepala, dan kemudian membaca penunjukan skalanya. Sementara itu, bagi anak kecil atau orang yang tubuhnya pendek tentu akan kesulitan atau bahkan tidak dapat melakukannya sendiri. Olehkarenanya dengan adanya alat ukur tinggi badan yang berbasis kendali elektronika, orang yang hendak mengetahui tinggi badannya cukup berdiri di depan alat, dan secara otomatis alat tersebut akan mengukur dan menapilkannya pada
display, yang semua itu bisa diperoleh dari mikrokontroler yang digunakan.
Mikrokontroler adalah suatu keping IC dimana terdapat mikroprosesor dan memori program (ROM) serta memori serbaguna (RAM), bahkan ada beberapa jenis mikrokontroler yang memiliki fasilitas ADC, PPL, EEPROM dalam suatau kemasan. Penggunaan mikrokontroler dalam bidang kontrol sangat luas dan popular. Ada beberapa vendor yang membuat mikrokontroler diantaranya Intel, Microchip, Winbond, Atmel, Philips, Xemics dan lain-lain buatan Atmel.
Mikrokontroler Atmega8535 merupakan generasi AVR ( Alf and Vegard’s
Risk processor). Mikrokontroler AVR memiliki arsitektur RISC (Reduced Instruction Set Computing) 8 bit, dimana semua instruksi dalam kode 16-bit (16-bit word) dan
sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. AVR menjalankan sebuah instruksi komponen eksternal dapat dikurangi. Mikrokontroler AVR didesain menggunakan arsitektur Harvard, di mana ruang dan jalur bus bagi memori program dipisahkan dengan memori data. Memori program diakses dengan single-level
pipelining, di mana ketika sebuah instruksi dijalankan, instruksinya akan di-prefetch dari memori program.
2.1.2.2 Arsitektur ATMega8535
Gambar 2.4 Diagram Blok Fungsional ATmega8535
Gambar 2.4 memperlihatkan bahwa ATmega8535 memiliki bagian sebagai berikut:
1. Saluran I/O sebanyak 32 buah, yaitu PortA, Port B, Port C, dan Port D. 2. ADC 10 bit sebanyak 8 saluran.
3. Tiga buah Timer/Counter dengan kemampuan pembanding. 4. CPU yang terdiri atas 32 buah register.
5. Watchdog Timer dengan osilator internal.
6. SRAM sebesar 512 byte.
7. Memori Flash sebesar 8 Kb dengan kemampuan Read While Write. 8. Unit interupsi internal dan eksternal.
9. Port antarmuka SPI.
10. EEPROM (Electrically Ersable Programmable Read Only Memori) sebesar 512 byte yang diprogram saat operasi.
11. Antarmuka komparator analog.
12. Port USART untuk komunikasi serial dengan kecepatan maksimal 12,5 Mbps. 13. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16
2.1.2.3 Konfigurasi Pin ATmega8535
Gambar 2.5 Konfigurasi Pin ATmega8535
Konfigurasi pin ATmega8535 dapat dilihat pada gambar 2.5 Secara fungsional konfigurasi pin ATmega 8535 sebagai berikut:
1. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya. 2. GND merupakan pin ground.
3. Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC.
4. Port B (PB0..PB7) meruapakn pin I/O dua arah dan pin fungsi khusus untuk
5. Port C (PC0..PC7) meruapan pin I/O dua arah dan pin khusus untuk TWI, Komparator analog, dan Timer Oscilator.
6. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin khusus untuk Komparator analog, Interupsi eksternal, dan Komunikasi serial.
7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroller. 8. XTAL1 dan XTAL2 meruapakan pin masukan clock eksternal.
9. AVCC meruapakan pin masukan tegangan untuk ADC. 10. AREF meruapkan pin masukan tegangan referensi ADC.
2.1.2.4 Peta Memori
ATmega8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah. Memori data terbagi manjadi 3 bagian, yaitu 32 buah register umum, 64 buah register I/O, dan 512 byte SRAM Interbal.
Register dengan fungsi umum menempati space data pada alamat terbawah, yaitu $00 sampai $1F, register khusus untuk menangani I/O dan kontrol mikrokontroller menpati 64 alamat $20 hingga $5F, sedangkan SRAM 512 byte. Pada alamat $60 sampai dengan $25F. Konfigurasi memori data ditunjukkan pada gambar 2.6 berikut:
Gambar 2.6 Konfigurasi Memori Data ATmega8535
Memori program yang terletak dalam Flash PEROM tersusun dalam word karena setuiap insruksi memilki lebar 16-bit atau 32-bit. AVR ATmega8535 memiliki 4 Kbyte x 16-bit Flash PEROM dengan alamat mulai dari $000 sampai $FFF. AVR memliki 12-bit Program Counter (PC) sehingga mampu mengalamati isi Flash.
Gambar 2.7 Memori Program ATmega8535
ATmega8535 juga memiliki memori data berupa EEPROM 8-bit sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai $1EF.
2.1.2.5 Status Register (SREG)
Status Register merupakan register berisi status yang dihasilkan pada setiap operasi yang dilakukan ketika suatu instruksi dieksekusi SREG merupakan bagian dari inti CPU mikrokontroler.
1. Bit 7-I : Global Interrupt Enable
Bit yang harus diset untuk meng-enable interupsi. 2. Bit 6-1 : Bit Copy Storage
Instruksi BLD dan BST menggunakan bit-T sebagai sumber atau tujuan dalam operasi bit. Suatu bit dalam sebuah register GPR dapat disalin ke bit T menggunakan instruksi BST, dan sebaliknya bit-T dapat disalin kembali ke suatu bit dalam segister GPR menggunakan instruksi BLD.
3. Bit 5-H : Half Carry Flag. 4. Bit 4-S : Sign Bit
Bit-S merupakan hasil operasi EOR antara flag –N (negative) dan flag-V
(two’s complement overflow).
5. Bit 3-V : Two’s Complement Overflow Flag
Bit yang berguna untuk mendukung opersai aritmatika. 6. Bit 2-N : Negative Flag
7. Bit 2 – N : Negative Flag
Bit akan diset bila suatu operasi menghailkan bilangan negatif. 8. Bit 1-Z : Zero Flag
Bit akan diset bila hasil operasi yang diperoleh adalah nol. 9. Bit 0-C : Carry Flag
2.1.3 LCD (Liquid Crystal Display)
Kegunaan LCD banyak sekali dalam perancangan suatu sistem dengan menggunakan menggunakan mikrokontroler, LCD (Liquid Crysral Display) dapat berfungsi untuk menampilakan suatu nilai hasil sensor, menampilakan teks, atau menampilakan menu pada aplikasi mikrokontroler. M1632 merupakan modul LCD matrix dengan konfigurasi 16 karakter dan 2 baris dengan setiap karakternya dibentuk oleh baris pixel dan 5 kolom pixel (1 baris pixel terakhir adalah kursor).
Didalam modul M1632 sudah tersedia HD44780 yang dikeluarkan oleh Hitachi, Hyundai dan modul-modul M1632 lainnya. HD44780 sebetulnya merupakan mikrokontroler dirancang khusus untuk mengenendalikan LCD dan mempunyai kemampuan untuk mengatur proses scanning pada layar LCD yang terbentuk oleh 16 COM dan 40 SEG sehingga mikrokontroler/perangkat yang mengakses modul LCD ini tidak perlu lagi mengatur scanning pada layar LCD. Mikrokontroler atau perangkat tersebut hanya mengirim data-data yang merupakan karakter yang akan ditampilkan pada LCD atau perintah yang mengatur proses tampilan pada LCD saja.
Adapun konfigurasi dan deskripsi dari pin-pin LCD M1632 antara lain: 1. Pin 1 dihubungkan ke Gnd
2. Pin 2 dihubungkan ke Vcc +5V
3. Pin 3 dihubungkan ke bagian tengan potensiometer 10KOhm sebagai pengatur kontras.
4. Pin 4 untuk membritahukan LCD bahwa sinyal yang dikirim adalah data, jika Pin 4 ini diset ke logika 1 (high, +5V), atau memberitahukan bahwa sinyal yang dikirim adalah perintah jika pin ini di set ke logika 0 (low, 0V).
5. Pin 5 digunakan untuk mengatur fungsi LCD. Jika di set ke logika 1 (high, +5V) maka LCD berfungsi untuk menerima data (membaca data). Dan fungsi untuk mengeluarkan data, jika pin ini di set ke logika 0 (low, 0V). Namun kebanyakan aplikasi hanya digunakan untuk menerima data, sehingga pin 5 ini selalu dihubungkan ke Gnd.
6. Pin 6 adalah terminal enable. Berlogika 1 setiap kali pengiriman atau pembaca data.
7. Pin 7 – Pin 14 adalah data 8 bit data bus (Aplikasi ini menggunakan 4 bit MSB saja, sehingga pin data yang digunkan hanya Pin 11 – Pin 14).
8. Pin 15 dan Pin 16 adalah tegangan untuk menyalakan lampu LCD.
Adapun gambar dari LCD 2x16 adalah sebagai berikut:
2.1.3.1 Struktur Memori LCD
Modul LCD M1632 memilki beberapa jenis memori yang digunakan untuk menyimpan atau memproses data-data yang ditampilkan pada layar LCD. Setiap memori mempunyai fungsi-fungsi tersendiri:
a. DDRAM
DDRAM merupakan memori tempat karakter yang ditampilkan berada. Contohnya karakter ‘A’ atau 41h yang ditulis pada alamat 00 akan tampil pada baris pertama dan kolom pertama dari LCD. Apabila karakter tersebut di alamat 40h, karakter tersebut akan tampil pada baris kedua kolom pertama darai LCD.
b. CGRAM
CGRAM merupakan memori untuk menggambarkan pola seluruh karakter dan bentuk karakter dapat diubah-ubah sesuai keinginan. Akan tetapi isi memori akan hilang saat power supplay tidak aktif sehingga pola karakter akan hilang.
c. CGROM
Adalah memori untuk menggambarkan pola sebuah karakter dan pola tersebut ditentukan secara permanen dari HD44780 sehingga pengguna tidak dapat menubah lagi. Oleh karena ROM bersifat permanen, pola karakter tersebut akan hilang walaupun power supplay tidak aktif.
2.2 Perangkat Lunak
2.2.1 Bahasa BASIC Menggunkan BASCOM-AVR
BASCOM-AVR adalah program BASIC Compiler berbasis Windows untuk mikrokontroler keluarga AVR seperti ATmega, dan yang lainnya. BASCOM-AVR merupakan program dengan bahasa tingkat tinggi BASIC yang dikembangkan dan dikeluarkan oleh MCS Elektronika.
2.2.1.1 Karakteristik Dalam BASCOM
Dalam progrm BASCOM, karakter dasarnya terdiri atas karakter alphabel (A-Z dan a-z), karakter numeric (0-9), dan karakter spesial (lihat tabel dibawah ini)
karakter Nama
Blank ‘ Apostrophe
* Asterisk (symbol perkalian) + Plus sign
, Comma
- Minus sign
. Period (decimal point)
/ Slash (division symbol) will be handled as\ : Colon
; Semicolon < Less than
= Equal sign (assignment symbol or relational operator) > Greater than
\ Backspace (integer or word division symbol)
Tabel 2.1 Karakter Spesial
2.2.1.2 Tipe Data
Stiap variabel dalam BASCOM memiliki tipe data yang menunjukkan daya tampungannya. Hal ini berhubungan denga penggunaan memori mikrokontroler. Berikut ini adalah tipe data pada BASCOM berikut keterangannya.
Tipe Data Ukuran (byte) Range
Bit 1/8 -
Byte 1 0 – 255
Integer 2 -32,768 - +32,767
Word 2 0 – 65535
Single 4 - String hingga 254 byte -
Tabel 2.2 Tipe data BASCOM
2.2.1.3 Variabel
Variabel dalam sebuah pemrograman berfungsi sebagai tempat penyimpanan atau penampungan data sementara, misalnya menampung hasil perhitungan, menampung data hasil pembacaan register, dan lainnya. Variabel merupakan pointer yang menunjukkan pada alamat memori fisik dan mikrokontroler.
Dalam BASCOM, ada beberapa aturan dalam penamaan sebuah variabl: a. Nana variabel maksimum terdiri atas 32 karakter.
b. Karakter bisa berupa angka atau huruf. c. Nama variabel harus dimula dengan huruf. d. Variabel tidak boleh menggunkan kata-
e. kata yang digunakan oleh BASCOM sebagai perintah, pernyataan, internal register, dan nama operator (AND, OR, DIM, dan lain-lain)
Sebelum digunakan maka variabel harus dideklarasikan terlebih dahu. Dalam BASCOM, ada beberapa cara untuk mendeklarasikan sebuah variabel. Cara pertama adalah menggunakan pernyataan ‘DIM’ diikuti nama tipe datanya. Contohnya pendeklarasian menggunkan DIM sebagai berikut:
Dim nama as byte
Dim tombol2 as word
Dim tombol3 as word
Dim tombol4 as word
Dim Kas as string*10
2.2.1.4 Alias
Dengan menggunkan alias, variabel yang sama dapat diberikan nama yang lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias digunakan untuk mengganti nama variabel yang baku, seperti port mikrokontroler.
Dim LedBar as byte
Led1 as LedBar.0 Led2 as LedBar.1 Led3 as LedBar.2
Dalam deklarasi diatas, variabel yang sama dapat diberikan nama yang lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias digunakan untuk mengganti nama variabel yang baku, seperti port mikrokontroler.
Dim LedBar as byte
Led1 as LedBar.0 Led2 as LedBar.1 Led3 as LedBar.2
2.2.1.5 Konatanta
Dalam BASCOM, selain variabel kita mengenal pula konstanta. Konstansa merupakan variabel pula, perbedaannya dengan variabel adalah nilai yang terkandung tetap. Dengan konstanta, kode program yang kita buat akan lebih mudah dibaca dan dapat mencegah kesalahan penulisan pada program kita. Misalnya, kita akan lbih mudah menulis phi dari pada menulis 3,14159867. Sama seperti variabel, agar konstanta bisa dikenal oleh program, maka harus dideklarasikan terlebih dahulu. Berikut adalah pendeklarasikan sebuah konstanta.
Dim A As Const 5
Dim B1 As Const &B1001
Cara lain yang paling mudah:
Const Cbyte = &HF
Const Cint = -1000
Const Csingle = 1.1
Const Cstring = “test”
2.2.1.6 Array
Dengan array, kita bisa menggunakan sekumpulan variabel dengan nama dan tipe yang sama. Untuk mengakses variabel tertentu dalam array, kita harus menggunakan indeks. Indeks harus berupa angka dengan tipe data byte, integer, atau word. Artinya nilai maksimal sebuah indeks sebesar 65535.
Proses pendeklarasikan sebuah array hampir sama dengan variabel, namun perbedaannya kita mengikuti jumlah elemennya. Berikut adalah contoh pemakaian array:
Dim kelas(10) as byte
Dim c as Integer
For C = 1 To 10
a(c) = c
p1 = a(c)
Next
Program diatas membuat sebuah array dengan nama ‘kelas’ yang berisi 10 elelmen (1-10) dan kemudian seluruh elemennya diisikan dengan nilai c yang berurutan. Untuk pembacanya kita menggunakan indeks dimana elemen disimpan. Pada program diatas, elemen-elemen arraynya dikeluarkan ke Port 1 dari mikrokontroler.
2.2.2 Operasi-Operasi Dalam BASCOM
Pada bagian ini akan dibahas tentang cara menggabungkan, memodifikasi, membandingkan, atau mendapatkan informasi tentang sebuah pernyataan dengan menggunkan operator-operator yang tersedia di BASCOM dan bagaimana sebuah pernyataan terbentuk dan dihasilkan dari operator-operator berikut:
a. Operator Aritmatika
Operator digunakan dalam perhitungan aritmatika meliuti + (tambah), - (kurang), / (bagi), dan * (kali).
b. Operator Relasi
Operator berfungsi membandingkan nilai sebuah angka. Hasilnya dapat digunakan untuk membuat keputusan sesuai dengan program yang kita buat. Operator relasi meliput i:
Operator Relasi Pernyataan
= Sama dengan X = Y
<> Tidak sama dengan X <> Y
< Lebih kecil dari X < Y
> Lebih besar dari X > Y
<= Lebih kecil atau sama dengan X <= Y >= Lebih besar atau sama dengan X >= Y
Tabel 2.3 Tabel Operator Relasi
c. Operator Logika
Operator logika digunakan untuk menguji sebuah kondisi atau memanipulasi bit dan operasi bolean. Dalam BASCOM, ada empat buah operator logika, yaitu AND, OR , NOT, dan XOR.
Operator logika bisa pula digunakan untuk menguji sebuah byte dengan pola bit tertentu, sebagai contoh:
Dim A As Byte A = 63 And 19 PPRINT A A = 10 or 9 PRTINT A Output 16 11 d. Operator Fungsi
Operator fungsi digunakan untuk melengkapi operator yang sederhana.
2.2.3 Aplikasi BASCOM dengan LCD
Salah satu kelebihan yang dimiliki oleh BASCOM adalah programnya yang menyediakan rutin-rutin khusus untuk menampilkan karakter menggunakan LCD. Bahkan kita pun dapat membuat karakter special dengan fasilitas LCD designer.
Antarmauka antara LCD dengan ATmega8535 menggunakan mode antarmuka 4 bit. Selain lebih hemat I/O, mode demikian mempermudah proses pembuatan PCB-nya. Program berikut akan menjalankan beberapa perintah berkenan dengan LCD $regfile = “m8535.dat” $crystal = 4000000 dim x as byte config LCD = 16*2 Cursor off do X = 100 Cls Lcd “namaku Elda” Lowerline Lcd “Nilaiku selalu”; x Wait 1 Cls Lcd “<<<< Hebat >>>>” For x=1 to 16
Shiftlcd left next For x=1 to 32 Shiftlcd right Waitms 200 Next x = 100 cls lcd hex x loop
penjelasan programnya sebagai berikut:
a. Dim x As Byte
Pernyataan di atas merupakan pendeklarasian variabel c/x dengan ukuran byte. b. Config LCD = 16 * 2
Oleh karana itu konfigurasi pendeklarasikannya delisting program yang kita buat seperti dikontrolkan diatas.
c. CLS
Perintah CLS berfungsi membersihkan atau mengosongkan tampilan LCD. d. Lowerline
Perintah berfungsi memindahkan kursor ke baris bawah. Karena LCD yang digunakan adalah LCD 2x16, maka LCD memilih 2 baris dan kolom.
e. X = 100
Lcd “namaku Elda”
Lowerline
Lcd “Nilaiku selalu”; x
Ketika kita menjalankan perintah di atas, maka keluarannya adalah: Nama Elda
Nilaiku selalu 100
Contoh tersebut menunjukkan bahwa kita dapat menampilkan isi sebuah variabel menggunakan LCD hanya dengan menulis.
f.Shift LCD left/right
Perintah digunakan untuk menggeser tampilan LCD ke kiri atau ke kanan sebanyak 1 langkah. Perintah berguna untuk menampilkan kalimat yang panjang dan membuat animasi LCD.
g. Lcdhex x
Perintah berfungsi mengirim isi sebuah variabel LCD dalam format hexadecimal. Jika ingin menjalankan program, maka hasilnya 64
BAB 3
PERANCANGAN ALAT DAN PROGRAM
3.1 Diagaram Blok
Berikut ini akan diperlihatkan mengenai diagram blok dari rangkaian lux meter dengan menggunakan sensor LDR (Light Dependent Resistor). Secara umum alat ini terdiri dari 3 blok yaitu blok sensor cahaya yaitu LDR, blok mikrokontroler ATmega8535, dan blok LCD. Blok sensor cahaya yaitu LDR berfungsi sebagai input, dimana blok ini akan memberikan tegangan yang berubah-ubah ke ADC yang terdapat pada mikrokontroler ATmega8535 sesuai dengan intensitas cahaya yang diterimanya dan selanjutnya mikrokontroler akan diprogram lagi sehingga keluaran dari mikrokontrolernya berupa nilai intensitas cahaya. Blok mikrokontroler ATmega8535 berfungsi untuk mengubah sinyal analog menjadi sinyal digital dan kemudian mengolah sinyal tersebut sesuai dengan apa yang telah di programkan ke dalamnya. Blok LCD 16 x 2, blok ini berfungsi untuk menampilkan nilai intensitas cahaya yang ditampilkan merupakan data yang dihasilkan. Nilai intensitas cahaya yang ditampilkan merupakan data yang dihasilkan oleh mikrokontroler.
3.2 Diagaram Alir (Flowchart)
Adapun diagaram (flowchart) dari pemprograman adalah sebagai berikut :
Program dimulai dengan inisialisasi program untuk menentukan alamat memori dan port yang dipakai pada program. Setelah itu program akan membaca variabel E,L,D dan A yang terdapat pada LDR 0,1 ,2 dan 3 yang memberikan nilai yang berubah-ubah ke ADC. Untuk menghasilkan nilai ADC diambil nilai rata-rata dari ke empat LDR, selanjutnya untuk pembacaan nilai intensitas LDR adalah dengan membaca hasil pengukuran rata-rata dari hasil konversi nilai ADC yang terdapat pada mikrokontroler Atmega8535. Dimana hasil konversi tersebut adalah hasil konversi nilai output dari sensor LDR menjadi nilai digital dengan nilai Lux meter komersial.
3.3 Perancangan Power Supplay (PSA)
Rangakaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang ada. Rangkian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 vol, keluaran 5 volt digunakan untuk mensupplay tegangan keseluruh rangkaian, sedangkan keluaran 12 volt digunakan untuk mensupplay tegangan pada aplikasi yaitu rangkaian voltage devider. Rangakain power supplay ditunjukkan pada gambar berikut ini :
Trafo CT merupakan trafo stepdown yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan diserahkan dengan menggunakan dua buah dioda, selanjutnya 12 volt DC akan diratakan oleh kapasitor 2200 μF. Regulator tegangan 5 vollt (LM7805CT) digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 32 disini berfungsi untuk mensupplay arus apabila terjadi kekuranagn arus pada rangkaian, sehingga regulator tegangan (LM7805CT) tidak akan panas ketika rangkaian bututh arus yang cukup besar. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda penyearah.
3.4 Rankaian Sensor Cahaya
3.4.1 Prinsip Kerja Rangakian
Untuk mengetahui berapa intensitas cahaya, maka alat dilengkapi dengan sebuah sensor. Sensor yang digunakan adalah sensor cahaya LDR (Light Dependent Resistor).
. Semakin besar intensitas cahaya yang datang, semakin banyak elektron yang terlepas dari ikatan. Sehingga hambatan LDR akan turun saat cahaya meneranginya. LDR akan dikenai cahaya besar yang diumpankan ke transistor adalah:
Tegangan tersebut akan mengaktifkan transistor C945. Pada saat aktif, kolektornya akan mendapatkan tegangan 0 Volt dari ground. Tegangan 0 Volt inilah yang meruapakan sinyal low (0) yang diumpankan ke mikrokontroler Atmega8535.
Pada saat tidak ada cahaya yang mengenai LDR, tegangan yang diumpankan ke transistor adalah:
Tegangan tersebut belum dapat mengaktifkan transistor C495, dengan demikian tegangan kolektor-emitornya antara 4,5 V – 5 V. Tegangan inilah yang merupakan sinyal high (1) yang diumpankan pada mikrokontroler Atmega8535.
3.5 Rangkaian Sistem Minimum Mikrokontroler Atmega8535
Gambar 3.5 Rangkaian Skematik Sistem Minimum Mikrokontroler ATmega8535
Rangkaian skematik dan layout PCB system mkrokontroler ini berfungsi mengontrol apakah seluruh rangkaian sudah bekerja dengan baik. Pada gambar diatas dapat dilihat pada Pin 12 dan 13 dihubungkan ke XTAL 8 Mhz dan dua buah kapasitor 30 pF.