BAB IV ANALISA DAN HASIL KINERJA ALAT
4.1. Analisa dan Tujuan Pengujian Analisa bertujuan untuk menjelaskan secara teoritis sistem kerja rangkaian yang dirancang, sementara pengujian dilakukan untuk melihat performa dari alat yang telah dirancang tersebut, dengan harapan hasil sesuai dengan yang kita inginkan/dirancang dan referensi. Pada pengujian alat light dimmer ini, pengambilan data dilakukan pada tiap bagian atau blok. Untuk dapat melakukan pengamatan tersebut, dilakukan pengukuran masing-masing blok sistem ataupun komponen yang digunakan sehingga mendapatkan nilai-nilai yang diinginkan sesuai dengan referensi. Adapun bagian yang dilakukan pengukuran oleh penulis diantaranya : Pengujian catu daya/voltage regulator +5Vdc Pengujian IC TL494CN Pengujian sensor cahaya (LDR) Pengujian nilai ADC dari mikrokontroler Pengujian pada lampu pijar/bohlam Pengujian sistem secara keseluruhan Proses pengujian ini dilakukan di tempat tinggal penulis, dan di kampus Universitas Mercu Buana.
4.2. Analisa Rangkaian Berikut merupakan analisa dan gambar bentuk gelombang yang terjadi pada rangkaian secara teoritis.
40 http://digilib.mercubuana.ac.id/
41
Gambar-4.1. Bentuk Gelombang tanpa Trigger
Pada Gambar-4.1 menjelaskan tentang prinsip kerja TRIAC, dimana TRIAC yang dihubungkan dengan sumber tegangan 220 Vac akan men-supply daya ke beban melalui beban ZL (lampu) bergantung trigger pada gate (G). Gambar tersebut merupakan bentuk gelombang jika gate (G1) tidak di-trigger maka tegangan output (Vo) = nol, sehingga beban ZL (lampu) tidak menyala.
http://digilib.mercubuana.ac.id/
42
Gambar-4.2. Bentuk Gelombang dengan Trigger
Pada Gambar-4.2 merupakan bentuk gelombang jika gate di-trigger. Jika gate (G2) di-trigger menjelang akhir kurva sinus dari tegangan sumber (Vs), maka tegangan output (Vo) rata-rata pada beban nilainya kecil sehingga lampu menyala redup. Sementara jika gate (G3) di-trigger pada awal kurva tegangan sumber (Vs) maka tegangan output (Vo) rata-rata nilainya besar sehingga lampu menyala terang.
http://digilib.mercubuana.ac.id/
43
Gambar-4.3. Bentuk Gelombang Penyearah
Gambar-4.3 merupakan bentuk rangkaian penyearah gelombang, dimana pada bagian ini output LED akan berfungsi sebagai alat untuk mensinkronkan trigger gate dengan tegangan sumber (Vs). Hasil dari penyearahan jika menggunakan beban R (resistansi) terlihat pada bentuk gelombang V1. Sementara hasil dari penyearahan untuk menyalakan LED terlihat pada bentuk gelombang LED. Dari gambar tersebut LED akan padam jika posisi gelombang pada sekitar persilangan kurva sinus di titik t0, t1, t2, t3 dan seterusnya. Prinsip padam dan menyalanya LED tersebut dijadikan untuk meng-Onkan atau meng-Off-kan phototransistor. Rangkaian tersebut dapat terlihat pada Gambar-4.4 berikut.
http://digilib.mercubuana.ac.id/
44
Gambar-4.4. Rangkaian Kontrol Photo-Transistor
Gambar-4.5. Bentuk Gelombang Rangkaian Kontrol PhotoTransistor
http://digilib.mercubuana.ac.id/
45
Dari
Gambar-4.4
di
atas,
padamnya
LED
akan
meng-Off-kan
phototransistor (pT), dengan demikian pT bekerja sebagai switch. Sementara padamnya phototransistor (pT) akan meng-On-kan transistor Q1. Dimana Q1 juga bekerja sebagai switch. Resistor variabel (RV4) merupakan resistansi yang dapat diatur untuk pengisian kapasitor C4 dari tegangan Vcc. Dioda D3 reverse bias (bias terbalik) pada saat Q1 Off-state (t0b – t1a) akan memblok tegangan Vcc ke arah kapasitor C4, sehingga kapasitor C4 terisi tegangan (VCT) dari Vcc melalui RV4 (t0b – t1a). Dioda D3 forward bias (bias maju) pada saat Q1 On-state (t1a – t1b) menyebabkan tegangan pada kapasitor (VCT) terhubung ke ground melalui kolektor – emiter Q1 (switch On) sehingga VCT = 0. Dari gambar rangkaian kontrol phototransistor tersebut pada akhirnya menghasilkan gelombang gigi gergaji yang sinkron dengan gelombang jala-jala listrik PLN. Pada Gambar-4.5 di atas merupakan gambar-gambar bentuk gelombang yang terjadi, diantaranya bentuk gelombang persegi VpT , VQ1 , dan gelombang gigi gergaji VCT . Setelah terbentuknya gelombang gigi gergaji tersebut, kemudian dimanfaatkan untuk membuat Pulse Width Modulation (PWM). Rangkaian PWM ini terbentuk melalui proses membandingkan gelombang gigi gergaji dengan tegangan DC yang variabel. Gambar-4.6 merupakan gambar rangkaian PWM Control Unit dengan menggunakan IC TL494CN. Dari bentuk gelombang gigi gergaji pada gambar sebelumnya yaitu tegangan pada kapasitor (VCT) berfungsi sebagai input pada pin 5 (CT) IC TL494CN. Sementara tegangan DC variabel akan masuk sebagai input pada pin 4 (DTC). Dengan mengatur besar kecilnya DTC, maka akan dihasilkan lebar pulsa (PWM) yang berbeda-beda juga.
Gambar-4.6. Rangkaian PWM Control Unit
http://digilib.mercubuana.ac.id/
46
Keluaran (output) PWM Control Unit tersebut kemudian dialirkan menuju IC MOC3020 (optocoupler) yang berfungsi untuk men-trigger gate TRIAC. Berikut merupakan gambar rangkaian optocoupler yang berfungsi untuk mentrigger TRIAC.
Gambar-4.7. Rangkaian untuk Men-trigger TRIAC
Gambar-4.8. Bentuk gelombang PWM
http://digilib.mercubuana.ac.id/
47
Gambar-4.8 merupakan proses komparasi dua input komparator IC TL494CN, yaitu input sinyal gigi gergaji dan input tegangan DC (VDC) variabel. Bentuk gelombang PWM dan Power Out yang terjadi dapat dijelaskan sebagai berikut, yaitu pada saat tegangan DC (VDC Variabel) tinggi, maka gelombang gigi gergaji yang terpotong adalah pada bagian puncaknya, dimana bagian puncak ini tersinkronkan dengan kurva sinus tegangan sumber bagian akhir gelombang, sehingga hasil komparasinya (perbandingannya) adalah bentuk PWM out berupa pulsa sempit yang digunakan untuk men-trigger TRIAC di akhir tiap perpotongan kurva gelombang sinus. Proses ini menghasilkan Power Outputnya rendah (tegangan rata-ratanya kecil) yang menyebabkan lampu menyala redup. Proses ini digambarkan pada Gambar-4.8 bagian kiri. Jika input tegangan DC variabelnya rendah, maka sinyal gigi gergaji terpotong di bagian bawah dan menghasilkan output komparator yang lebar atau PWM out berupa pulsa yang lebar. Proses ini akan men-trigger TRIAC pada awal kurva gelombang sinus, dan menghasilkan Power Outputnya menjadi besar (tegangan rata-ratanya tinggi) yang menyebabkan lampu menyala terang. Proses ini digambarkan pada Gambar-4.8 bagian kanan.
4.3. Alat dan Media Pengujian Alat dan bahan yang digunakan oleh penulis untuk melakukan pengambilan data yaitu :
Power supply (power switching) 12Vdc, digunakan sebagai power input DC
Multimeter digital atau analog, digunakan untuk mengukur besaran tegangan pada setiap blok
Kondisi ruangan terang, redup, dan gelap, yaitu untuk menguji sensor LDR yang mempengaruhi ke sistem yang lainnya
MCB, digunakan sebagai pelindung pada bagian/blok arus AC
Lampu pijar 60 W, digunakan sebagai output akhir dari keseluruhan sistem alat ini
http://digilib.mercubuana.ac.id/
48
4.4. Pengujian dan Pengukuran Kinerja Alat Seperti yang telah dijelaskan di atas, berikut merupakan langkah-langkah pengujian alat light dimmer. 4.4.1. Pengujian Catu Daya +5 Vdc Pada rangkaian catu daya ini, pengukuran dilakukan pada output regulator 7805 untuk mendapatkan tegangan +5Vdc. Untuk inputnya sendiri menggunakan power switching +12Vdc. Tegangan +5Vdc ini sendiri nantinya digunakan untuk power mikrokontroler dan semua komponen yang membutuhkan power +5Vdc. Tabel 4.1. Data Hasil Pengujian Catu Daya +5 Vdc
Output (Vdc) Hasil Pengukuran Referensi 4.93 5
Input (Vdc) 12
4.4.2. Pengujian IC TL494CN Untuk pengujian IC TL494CN dilakukan dengan memberikan tegangan variabel di kaki pin 4 yaitu DTC. Berikut merupakan tabel hasil pengujian IC TL494CN. Tabel 4.2. Data Hasil Pengukuran TL494CN
Kondisi Gelap Redup Terang
Tegangan DC Variabel (DTC) 0.02 2.05 3.94
Nilai DTC tersebut merupakan nilai tegangan DC variabel yang berfungsi untuk memotong gelombang gigi gergaji di puncak atau di bawah. Jika nilai DTC semakin besar maka lampu menyala semakin redup dan sebaliknya jika nilai DTC semakin kecil maka lampu menyala semakin terang.
http://digilib.mercubuana.ac.id/
49
4.4.3. Pengujian Tegangan Output pada Lampu Pijar Sebelum melakukan pengukuran pada lampu pijar, terlebih dahulu dilakukan pengukuran sumber tegangan AC yaitu besarnya tegangan jala-jala listrik PLN yang sedang digunakan. Karena tegangan jala-jala listrik PLN ini besarnya relatif dan berbeda-beda pada setiap tempat dimana secara teoritis mempunyai nilai 220 Vac, maka hasil pengukuran tegangan jala-jala listrik ini akan mempengaruhi pada pengukuran lainnya. Tabel 4.3. Tegangan Jala-jala PLN
Pengukuran Ke 1 2 3
Tegangan Jala-jala PLN (Vac) 196 197 194
Dari tabel di atas, dapat diketahui besarnya tegangan rata-rata jala-jala PLN yaitu : (
) =
196 + 197 + 194 = 195,7 Vac 3
Tabel 4.4. Pengukuran Arus ke Beban Lampu Pengukuran Ke 1 2 3
=
I (A) 0,200 0,223 0,222
0,2 + 0,223 + 0,222 = 0,215 A 3
Karena tegangan jala-jala PLN yang relatif lebih rendah dari 220 Vac (teoritis) maka daya lampu pijar 60 W akan lebih kecil juga, dari hasil pengukuran tegangan dan arus, maka daya lampu menjadi : (
) = 195,7 x 0,215 = 42,0755 W ≈ 42
http://digilib.mercubuana.ac.id/
50
Dari perhitungan daya lampu diatas, kondisi lampu 60 W tidak tercapai, sehingga pada pengukuran selanjutnya nilai daya lampu 42 W ini menjadi acuan daya maksimal lampu pijar. Pada keadaan terang, redup atau gelap, maka nilai tegangan AC untuk menyalakan lampu pijar berubah-ubah. Berikut merupakan hasil pengukuran tegangan dan arus lampu pijar. Tabel 4.5. Tegangan dan Arus pada Lampu Pijar Ruangan Gelap (Lampu Terang) Arus Lampu (A) Tegangan Lampu (V) 0,223 193 0,222 189 0,222 192 0,222 184 0,222 190 Ruangan Redup (Lampu Redup) Arus Lampu (A) Tegangan Lampu (V) 0,133 119 0,132 102 0,134 120 0,130 110 0,131 112 Ruangan Terang (Lampu Padam) Arus Lampu (A) Tegangan Lampu (V) 0,008 0,6 0,008 0,7
Dari tabel 4.5 di atas, tegangan rata-rata lampu pijar pada kondisi gelap lebih besar daripada kondisi redup, ini sesuai dengan yang diharapkan dan penjelasan bentuk gelombang secara teoritis sebelumnya, dimana ketika kondisi redup tegangan DC variabel tinggi dan bentuk gelombang akan terpotong di akhir siklus kurva sinus dan menyebabkan nilai tegangan rata-rata kecil dan sebaliknya pada kondisi gelap tegangan DC variabel rendah dan bentuk gelombang terpotong di awal siklus gelombang sinus dan menyebabkan nilai tegangan rata-rata besar. Sementara untuk kondisi terang, lampu menyala sangat kecil sekali. Dari hasil pengukuran besarnya tegangan
http://digilib.mercubuana.ac.id/
51
dan arus pada lampu tersebut dapat kita hitung besarnya daya lampu pada masing-masing kondisi, dengan diasumsikan besarnya factor daya adalah 0,8.
Kondisi ruangan gelap (Lampu menyala terang) : ( (
1(
) = V. I. 0,8 = 189,6 x 0,222 x 0,8 = 33,68 W
Kondisi ruangan redup (Lampu menyala redup) : ( (
2(
193 + 189 + 192 + 184 + 190 = 189,6 Vac 5 0,223 + 0,222 + 0,222 + 0,222 + 0,222 )= = 0,222 A 5 ) =
119 + 102 + 120 + 110 + 112 = 112,6 Vac 5 0,133 + 0,132 + 0,134 + 0,130 + 0,131 )= = 0,132 A 5 ) =
) = 112,6 x 0.132 x 0,8 = 11,89 W
Kondisi terang : ( (
3(
0,6 + 0,7 = 0,65 Vac 2 0,008 + 0,008 )= = 0,008 A 2 ) =
) = 0,65 x 0,008 x 0,8 = 0.00416 W
Dari hasil perhitungan di atas, didapatkan bahwa penggunaan lampu pada kondisi redup memakan daya yang lebih kecil yaitu sekitar 12 W dibandingkan pada kondisi gelap yaitu sekitar 34 W dari daya maksimal lampu yaitu 42 W. Dengan sistem otomatis seperti ini, pengaturan penggunaan daya untuk lampu dapat diminimalisir dibandingkan lampu tetap menyala dengan terang walaupun kondisi ruangan tidak membutuhkan sinar cahaya lampu secara penuh. Untuk perhitungan besarnya konsumsi daya dalam WattHour terdapat pada lampiran.
http://digilib.mercubuana.ac.id/
52
4.4.4. Pengujian Sensor Cahaya (LDR) Pengujian dilakukan dengan membuat kondisi ruangan menjadi gelap, redup, dan terang, lalu diukur berapa nilai tegangan yang terjadi pada saat-saat tersebut.
Gambar-4.9. Rangkaian Sensor Cahaya
Rangkaian untuk sistem ini menggunakan sistem pembagian tegangan antara tegangan LDR (
) dan tegangan RV1 (
) dengan tegangan input (Vref)
yaitu +5VDC. Pengukuran dilakukan pada tegangan di LDR (
). Berikut
merupakan tabel hasil pengujian sensor cahaya. Tabel 4.6. Data Hasil Pengukuran Tegangan pada LDR Kondisi Gelap Redup Terang
V LDR (VDC) 2.56 1.83 0.07
Dari Tabel 4.6 tersebut, hasil yang didapat sesuai dengan prinsip sensor LDR, dimana ketika tidak mendapat cahaya (gelap) nilai hambatannya besar sebaliknya ketika mendapat cahaya (terang) maka nilai hambatannya menurun/kecil. Dengan nilai arus yang sama, jika nilai resistansi besar maka didapatkan tegangan yang besar begitu pula dengan nilai resistansi yang kecil didapatkan tegangan yang rendah. Nilai resistansi LDR sendiri dapat dihitung dengan menggunakan rumus pembagian tegangan yang mengacu pada Gambar-4.9 tersebut, yaitu :
http://digilib.mercubuana.ac.id/
53
= .
=
=
.
+ .(
Maka didapatkan nilai . −
Dimana nilai
)
.
+
=
+
adalah :
4.1
= 20,8 Ω (hasil pengukuran) dan
=5 ,
sehingga dengan menggunakan rumus 4.1 akan didapatkan besarnya untuk masing-masing kondisi ruangan. Berikut merupakan hasil perhitungan besarnya
dengan menggunakan nilai
Kondisi ruangan gelap didapatkan
=
Berikut
= 1,83
1,83 . 20,8 Ω = 12007 Ω = 12 Ω 5 − 1,83
Kondisi ruangan terang didapatkan =
= 2,56
2,56 . 20,8 Ω = 21823 Ω = 21,8 Ω 5 − 2,56
Kondisi ruangan redup didapatkan =
dari Tabel 4.6 di atas.
= 0,07
0,07 . 20,8 Ω = 295,33 Ω = 0,29 Ω 5 − 0,07
merupakan
grafik
karakteristik
LDR
terhadap
(iluminasi). Besarnya kuat cahaya dinyatakan dalam Lux.
http://digilib.mercubuana.ac.id/
pencahayaan
54
Gambar-4.10. Grafik Resistansi LDR terhadap Iluminasi Dari gambar grafik tersebut dapat diketahui perbandingan besarnya resistansi LDR terhadap intensitas cahaya/iluminasi, yaitu :
Untuk kondisi gelap dengan resistansi LDR sebesar 21,8 Ω , intensitas cahaya berada di sekitar ± 10 Lux.
Untuk kondisi redup dengan resistansi LDR sebesar 12 Ω , intensitas cahaya berada di sekitar ± 20 Lux.
Untuk kondisi terang dengan resistansi LDR sebesar 0,29 Ω , intensitas cahaya berada di sekitar ± 9000 Lux.
4.4.5. Pengujian Nilai ADC Mikrokontroler AVR Pengujian dilakukan dengan menggunakan pemrograman BASCOM AVR untuk mendapatkan nilai ADC. Hasil yang didapat merupakan sebuah konversi dari nilai tegangan LDR yang didapat menjadi sebuah nilai ADC yang merupakan salah satu fitur dari BASCOM AVR ini. Berikut merupakan coding dari pemrograman ADC ini. _______________________________________________________________ ' program TES ADC.BAS ' $regfile = "m32def.dat" $crystal = 8000000 Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.2 , Rs = Portd.0 Config Lcd = 16 * 2 Config Adc = Single , Prescaler = Auto , Reference = Avcc Start Adc Dim Data_adc As Word
http://digilib.mercubuana.ac.id/
55
Cursor Off Cls Locate 1 , 1 Lcd " Selamat Datang " Locate 2 , 1 Lcd " Tes ADC 2012 " Wait 1 Cls Do Data_adc = Getadc(0) Locate 1 , 4 Lcd "Data ADC:" Locate 2 , 6 Lcd Data_adc ; " " Waitms 200 Loop
___________________________________________________________________________________
Perhitungan untuk mendapatkan nilai ADC adalah sebagai berikut : Dengan menggunakan ADC 10 bit, maka
=2
− 1 = 1023 level kuantisasi 4.2
Resolusi Tegangan (Q) yaitu :
=
=
1023
4.3
Maka untuk mendapatkan nilai ADC yaitu ;
=
1023 4.4
dan untuk mendapatkan nilai yang berbanding lurus antara naiknya intensitas cahaya dengan naiknya nilai ADC, maka : =
−
4.5
Sehingga,
Dimana,
=
−
1023 4.6
Vref = 5 Vdc
http://digilib.mercubuana.ac.id/
56
Berikut merupakan pembagian nilai ADC dengan tiga kondisi ruangan yaitu :
Gelap : 0 ≤ Nilai ADC ≤ 500
Redup : 500 < Nilai ADC ≤ 650
Terang : Nilai ADC > 650
Dari Tabel 4.6 di atas yang merupakan hasil besarnya tegangan LDR dapat dikonversi menjadi nilai ADC dengan menggunakan persamaan 4.6, yaitu : a) Kondisi Gelap
=
5 – 2.56 1023 = 499.2 5
Berikut tampilan nilai ADC pada LCD untuk kondisi gelap.
Gambar-4.11. Data ADC untuk Kondisi Gelap b) Kondisi Redup
=
5 – 1.83 1023 = 648.6 5
Berikut tampilan nilai ADC pada LCD untuk kondisi redup.
Gambar-4.12. Data ADC untuk Kondisi Redup
http://digilib.mercubuana.ac.id/
57
c) Kondisi Terang
=
5 – 0.07 1023 = 1008.7 5
Berikut tampilan nilai ADC pada LCD untuk kondisi terang.
Gambar-4.13. Data ADC untuk Kondisi Terang
Tabel berikut merupakan perbandingan antara nilai-nilai ADC dan besarnya daya lampu yang sudah didapat sebelumnya melalui perhitungan. Tabel 4.7. Perbandingan Antara ADC dengan Daya Lampu Kondisi
ADC (level kuantisasi)
Daya Lampu (W)
Gelap Redup Terang
499.2 648.6 1008.7
33.68 11.89 0.00416
Dari tabel 4.7 di atas dapat dilihat bahwa semakin besar nilai ADC maka besarnya daya lampu akan semakin rendah dan akan mendekati nol yang menyebabkan lampu tidak menyala. Sebaliknya semakin kecil nilai ADC maka daya lampu akan semakin besar dan akan mendekati daya maksimal dari lampu tersebut.
4.4.6. Pengujian Sistem Secara Keseluruhan Pengujian dilakukan mulai dari sensor objek keberadaan ada tidaknya manusia yaitu dengan menggunakan limit switch sebagai dummy sensor, lalu mengubah kondisi ruangan menjadi gelap, redup, atau terang. Dari keadaan-
http://digilib.mercubuana.ac.id/
58
keadaan tersebut terjadi perubahan nyalanya lampu pijar. Selain itu juga ditampilkan status keadaan melalui LCD. Berikut merupakan tampilantampilan LCD dari status keadaan sistem kerja alat tersebut.
Gambar-4.14. Status Kondisi Keadaan Standby 1
Gambar-4.15. Status Kondisi Keadaan Standby 2
Gambar-4.16. Status Kondisi Ruangan Gelap
Gambar-4.17. Status Kondisi Ruangan Redup
http://digilib.mercubuana.ac.id/
59
Gambar-4.18. Status Kondisi Ruangan Terang 4.5. Pemrograman Untuk
pemrograman
dilakukan
dengan
menggunakan
bahasa
pemrograman BASCOM AVR. Berikut merupakan coding untuk pemrograman Automation Light Dimmer ini. __________________________________________________________________ '============================================================================= ' AUTOMATITATION LIGHT DIMMER ' Muhammad Jumadi Akhirudin ' 41410110067 ' Teknik Elektro ' Universitas Mercu Buana ' @2013 '============================================================================= $regfile = "m32def.dat" $crystal = 8000000 On Int0 Objek __________________________________________________________________________________
Langkah pertama dalam pembuatan coding
ini yaitu
mendeklarasikan
pustaka/library berdasarkan mikrokontroler yang digunakan, dalam tugas akhir ini digunakan ATMega32 sehingga file yang dibutuhkan adalah m32def.dat. Sedangkan instruksi $crystal digunakan untuk menentukan frekuensi kerja dari mikrokontrolernya,
yaitu
menggunakan kristal 8MHz atau ditulis
8000000_Hz. Untuk instruksi On Int0 Objek yaitu jika interupsi terjadi maka terjadi lompatan proses ke sub-rutin Objek. Dengan demikian instruksi program akan melaksanakan proses-proses instruksi di dalam sub-rutin tersebut. _______________________________________________________ Config Int0 = Low Level Config Portb = Output Config Portd = Input Config Portc = Output Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.2 , Rs = Portc.0
http://digilib.mercubuana.ac.id/
60
Config Lcd = 16 * 2 Config Adc = Single , Prescaler = Auto , Reference = Avcc Port_ldr Alias Portb Start Adc Dim Data_adc As Word , Adc_convert As Single , Adc_string As String * 10 __________________________________________________________________________________
Langkah selanjutnya pada coding di atas yaitu melakukan konfigurasi terhadap input dan output, diantaranya konfigurasi untuk menggunakan timer 0 sebagai interupsi eksternal, Port B sebagai output untuk LED indikasi, Port D sebagai input interupsi eksternal, Port C sebagai output untuk LCD dan melakukan konfigurasi LCD, lalu kemudian melakukan konfigurasi ADC (Port A sebagai input ADC). __________________________________________________________________________________ Portd = 255 Enable Int0 Enable Interrupts Set Portc.1
‘ menyalakan background LCD
Do Portb.0 = 0 Portb.1 = 0 Portb.2 = 0 Portb.7 = 0 Cursor Off Cls Locate 1 , 1 Lcd " Automatitation " Locate 2 , 1 Lcd " Light Dimmer " Wait 2 Locate 1 , 1 Lcd " Stand By " Locate 2 , 1 Lcd " " Wait 1 Loop __________________________________________________________________________________
Pada coding program di atas, Portd = 255 yaitu untuk membuat output Port D semuanya bernilai logika high (Port D.0 – D.7 = 1). Ini dikarenakan interupsi eksternal aktif low (berlogika 0). Sementara Enable Int0 dan Enable Interrupts yaitu perintah untuk mengaktifkan timer 0 yang digunakan sebagai
program interupsi. Lalu perintah Set Portc.1 yaitu untuk membuat tampilan LCD menyala, ini merupakan salah satu optional dari fasilitas LCD dimana layarnya bisa terang (background menyala) atau redup (background tidak menyala). Program perintah DO – LOOP merupakan perintah yang berulang, dimana dalam coding di atas dimulai dari Port B.0, B.1, B.2, dan B.7 dibuat logika low. Untuk tampilan LCD diawali dengan menghilangkan kursor (Cursor
http://digilib.mercubuana.ac.id/
61
Off) dan membersihkan layar (Cls), kemudian menuliskan karakter-karakter
(Lcd_"Automatitation") pada baris bagian atas (Locate 1,1), dan karakter (Lcd_"Light Dimmer") pada baris bagian bawah (Locate 2,1). Selang 2 detik kemudian (Wait2), tampilan LCD berubah menjadi (Lcd_"Stand By") pada baris atas dan baris bawah dibuat kosong (Lcd "
"). Dan selang 1 detik
kemudian (Wait 1) perintah/instruksi kembali ke atas karena perintah DO – LOOP tersebut. Instruksi ini akan terus menerus berulang selama tidak ada perintah interupsi eksternal dari Port D. Instruksi akan berhenti sesaat ketika ada perintah interupsi, dan jika interupsi telah selesai dilaksanakan maka instruksi DO – LOOP ini kembali dijalankan. __________________________________________________________________________________ Objek: Set Portb.7 Data_adc = Getadc(0) If Data_adc >= 0 And Data_adc <= 500 Then
'gelap = PB2
Adc_convert = Data_adc - 358 Adc_convert = Adc_convert / 657 Adc_convert = Adc_convert * 100 Adc_string = Fusing(adc_convert , "#.#")
' Range adc : 358-1015 ' 1015-358=657
Gosub Ldr1
Elseif Data_adc > 500 And Data_adc <= 650 Then
'redup = PB1
Adc_convert = Data_adc - 358 Adc_convert = Adc_convert / 657 Adc_convert = Adc_convert * 100 Adc_string = Fusing(adc_convert , "#.#")
' Range adc : 358-1015 ' 1015-358=657
Gosub Ldr2
Elseif Data_adc > 650 Then
'terang = PB0
Adc_convert = Data_adc - 358 Adc_convert = Adc_convert / 657 Adc_convert = Adc_convert * 100 Adc_string = Fusing(adc_convert , "#.#")
' Range adc : 358-1015 ' 1015-358=657
Gosub Ldr3
End If Return __________________________________________________________________________________
Instruksi di atas merupakan proses sub-rutin Objek ketika perintah interuspi aktif. Proses yang terjadi yaitu proses manipulasi data input ADC di Port A.0 (Data_adc = Getadc(0)). Data tersebut merupakan data analog dari sensor
http://digilib.mercubuana.ac.id/
62
cahaya (LDR) yang kemudian diubah (convert) menjadi data digital. Manipulasi data tersebut dibagi menjadi tiga bagian yaitu : - kondisi gelap
: (..Data_adc >= 0 And Data_adc <= 500..)
- redup
: (..Data_adc > 500 And Data_adc <= 650..)
- terang
: (..Data_adc > 650..)
Masing-masing dari kondsi tersebut kemudian akan mengalami lompatan proses kembali yaitu menuju sub-rutin Ldr1, Ldr2, dan Ldr3. __________________________________________________________________________________ Ldr1: Cls Portb.0 = 0 Portb.1 = 0 Portb.2 = 1 Locate 1 , 1 Lcd "Light Dimmer ON " Locate 2 , 1 Lcd "DARK" Locate 2 , 12 Lcd Adc_string ; "%" Waitms 200 Return Ldr2: Cls Portb.0 = 0 Portb.1 = 1 Portb.2 = 0 Locate 1 , 1 Lcd "Light Dimmer ON " Locate 2 , 1 Lcd "LOW LIGHT" Locate 2 , 12 Lcd Adc_string ; "%" Waitms 200 Return Ldr3: Cls Portb.0 = 1 Portb.1 = 0 Portb.2 = 0 Locate 1 , 1 Lcd "Light Dimmer ON " Locate 2 , 1 Lcd "BRIGHT" Locate 2 , 12 Lcd Adc_string ; "%" Waitms 200 Return __________________________________________________________________________________
Semua sub-rutin di atas berfungsi untuk menampilkan status dari hasil manipulasi data ADC ke LCD dan PortB (LED indikator). Pada LCD akan menampilkan karakter status dimmer aktif (Lcd_"Light Dimmer ON") atasnya (Locate
1,1), dan status kondisi ruangan (Lcd
http://digilib.mercubuana.ac.id/
di baris bagian "DARK") atau
63
(Lcd_"LOW
LIGHT") atau (Lcd
(Locate_2,1).
"BRIGHT") di baris bagian bawahnya
Instruksi progam ini akan terus berlanjut selama masih ada
perintah interupsi eksternal yang merupakan adanya keberadaan objek dan akan berubah juga status kondisi mengikuti kondisi pencahayaan ruangan.
http://digilib.mercubuana.ac.id/