You are on page 1of 91

APLIKASI FUZZY LOGI C UNTUK PENGENDALI

PENERANGAN RUANGAN BERBASIS MIKROKONTROLER


ATMEGA8535
Skripsi
Untuk memenuhi sebagian persyaratan
mencapai derajad Sarjana Teknik
Program Studi S1 Teknik Elektro
Oleh:
Netika Purwaningrum
NIM. 5350402020
Kepada
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS NEGERI SEMARANG
2007
SKRIPSI
APLIKASI FUZZY LOGI C UNTUK PENGENDALI PENERANGAN
RUANGAN BERBASIS MIKROKONTROLER ATMEGA8535
Di persiapkan dan disusun oleh :
NETIKA PURWANINGRUM
NIM. 5350402020
Telah dipertahankan di depan Dewan Penguji
Pada Tanggal 9 April 2007
Susunan Dewan Penguji,
Pembimbing Utama Angota Dewan Penguji
Ir. Litasari, M.Sc. Drs. Noor Hudallah, M.T
NIP. 131 122 534 NIP. 131 813 663
Pembimbing Pendamping
Tatyantoro Andrasto, S.T, M.T
NIP. 132 232 153
Skripsi ini telah diterima sebagai salah satu peryaratan
Untuk memperoleh derajat pendidikan Sarjana Teknik
Tanggal : April 2007
Drs. Djoko Adi Widodo, M.T
NIP. 131 570 064
Ketua Jurusan Teknik Elektro
Universitas Negeri Semarang
PERNYATAAN
Dengan ini saya menyatakan bahwa dalam skripsi ini tidak terdapat karya
yang pernah diajukan untuk memperoleh gelar kesarjanan di suatu perguruan tinggi,
dan sepengetahuan saya juga tidak terdapat karya atau pendapat yang pernah ditulis
atau deterbitkan orang lain, kecuali yang secara tertulis diacu dalam naskah ini dan
disebutkan dalam daftar pustaka.
Semarang, 4 April 2007
Penulis
Netika Purwaningrum
NIM. 5350402020
INTISARI
Suatu penerangan ruang diperlukan oleh manusia untuk mengenali objek
secara visual. Penerangan mempunyai pengaruh terhadap fungsi sebuah ruangan.
Oleh karena itu diperlukan lampu sebagai sumber penerangan utama yang dapat
menunjang fungsi ruangan. Umumnya untuk pengaturan penerangan ruangan
digunakan prinsip on-off. Pengaturan penerangan dengan prinsip on-off hanya
berdasarkan pada kondisi gelap terang ruangan, tanpa menghiraukan kontribusi dari
luar. Hal ini sering mengakibatkan ketidaknyamanan dan ketidakefisienan
penggunaan energi listrik. Oleh karena itu diperlukan pengaturan penerangan yang
dihasilkan lampu.
Prinsip kendali yang digunakan adalah kendali fuzzy. Sistem inferensi fuzzy
yang digunakan pengendali penerangan ruangan ini adalah Metode Mamdani.
Komposisi aturan menggunakan operator OR (union), sedangkan untuk defuzzifikasi
digunakan metode MOM (Mean of Maximum). Sebagai pengendali utama pada
sistem menggunakan miktokontroller ATmega8535 dengan input dari sensor cahaya
(LDR). Output dari pendendali selanjutnya ditampilkan LCD M1632 sebagai
penampil dan sebagai input rangkaian pengatur tegangan. Sistem ini bekerja di dalam
ruangan (in door) menggunakan maket rumah dengan tiga ruangan sebagai model.
Dalam pengujian perangkat keras dan lunak, diketahui bahwa sistem
pengendalian penerangan ruangan ini dapat menghemat energi. Dari pengujian
sensor cahaya diperoleh hubungan antara luminansi dan tegangan yang mendekati
linier, sehingga pengendalian dengan mikrokontroler ATmega8535 dapat bekerja
dengan baik.
Kata kunci: Pengendali Fuzzy, Iluminasi, Mikrokontroler ATmega8535
ABSTRACT
A room illumination require by human to identify object in a visual manner.
Illumination has influence to function of room. Thus require lamp is primary
illumination source which can support room function. Generally to adjust room
illumination use on-off principal. Illumination control use on-off principal just
based on dark or bright inside room without consider contribution from outside. The
think often result in uncomfortable and inefficiency making use of electric current.
This require light intensity control which produce by lamp.
The control principle is fuzzy control. Fuzzy inference system use Mamdani
Method. Rule composition use OR operator (union), while defuzzification use MOM
method. As primary control an system use Microcontroller ATmega8535 with input
from Light censor (LDR). Output from this control system display by LCD M1632
and as input use regulation circuit. This system working indoor use house scale
model with three room as model.
In hardware and software testing, know that illumination control system be
economize energy. From light censor testing get relationship between illumination
and voltage approach linier, so controlled that microcontroller ATmega8535 can
work well.
Key word: Fuzzy Control, Illumination, Microcontroler ATmega8535
MOTTO DAN PERSEMBAHAN
Do all the goods you can, All the best you can, In all times you can, In all places you
can, For all the creatures you can.
Be positive thinking and keep smile
Tempat untuk berbahagia itu di sini. Waktu untuk berbahagia itu kini. Cara untuk
berbahagia ialah dengan membuat orang lain berbahagia. - Robert G. I ngersoll
Persembahan:
Untuk Ibu, Bapak, dan Adiku,
serta teman-teman yang senantiasa mengiringi langkahku
PRAKATA
Puji dan syukur penulis panjatkan kepada Allah SWT atas rahmat dan
karunia-Nya, sehingga pelaksanaan skripsi dan penyusunan laporan ini dapat
terselesaikan. Shalawat dan salam semoga senantiasa tercurah atas Nabi Muhammad
SAW dan para sahabatnya yang taat sampai akhir zaman.
Dalam penyusunan skripsi yang berjudul Aplikasi Fuzzy Logic Untuk
Pengendali Penerangan Ruangan Berbasis Mikrokontroler ATmega8535, penyusun
telah dibantu oleh berbagai pihak. Atas kelancaran pembuatan skripsi, maka
penyusun mengucapkan terima kasih yang tulus kepada:
1. Drs. Djoko Adi Widodo, MT, selaku Ketua Jurusan Teknik Elektro Fakultas
Teknik Universitas Negeri Semarang.
2. Ir. Litasari, M.Sc., selaku dosen pembimbing utama jurusan Teknik Elektro
Universitas Gajah Mada (UGM) yang memberi bimbingan dan pengarahan.
3. Tatyantoro Andrasto, S.T, M.T, selaku dosen pembimbing pendamping jurusan
Teknik Elektro Universitas Negeri Semarang (UNNES) yang memberi
bimbingan dan pengarahan.
4. Drs. Noor Hudallah, MT, selaku dosen penguji jurusan Teknik Elektro
Universitas Negeri Semarang (UNNES) yang memberi pengarahan.
5. Ibu, Bapak, dan keluargaku yang selalu memberikan doa, kasih sayang, serta
dukungan, baik material maupun spiritualnya.
6. H6284NE dan SEJ210i yang mengiringi setiap langkahku.
7. Bima, Azis, Joko, Yoyok, Amirudik, Maya, Pipin, Renny, Kotho, Wawan atas
bantuan, saran dan dukungan selama ini.
8. Anita, Heni, Rina, Indi, Siska, Mbak Atik, Sulis, Asih atas bantuan dan dukungan
selama ini.
9. Teman-teman mahasiswa seperjuangan TE02 Universitas Negeri Semarang.
10. Semua pihak yang tidak dapat penulis sebutkan satu persatu yang telah
membantu hingga terselesainya tugas akhir dan laporan tugas akhir ini.
Penyusun menyadari bahwa masih terdapat kekurangan dalam laporan
Skripsi ini. Untuk itu, kritik dan saran yang bersifat membangun sangat penyusun
harapkan dari semua pihak. Semoga laporan ini bermanfaat bagi perkembangan ilmu
pengetahuan dan ilmu kontrol pada khususnya dan seluruh pihak yang
berkepentingan.
Semarang, April 2007
Penulis
DAFTAR ISI
Halaman Judul ................................................................................................ i
Halaman Pengesahan ...................................................................................... ii
Halaman Pernyataan ....................................................................................... iii
Intisari ............................................................................................................ iv
Abstract ........................................................................................................... v
Motto dan Persembahan................................................................................... vi
Kata Pengantar ................................................................................................ vii
Daftar Isi ......................................................................................................... ix
Daftar Gambar ................................................................................................. xii
Daftar Tabel..................................................................................................... xv
Daftar Lampiran .............................................................................................. xvi
BAB I PENDAHULUAN .............................................................................. 1
1.1. Latar Belakang ........................................................................... 1
1.2. Permasalahan .............................................................................. 2
1.3. Tujuan ........................................................................................ 3
1.4. Batasan Masalah ......................................................................... 3
1.5. Metodologi Penelitian ................................................................. 3
1.6. Sistematika Penulisan ................................................................. 4
BAB II LANDASAN TEORI ......................................................................... 6
2.1. Intensitas Penerangan (Iluminansi) ............................................... 6
2.2. Fuzzy Logic................................................................................. 7
2.2.1.Notasi Himpunan Fuzzy...................................................... 7
2.2.2.Fungsi Keanggotaan............................................................ 8
2.2.3.Operasi Himpunan Fuzzy .................................................... 11
2.2.4.Pengendali Fuzzy Logic ...................................................... 12
2.3. Mikrokontroler ATmega8535 ...................................................... 18
2.3.1.Arsitektur ATmega8535...................................................... 19
2.3.2.Konfigurasi Pin ATmega8535............................................. 20
2.3.3.Peta Memori. ...................................................................... 21
2.3.4.Status Register (SREG)....................................................... 23
2.4. LDR ............................................................................................ 24
2.5. Triac............................................................................................ 26
BAB III PERANCANGAN SISTEM ............................................................. 30
3.1. Perancangan Perangkat Keras ...................................................... 33
3.1.1.Sensor Cahaya .................................................................... 33
3.1.2.Rangkaian Penampil ........................................................... 35
3.1.3.Modul pengatur tegangan.................................................... 37
3.1.4.Mikrokontroler ATmega8535 ............................................. 39
3.2. Perancangan Perangkat Lunak ..................................................... 40
3.2.1.Perancangan Fuzzy Logic.................................................... 42
3.2.2.Pemrograman...................................................................... 48
BAB IV PENGUJIAN PERANGKAT KERAS DAN LUNAK........................ 52
4.1. Pengujian Perangkat Keras .......................................................... 52
4.1.1.Pengujian Sensor Cahaya .................................................... 52
4.1.2.Pengujian Rangkaian Mikrokontroler ATmega8535............ 54
4.1.3.Pengujian LCD M1632 ....................................................... 55
4.1.4.Pengujian Rangkaian Solid State Relay (SSR)..................... 56
4.2. Pengujian Perangkat Lunak ......................................................... 57
4.2.1.Pengujian Pemrograman Pengendali Logika Fuzzy ............. 57
4.2.2.Pengujian Tampilan ............................................................ 59
4.2.3.Pengujian Sistem Pengaturan Penerangan Ruangan............. 60
BAB V PENUTUP .......................................................................................... 61
5.1. Kesimpulan ................................................................................ 61
5.2. Saran ........................................................................................... 61
DAFTAR PUSTAKA ..................................................................................... 62
LAMPIRAN ................................................................................................... 63
DAFTAR GAMBAR
Gambar 2.1. Skema Perumusan Iluminasi (E) .................................................. 1
Gambar 2.2. Representasi Linear Naik ............................................................. 9
Gambar 2.3. Representasi Linear Naik ............................................................. 9
Gambar 2.4. Kurva Segitiga............................................................................. 9
Gambar 2.5. Kurva Trapesium......................................................................... 9
Gambar 2.6. Kurva-S PERTUMBUHAN......................................................... 10
Gambar 2.7. Kurva-S PENYUSUTAN ............................................................ 10
Gambar 2.8. Kurva Bentuk Lonceng ................................................................ 11
Gambar 2.9. Struktur dasar pengendali Fuzzy .................................................. 13
Gambar 2.10. Metode Max-min ....................................................................... 15
Gambar 2.11. Metode Max-Dot ....................................................................... 16
Gambar 2.12. Metode Centroid........................................................................ 17
Gambar 2.13. Metode Bisektor......................................................................... 17
Gambar 2.14. Metode MOM (Mean of Maximum) .......................................... 18
Gambar 2.15. Metode LOM (Largest of Maximum) ......................................... 18
Gambar 2.16. Metode SOM (Smallest of Maximum) ........................................ 18
Gambar 2.17. Diagram Blok Fungsional ATmega8535 .................................... 19
Gambar 2.18. Konfigurasi Pin ATmega8535.................................................... 20
Gambar 2.19. Konfigurasi Memori Data ATmega8535 .................................... 22
Gambar 2.20. Memori Program ATmega8535.................................................. 23
Gambar 2.21. Status Register ATmega8535..................................................... 23
Gambar 2.22. Simbol LDR .............................................................................. 25
Gambar 2.23. Grafik hubungan antara resistansi dan luminansi....................... 25
Gambar 2.24. Rangkaian pengontrol gelombang penuh satu fasa ..................... 26
Gambar 2.25. Bentuk gelombang pengontrol gelombang penuh satu fasa......... 27
Gambar 2.23. Rangkaian ekivalen triac............................................................ 28
Gambar 2.24. Simbol triac ............................................................................... 28
Gambar 2.25. Karakteristik triac ...................................................................... 29
Gambar 3.1. Blok diagram sistem Pengendalian Penerangan Ruangan ............ 30
Gambar 3.2. Denah Maket Rumah ................................................................... 32
Gambar 3.3. Maket Rumah Tampak Depan...................................................... 32
Gambar 3.4. Blok diagram sistem perangkat keras .......................................... 34
Gambar 3.5. Rangkaian sensor cahaya ............................................................. 35
Gambar 3.6. Modul LCD M1632 ..................................................................... 36
Gambar 3.7. Hubungan HD44780 dengan LCD............................................... 36
Gambar 3.8. Rangkain LCD M1632................................................................. 37
Gambar 3.9. Rangkaian Solid State Relay ........................................................ 39
Gambar 3.10 . Rangkaian mikrokontroller ATmega8535 ................................. 40
Gambar 3.11. Diagram alir (flow chat) sistem pengendali penerangan ruangan 41
Gambar 3.12. Diagram alir timer untuk PWM.................................................. 42
Gambar 3.12. Fungsi keanggotaan input r3 ...................................................... 43
Gambar 3.13. Parameter fungsi keanggotaan Segitiga ...................................... 44
Gambar 3.14. Fungsi keanggotaan input r5 ...................................................... 44
Gambar 3.15. Fungsi keanggotaan output LDR dalam ruangan ........................ 45
Gambar 3.16. Parameter fungsi keanggataan Trapesium................................... 45
Gambar 4.1. Grafik Hubungan Antara Tegangan dan Luminansi...................... 55
Gambar 4.2. Grafik Hubungan Antara Defuzzifikasi Sistem dan Perhitungan... 58
Gambar 4.3. Tampilan nama alat...................................................................... 59
Gambar 4.4. Tampilan idantitas pembuat ......................................................... 59
Gambar 4.5. Tampilan Ruang Keluarga ........................................................... 59
Gambar 4.6. Tampilan Ruang Tidur ................................................................. 59
Gambar 4.7. Tampilan Ruang Baca.................................................................. 59
DAFTAR TABEL
Tabel 3.1. Basis aturan (rule base) .................................................................. 46
Tabel 4.1. Hasil Pengujian Rangkaian Sensor .................................................. 54
Tabel 4.2. Hasil Pengujian Rangkaian SSR...................................................... 57
Tabel 4.3. Data Pengujian Pemrograman Logika Fuzzy ................................... 58
Tabel 4.4. Hasil Pengujian Sistem Pengaturan Penerangan Ruangan ................ 60
DAFTAR LAMPIRAN
A. Listing Program
B. Data Sheet
C. Gambar Rangkaian Keseluruhan
D. Kalibrasi Rangkaian Sensor
BAB I
PENDAHULUAN
1.1. Latar Belakang
Perkembangan teknologi kontrol saat ini mulai bergeser kepada otomatisasi
sistem kontrol yang menuntut pengunaan komputer, sehingga campur tangan
manusia dalam pengontrolan sangat kecil. Bila dibandingkan dengan pengerjaan
secara manual, sistem peralatan yang dikendalikan oleh komputer akan memberikan
keuntungan dalam hal efisiensi, keamanan, dan ketelitian. Kemampuan komputer,
baik perangkat keras maupun perangkat lunak, dapat dimanfaatkan untuk berbagai
aplikasi pengendalian, seperti pengendalian suhu, kecepatan motor, penerangan, dan
lain-lain
Suatu penerangan ruang diperlukan oleh manusia untuk mengenali objek
secara visual. Penerangan mempunyai pengaruh terhadap fungsi sebuah ruangan.
Oleh karena itu diperlukan lampu sebagai sumber penerangan utama yang dapat
menunjang fungsi ruangan. Umumnya untuk pengaturan penerangan ruangan
digunakan prinsip on-off, dimana pada saat ruangan gelap lampu dinyalakan dan
akan dimatikan apabila ruangan terang. Dengan prinsip on-off, pengaturan
penerangan hanya berdasarkan pada kondisi gelap terang ruangan tanpa
menghiraukan kontribusi dari luar seperti cahaya matahari. Pada saat kondisi di luar
ruangan mendung dan lampu dalam keadaan off, berarti dalam ruangan agak gelap.
Akan tetapi jika lampu dinyalakan maka di dalam ruangan menjadi terlalu terang
bahkan menyilaukan. Hal ini sering mengakibatkan ketidaknyamanan. Disamping
itu, pemakaian kualitas penerangan yang berlebihan juga berhubungan dengan
efisiensi penggunaan energi listrik. Oleh karena itu diperlukan pengaturan
penerangan, baik untuk faktor kenyamanan maupun efisiensi pemakaian energi
listrik. Pengaturan tersebut sering disebut peredup. Peredupan menggunakan
perinsip-prinsip: pengaturan tegangan masukan, pengaturan arus, atau pengaturan
sudut fase. Dengan pengaturan penerangan dimungkinkan penghematan energi
listrik.
Mengingat pentingnya pengaturan penerangn, dalam tugas akhir ini dirancang
pengendali penerangan ruang-ruang yang secara fungsional berbeda, misalnya ruang
tidur, ruang keluarga, dan ruang baca, dalam sebuah rumah. Sebagai pengendali
intensitas cahaya digunakan mikrokontroler Atmega8535 dengan metode
pengendalian berbasiskan logika fuzzy.
Fuzzy Logic pertama kali dikenalkan oleh Lotfi Zadeh, seorang profesor di
University of California di Berkeley. Logika fuzzy menawarkan alternatif lain dalam
perancangan dimana aksi kontrolnya dinyatakan dengan ungkapan bahasa, bukan
menggunakan nilai - nilai tajam (crisp) seperti pada aksi kontrol konvensional.
1.2. Permasalahan
Dari uraian diatas, dapat disimpulkan permasalahan sebagai berikut:
Bagaimana menerapkan metode fuzzy logic dalam pengaturan penerangan dalam
sebuah rumah, untuk beberapa ruangan yang berbeda.
1.3. Tujuan
Secara garis besar pembuatan alat ini bertujuan untuk mempelajari penerapan
metode fuzzy dalam pengendalian penerangan beberapa ruangan pada sebuah rumah.
1.4. Batasan Masalah
Dalam skripsi ini permasalahan akan dibatasi sebagai berikut :
1. Pengendalian dilakukan secara simulatif, untuk lampu-lampu didalam sebuah
maket rumah dengan tiga ruangan yang fungsinya berbeda, dan dengan satu
lampu pijar dalam setiap ruang.
2. Metode yang digunakan untuk pengendalian penerangan ruangan ini adalah
metode Fuzzy Logic
3. Perangkat keras pengendali menggunakan Mikrokontroler Atmega8535
1.5. Metodologi Penelitian
Metodologi penelitian yang digunakan dalam pembuatan skripsi terdiri dari
beberapa tahapan sebagai berikut:
1. Studi Pustaka/Literatur
Studi ini dilakukan dengan cara mencari dan membaca literature serta karya-
karya Pengendalian Penerangan Ruangan yang sudah dibuat sebelumnya dan
data-data yang berhubungan dengan alat yang akan dibuat.
2. Studi Lapangan
Studi ini dilakukan untuk memperoleh alat dan bahan yang diperlukan untuk
merancang dan membuat modul pengendalian penerangan ruangan pada sebuah
maket rumah.
3. Perancangan dan Pengembangan Sistem Pengendali Penerangan
Pada tahap ini dilakukan perancangan dan pengembangan hardware maupun
software untuk Sistem Pengendali Penerangan
4. Pengujian Sistem Pengendali Penerangan
Studi ini meliputi pengujian sistem yang dirancang pada tahap 3, dengan
menggunakan beberapa parameter pengujian sehingga diperoleh data hasil
pengujian yang selanjutnya dapat dianalisis.
5. Penulisan laporan
Hasil dari studi pustaka/literature, studi lapangan, perancangan dan
pengembangan sistem pengendali penerangan ruangan, serta pengujian sistem
pengendali penerangan ruangan akan dituangkan dalam laporan.
1.6. Sistematika Penulisan
Agar skripsi ini lebih mengarah pada permasalahan dan membuat keteraturan
dalam penyusunan dan penulisannya maka dibuat dalam beberapa bab, sebagai
berikut :
BAB I. PENDAHULUAN
Bab ini berisi latar belakang, permasalahan, tujuan, pembatasan masalah,
metodologi penelitian, dan sistematika penulisan.
BAB II. DASAR TEORI
Bab ini berisi dasar teori mengenai intensitas penerangan dan iluminasi,
fuzzy logic, perangkat keras utama yaitu mikrokontroler Atmega8535 dan
perangkat keras pendukung seperti sensor, dan aktuator.
BAB III. PERANCANGAN
Bab ini berisi rancangan perangkat keras maupun perangkat lunak.
BAB IV. PENGUJIAN DAN ANALISIS
Bab ini berisi hasil pengujian perangkat keras maupun lunak disertai
analisis hasil pengujian.
BAB V. PENUTUP
Bab ini berisi kesimpulan dan saran.
BAB II
DASAR TEORI
2.6. Intensitas Penerangan (Iluminasi)
Intensitas penerangan (E) adalah pernyataan kuantitatif untuk intensitas
cahaya (I) yang menimpa atau sampai pada permukaan bidang. Intensitas penerngan
disebut pula iluminasi atau kuat penerangan.
Dengan menganggap sumber penerangan sebagai titk yang jaraknya (h) dari
bidang penerangan, maka iluminasi (E) dalam lux (lx) pada suatu titik pada bidang
penerangan adalah:
lx
h
I
E
2
........................................................................ (2.1)
Pada skema dibawah ini X sebagai sumber cahaya, sehingga besarnya E pada
titik P dan Q adalah:
Gambar 2.1. Skema perumusan iluminasi (E)
Kuat penerangan pada titik P (E
p
):
2
h
I
E
p
........................................ (2.2)
Kuat penerangan pada titik Q (E
Q
): sin
h
I
E
Q
................................. (2.3)
2.7. Fuzzy Logic
Fuzzy logic pertama kali dikenalkan kepada publik oleh Lotfi Zadeh, seorang
profesor di University of California di Berkeley. Fuzzy logic digunakan untuk
menyatakan hukum operasional dari suatu sistem dengan ungkapan bahasa, bukan
dengan persamaan matematis. Banyak sistem yang terlalu kompleks untuk
dimodelkan secara akurat, meskipun dengan persamaan matematis yang kompleks.
Dalam kasus seperti itu, ungkapan bahasa yang digunakan dalam Fuzzy logic dapat
membantu mendefinisikan karakteristik operasional sistem dengan lebih baik.
Ungkapan bahasa untuk karakteristik sistem biasanya dinyatakan dalam bentuk
implikasi logika, misalnya aturan Jika Maka.
Pada teori himpunan klasik yang disebut juga dengan himpunan crisp
(himpunan tegas) hanya dikenal dua kemungkinan dalam fungsi keanggotaannya,
yaitu kemungkinan termasuk keanggotaan himpunan (logika 1) atau kemungkinan
berada di luar keanggotaannya (logika 0). Namun dalam teori himpunan fuzzy tidak
hanya memiliki dua kemungkinan dalam menentukan sifat keanggotaannya tetapi
memiliki derajat kenaggotaan yang nilainya antara 0 dan 1. fungsi yang menetapkan
nilai ini dinamakan fungsi keanggotaan yang disertakan dalam himpunan fuzzy.
2.7.1. Notasi Himpunan Fuzzy
Misalkan U adalah kumpulan obyek yang secara umum dinyatakan dengan
{u}. U disebut semesta pembicaraan dan u mewakili elemen-elemen dari U. Suatu
himpunan fuzzy F dalam semesta pembicaaraan U dapat direpresentasikan oleh suatu
fungsi keanggotaan (membership function) F yang mewakili nilai dalam interval
[0,1] untuk tiap u dalam U dinyatakan sebagai F = U [0,1]
Himpunan fuzzy F dalam U biasanya dinyatakan sebagai himpunan pasangan
berurutan u dan derajat keanggotaan.
} U u )) u ( , u {( F
f
.......................................... (2.4)
Jika U kontinyu, himpunan fuzzy F dapat ditulis sebagai:

u
f
u
) u (
F .......................................................... (2.5)
Jika U diskrit, himpunan fuzzy F dinyatakan sebagai:

n
1 i i
i f
u
) u (
F ........................................................... (2.6)
2.7.2. Fungsi Keanggotaan
Fungsi keanggotaan (membership function) adalah suatu kurva yang
menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya yang
memiliki interval antara 0 sampi 1. Salah satu cara yang dapat digunakan untuk
mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Ada
beberapa fungsi yang dapat digunakan, yaitu:
1. Representasi Linier
Ada dua keadaan himpunan fuzzy linier. Pertama kenaikan himpunan
dimulai pada nilai domain yang memiliki derajad keanggotaan nol (0)
bergerak ke kanan menuju ke nilai domain yang memiliki derajad
keanggotaan lebih tinggi (Gambar 2.2). Kedua, merupakan kebalikan dari
yang pertama. Garis lurus dimulai dari nilai tertinggi kemudian bergerak
turun ke nilai yang lebih rendah (Gambar 2.3)
Gambar 2.2. Representasi Linear Naik Gambar 2.3. Representasi Linear
Turun
1. Representasi Kurva Segitiga
Kurva segitiga pada dasarnya merupakan gabungan antara dua garis
(linear) seperti terlihat pada Gambar 2.4.
Gambar 2.4. Kurva Segitiga
2. Representasi Kurva Trapesium
Kurva trapesium pada dasarnya seperti bentuk segitiga hanya saja ada
beberapa titik yang memiliki nilai keanggotaan 1 (Gambar 2.5)
Gambar 2.5. Kurva Trapesium
1
0
a
b domain
Derajad
keanggotaan
(x)
1
0
a b domain
Derajad
keanggotaan
(x)
1
0
a b
domain
Derajad
keanggotaan
(x)
c
1
0
a b
domain
Derajad
keanggotaan
(x)
d c
3. Representasi Kurva-S
Kurva-S atau sigmoid berhubungan dengan kenaikan dan penurunan
secara tak linear. Kurva PERTUMBUHAN dan PENYUSUTAN merupakan
kurva-S.
Kurva-S untuk PERTUMBUHAN akan bergerak dari sisi paling kiri
(nilai keanggotaan = 0) ke sisi paling kanan (nilai keanggotaan = 1) seperti
pada Gambar 2.6. Sedangkan Kurva-S PENYUSUTAN akan bergerak dari
sisi paling kanan (nilai keanggotaan = 1) ke sisi paling kiri (nilai keanggotaan
= 0) seperti terlihat pada Gambar 2.7.
Gambar 2.6. Kurva-S PERTUMBUHAN
Gambar 2.7. Kurva-S PENYUSUTAN
4. Representasi Kurva Bentuk Lonceng
Gambar 2.8 menunjukkan kurva bentuk lonceng (bell curve). Kurva
bentuk lonceng ini terbagi atas tiga kelas, yaitu: kurva PI, beta, dan Gauss.
Gambar 2.8. Kurva Bentuk Lonceng
2.7.3. Operasi Himpunan Fuzzy
Jika A dan B adalah dua buah himpunan Fuzzy dalam semesta pembicaraan
U dengan fungsi keanggotaan
A
(u) dan
B
(u), maka pada kedua himpunan Fuzzy
tersebut dapat berlaku operasi :
1. Kesamaan (equality)
Dua buah himpunan Fuzzy A dan B dapat dinyatakan sama jika :
) u ( ) u (
B A
; untuk semua u U............................................... (2.7)
2. Gabungan (union)
Fungsi keanggotaan dari gabungan dua buah himpunan Fuzzy A dan B,

AUB,
dapat dinyatakan sebagai :
{ } ) u ( , ) u ( max ) u (
B A AUB
; untuk semua u U........................ (2.8)
3. Irisan (intersection)
Fungsi keanggotaan dari irisan dua buah himpunan Fuzzy A dan B,
B,
dapat dinyatakan sebagai :
{ } ) u ( , ) u ( min ) u (
B A B A


; untuk semua u U........................ (2.9)
4. Komplemen (complement)
Fungsi keanggotaan dari komplemen himpunan Fuzzy A,
A
, dapat
dinyatakan sebagai :
) u ( 1 ) u (
A
A
; untuk semua u U.......................................... (2.10)
2.7.4. Pengendali Fuzzy Logic
Tujuan utama dalam system pengendali adalah mendapatka keluaran (outpu)
sebagai respon dari masukan (input). Dalam kendali dengan cara klasik, melibatkan
formula-formula matematika yang cukup rumit. Hal ini berbeda dengan kendali
fuzzy. Pengendali Fuzzy merupakan suatu sistem kendali yang berdasar pada basis
pengetahuan manusia didalam melakukan kendali terhadap suatu proses. Konsep
matematika yang mendasari logika fuzzy sangat sederhana dan mudah dimengerti.
Pendekatan fuzzy melibatkan aturan-aturan yang dinyatakan dalam kata-kata dan
tidak memerlukan presisi yang tinggi serta ada toleransi untuk data yang kurang
tepat. Struktur dasar sebuah pengendali Fuzzy diperlihatkan pada Gambar 2.9.
Gambar 2.9. Struktur dasar pengendali Fuzzy
2.2.4.1. Fuzzifikasi
Fuzzifikasi yaitu suatu proses untuk mengubah suatu masukan dari bentuk
tegas (crisp) menjadi fuzzy (variabel linguistik) yang biasanya disajikan dalam
bentuk himpunan-himpunan fuzzy dengan suatu fungsi kenggotaannya masing-
masing.
2.2.4.2. Basis Aturan (Rule Base)
Basis aturan berisi aturan-aturan fuzzy yang digunakan untuk pengendalian
sistem. Aturan-aturan ini dibuat berdasarkan logika dan intuisi manusia, serta
berkaitan erat dengan jalan pikiran dan pengalaman pribadi yang membuatnya. Jadi
tidak salah bila dikatakan bahwa aturan ini bersifat subjektif, tergantung dari
ketajaman yang membuat. Aturan yang telah ditetapkan digunakan untuk
menghubungkan antara variabel-variabel masukan dan variabel-variabel keluaran.
Aturan ini berbentuk JIKA MAKA (IF THEN), sebagai contoh adalah :
Aturan 1 : JIKA x adalah A
1
DAN y adalah B
1
MAKA z adalah C
1
Aturan 2 : JIKA x adalah A
2
DAN y adalah B
2
MAKA z adalah C
2
Aturan i : JIKA x adalah A
i
DAN y adalah B
i
MAKA z adalah C
i
Dengan :
A
i
(i = 1,2,3,) adalah himpunan Fuzzy ke i untuk variabel masukan x
B
i
(i = 1,2,3,) adalah himpunan Fuzzy ke i untuk variabel masukan y
C
i
(i = 1,2,3,) adalah himpunan Fuzzy ke i untuk variabel keluaran z
2.2.4.3. Evaluasi Aturan (Inference)
Berdasarkan basis aturan yang telah dibuat, variabel-variabel masukan fuzzy
diolah lebih lanjut untuk mendapatkan suatu penyelesaian. Dengan demikian dapat
diambil suatu keputusan berupa variabel fuzzy keluaran, yaitu himpunan-himpunan
keluaran fuzzy dengan fungsi keanggotaan yang ditetapkan berdasarkan metode yang
digunakan.suatu keputusan. Metode yang digunakan dalam proses pengambilan
keputusan ini adalah:
1. Metode Max-Min
Pada metode Max-Min, pengambilan keputusan didasarkan pada
aturan operasi menurut Mamdani. Keputusan yang diambil berdasarkan
aturan ke-i dapat dinyatakan dengan
i

ci
(z), sehingga keanggotaan C
adalah titik yang diberikan oleh:

c
(z) = (
1

c1
(z)) (
2

c2
(z)) ... (
i

ci
(z))
atau
c
(z) = max {min (
1
,
c1
(z)), min (
2
,
c2
(z)),..., min (
i
,
ci
(z))}
dimana:

1
=
A1
(x)


B1
(x) = min {
A1
(x),
B1
(x)}

2
=
A2
(x)


B2
(x) = min {
A2
(x),
B2
(x)}

3
=
A3
(x)


B3
(x) = min {
A3
(x),
B3
(x)}

i
=
Ai
(x)


Bi
(x) = min {
Ai
(x),
Bi
(x)}
Proses pengambilan keputusan Max-Min dapat dilukiskan seperti
pada Gambar 2.10.
Gambar 2.10. Metode Max-min
2. Metode Max-Product (Max-Dot)
Keputusan yang diambil berdasarkan aturan ke i dapat dinyatakan
dengan
i

ci
(z), sehingga keanggotaan C adalah titik yang diberikan
oleh:

c
(z) = (
1

c1
(z)) (
2

c2
(z)) ... (
i

ci
(z))
atau
c
(z) = {min (
1
,
c1
(z)), min (
2
,
c2
(z)),..., min (
i
,
ci
(z))}
Proses pengambilan keputusan dengan metode Max-Dot dapat
dilukiskan pada Gambar 2.11.
Gambar 2.11. Metode Max-Dot
2.2.4.4. Defuzzifikasi
Defuzzifikasi dapat didefinisikan sebagai proses pengubahan besaran fuzzy
yang disajikan dalam bentuk himpunan-himpunan fuzzy keluaran dengan fungsi
keanggotaannya untuk mendapatkan kembali bentuk tegasnya (crisp). Hal ini
diperlukan sebab dalam aplikasi nyata yang dibutuhkan adalah nilai tegas (crisp).
Ada beberapa metode defuzzifikasi yang bisa dipakai pada komposisi aturan
MAMDANI (Kusumadewi 2004:44), antara lain:
1. Metode Centroid
Metode centroid ini juga dikenal sebagai metode COA (Center of
Area) atau metode Center of Gravity. Pada metode ini nilai tegas
keluarannya diperoleh berdasarkan titik berat dari kurva hasil proses
pengambilan keputusan (inference).

C
Z
Gambar 2.12. Metode Centroid
2. Metode Bisektor
Pada metode ini nilai tegas keluarannya diperoleh dengan cara
mengambil nilai pada domain fuzzy yang memiliki nilai keanggotaan
setengah dari jumlah total nilaikeanggotaan pada daerah fuzzy.
Gambar 2.13. Metode Bisektor
3. Metode MOM (Mean of Maximum)
Pada metode ini nilai tegas keluarannya diperoleh berdasarkan
rata-rata semua aksi kontrol fuzzy yang mempunyai fungsi keanggotaan
maksimum.
Gambar 2.14. Metode MOM (Mean of Maximum)
4. Metode LOM (Largest of Maximum)

C
Z

C
Z
Pada metode ini, nilai tegas keluarannya diperoleh berdasarkan
tingkat keanggotaan terbesar (
c
(z) maksimum).
Gambar 2.15. Metode LOM (Largest of Maximum)
5. Metode SOM (Smallest of Maximum)
Pada metode ini, nilai tegas keluarannya diperoleh berdasarkan
tingkat keanggotaan terkecil (
c
(z) minimum).
Gambar 2.16. Metode SOM (Smallest of Maximum)
2.8. Mikrokontroler ATmega8535
Mikrokontroller ATmega8535 merupakan mikrokontroller generasi AVR (Alf
and Vegards Risk processor). Mikrokontroller AVR memiliki arsitektur RISC
(Reduced Instruction Set Computing) 8 bit, dimana semua instruksi dikemas dalam
kode 16-bit (16-bits word) dan sebagian besar instruksi dieksekusi dalam 1 siklus
clock.
2.3.1. Arsitektur ATmega8535

C
Z

C
Z
Gambar 2.17. Diagram Blok Fungsional ATmega8535
(diambil dari data sheet ATmega8535)
Gambar 2.17. memperlihatkan bahwa ATmega8535 memiliki bagian sebagai
berikut
1. Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D.
2. ADC 10 bit sebanyak 8 saluran.
3. Tiga buah Timer/Counter dengan kemampuan pembandingan.
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 Erasable Programmable Read Only Memory) sebesar
512 byte yang dapat diprogram saat operasi.
11. Antarmuka komparator analog.
12. Port USART untuk komunikasi serial dengan kecepatan maksimal 2,5 Mbps.
13. Sistem mikroprosessor 8 bit berbasis RISC dengan kecepatan maksimal 16
MHz.
2.3.2. Konfigurasi Pin ATmega8535
Gambar 2.18. Konfigurasi Pin ATmega8535
(diambil dari data sheet ATmega8535)
Konfigurasi pin ATmega8535 dapat dilihat pada Gambar 2.18. Secara
fungsional konfigurasi pin ATmega8535 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) merupakan pin I/O dua arah dan pin fungsi khusus untuk
Timer/Counter, Komparator analog, dan SPI.
5. Port C (PC0..PC7) merupakan 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 merupakan pin masukan clock eksternal.
9. AVCC merupakan pin masukan tegangan untuk ADC.
10. AREF merupakan pin masukan tegangan referensi ADC.
2.3.3. Peta Memori
ATmega8535 memiliki ruang pengalamatan memori data dan memori program
yang terpisah. Memori data terbagi menjadi 3 bagian, yaitu 32 buah register
umum, 64 buah register I/O, dan 512 byte SRAM Internal.
Register dengan fungsi umum menempati space data pada alamat terbawah,
yaitu $00 sampai $1F, register khusus untuk menangani I/O dan kontrol
mikrokontroller menempati 64 alamat $20 hingga $5F, sedangkan SRAM 512 byte
pada alamat $60 sampai dengan $25F. Konfigurasi memori data ditunjukkan Gambar
2.19.
Gambar 2.19. Konfigurasi Memori Data ATmega8535
(diambil dari data sheet ATmega8535)
Memori program yang terletak dalam Flash PEROM tersusun dalam word
karena setiap instruksi memiliki lebar 16-bit atau 32-bit. AVR ATmega8535
memiliki 4 Kbyte x 16-bit Flash PEROM dengan alamat mulai dari $000 sampai
$FFF. AVR memiliki 12-bit Program Counter (PC) sehingga mampu mengalamati
isi Flash.
Gambar 2.20. Memori Program ATmega8535
(diambil dari data sheet ATmega8535)
ATmega8535 juga memiliki memori data berupa EEPROM 8-bit sebanyak
512 byte. Alamat EEPROM dimulai dari $000 sampai $1FF.
2.3.4. 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 mikrokontroller.
Gambar 2.21. Status Register ATmega8535
(diambil dari data sheet ATmega8535)
a. Bit 7 I : Global Interrupt Enable
Bit yang harus diset untuk meng-enable interupsi.
b. Bit 6 T : 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 register GPR menggunakan instruksi BLD.
c. Bit 5 H : Half Carry Flag
d. Bit 4 S : Sign Bit
Bit-S merupakan hasil operasi EOR antara flag-N (negative) dan flag-V
(twos complement overflow).
e. Bit 3 V : Twos Complement Overflow Flag
Bit yang berguna untuk mendukung operasi aritmatika.
f. Bit 2 N : Negative Flag
Bit akan diset bila suatu operasi menghasilkan bilangan negatif.
g. Bit 1 Z : Zero Flag
Bit akan diset bila hasil operasi yang diperoleh adalah nol.
h. Bit 0 C : Carry Flag
Bit akan diset bila suatu operasi menghasilkan carry.
2.9. LDR
LDR (Light Dependent Resistant) merupakan suatu jenis tahanan yang sangat
peka terhadap cahaya. Sifat dari tahanan LDR ini adalah nilai tahanannya akan
berubah apabila terkena sinar atau cahaya. Apabila tidak terkena cahaya nilai
tahanannya akan besar dan sebaliknya apabila terkena cahaya nilai tahanannya akan
menjadi kecil. LDR terbuat dari bahan cadmium selenoide atau cadmium sulfide.
Film cadmium sulfide mempunyai tahanan yang besar jika tidak terkena sinar dan
apabila terkena sinar tahanan tersebut akan menurun. LDR banyak digunakan karena
mempunyai ukuran kecil, murah dan sensitivitas tinggi. Simbol LDR seperti
ditunjukan pada Gambar 2.22, sedangkan Gambar 2.23 menunjukkan grafik
hubungan antara resiatansi dan iluminasi.
Gambar 2.22. Simbol LDR
(diambil dari data sheet LDR)
Gambar 2.23. Grafik hubungan antara resistansi dan iluminasi
(diambil dari data sheet LDR)
2.10.Triac
Pengaturan terhadap lampu listrik dapat dilakukan dengan pemotongan
gelombang sinusoida. Pemotongan terhadap gelombang sinus menyebabkan nilai
efektif arus berkurang sehingga lampu menjadi redup. Pemotongan gelombang sinus
dapat dilakukan menggunakan thyristor. Peredup menggunakan thyristor untuk
mengontrol gelombang penuh satu fasa yang menentukan kuantitas pemotongan
gelombang sinusoida. Prinsip dari kontrol sudut fasa untuk gelombang penuh satu
fasa dapat dijelaskan berdasarkan rangkaian pada Gambar 2.24. Energi mengalir ke
beban dikontrol dengan menunda sudut pemicuan thyristor T1 dan sudut pemicuan
thyristor T2. Selama tegangan masukan setengah siklus positif, daya yang mengalir
dikontrol oleh beberapa sudut tunda dari thyristor T1, dan thyristor T2 mengontrol
daya selama tegangan masukan setengah siklus negatif. Pulsa-pulsa yang dihasilkan
pada T1 dan T2 terpisah 180.
Gambar 2.24. Rangkaian pengontrol gelombang penuh satu fasa
Bentuk gelombang untuk tegangan masukan, tegangan keluaran, dan sinyal
gerbang untuk T1 dan T2 ditunjukkan pada Gambar 2.25.
Gambar 2.25. Bentuk gelombang pengontrol gelombang penuh satu fasa
SCR (Sillicon Controlled Rectifier) dan TRIAC (Bidirectional triode
thyristor) adalah alat thyristor yang paling sering digunakan (Petruzella 2002: 264).
Triac dapat bersifat konduktif dalam dua arah. Dalam hal ini dapat dianggap
sebagai dua buah thyristor yang terhubung invers-paralel dengan koneksi gerbang
seperti ditunjukkan pada Gambar 2.23. Triac mempunyai tiga terminal; terminal
utama 2 (MT
2
), terminal utama 1 atau (MT
1
), dan gerbang (G). Gambar 2.24
menunjukan symbol triac.
Gambar 2.23. Rangkaian ekivalen triac
Gambar 2.24. Simbol triac
Jika terminal MT
2
positif terhadap MT
1
, triac dapat di-on-kan dengan
memberikan sinyal gerbang positif antara G dan MT
1
. Jika terminal MT
2
negatif
terhadap MT
1
maka triac dapat di-on-kan dengan memberikan sinyalpulsa negatif
antara G dan MT
1
. Tidak perlu memiliki kedua sinyal gerbang positif dan negative
dan triac dapat dihidupkan baik oleh sinyal gerbang positif maupun negative.
Karakteristik v-I dari triac diberikan Gambar 2.25. Arus I, disebut holding current
adalah arus minimun yang dibutuhkan untuk mempertahankan triac tetap on, Triac
merupakan komponen yang simetris dan mampu memberikan perfomansi yang sama
pada daerah kerja kuadran III dari grafik dengan kerja kuadran I. Sehingga Triac
dapat dioperasikan dikuadran I (tegangan dan arua gerbang positif) atau di kuadran
III (arus dan tegangan gerbang negatif).
Gambar 2.25. Karakteristik triac
BAB III
PERANCANGAN ALAT
Perancangan sistem Pengendali Penerangan Ruangan meliputi perancangan
perangkat lunak (software) dan perangkat keras (hardware). Sistem yang dirancang
akan membentuk suatu sistem pengendali penerangan ruang. Pengendalian
penerangan ruang dilakukan dengan mengendalikan besarnya kuantitas cahaya yang
dihasilkan oleh lampu. Untuk pengendalian besarnya kuantitas cahaya, maka
dilakukan pengaturan tegangan yang diberikan ke lampu. Pada Gambar 3.1,
pengaturan tegangan dilakukan oleh blok pengatur tegangan berdasarkan output dari
pengendali fuzzy.
Gambar 3.1. Blok diagram sistem Pengendalian Penerangan satu Ruangan
Interaksi user dengan sistem dapat dilihat dari input yang diberikan yaitu
dengan menekan switch 1. Setelah switch 1 ditekan, input dari sensor cahaya diolah
oleh pengendali dengan metode fuzzy logic. Output dari pendendali selanjutnya
ditampilkan oleh penampil dan sebagai input rangkaian pengatur tegangan. Lampu
akan menyala sesuai dengan input yang diberikan oleh rangkaian pengatur tegangan.
Variabel keluaran dari proses yaitu intensitas cahaya yang dihasilkan lampu akan
berbaur dengan cahaya dari sumber luar menghasilkan iluminasi ruang Selanjutnya
sumber
penerangan luar
30
iluminasi ruang diukur oleh sensor cahaya yang kemudian menghasilkan sinyal
sebagai masukan umpan balik bagi pengendali. Pengendali akan terus mengolah
sinyal masukan dan menghasilkan suatu nilai keluaran sehingga terbentuk suatu
sistem kendali loop tertutup. Sistem akan berhenti bekerja apabila user menekan
switch 1.
Sistem ini bekerja di dalam ruangan (in door) menggunakan maket rumah
dengan tiga ruangan sebagai model , dengan sumber penerangan yang berasal dari
lampu didalam ruang dan sumber penerangan dari luar. Maket rumah tersebut terdiri
dari tiga ruangan, yaitu ruang tamu/keluarga dengan ukuran 30x60 cm, ruang tidur
yang berukuran 30x30 cm, dan ruang baca yang berukuran 30x30 cm. Masing-
masing ruangan menggunakan lampu pijar dengan daya berbeda-beda yang
disesuaikan dengan fungsi ruangan tersebut. Standar kuat penerangan dalam ruangan
untuk ruang keluarga, ruang tidur, dan ruang baca adalah 300, 50, dan 200 lux
(Muhaimin 2001: 145). Ruang keluarga menggunakan lampu dengan daya 20 watt,
ruang tidur menggunakan lampu dengan daya 5 watt, sedangkan ruang baca
menggunakan lampu dengan daya 15 watt. Karena penelitian yang dilakukan
menggunakan model, maka atrandar kuat penerangan tidak terpenuhi. Iluminasi yang
dihasilkan berdasar lampu yang terpasang, terukur untuk ruang keluarga, ruang ruang
tidur, dan ruang baca adalah 300, 70, dan 200 lux. Denah maket rumah ditunjukkan
oleh Gambar 3.2, sedangkan Gambar 3.3 menunjukkan maket rumah tampak depan.
Gambar 3.2. Denah Maket Rumah
Gambar 3.3. Maket Rumah Tampak Depan
Alat dan Komponen Perancangan
Pada perancangan Aplikasi Fuzzy Logic untuk Pengendali Penerangan
Berbasis Mikrokontroler ini digunakan alat dan komponen sebagai berikut:
1. Personal Computer (PC), digunakan untuk membuat program dan
mendownloadkannya ke mikrokontroler ATmega8535.
2. Downloader ATmega8535 untuk mendownload program dari PC ke
mikrokontroler ATmega8535.
3. Sensor Cahaya (LDR) sebagai tranduser.
4. Mikrokontroler ATmega8535 sebagai pengendali fuzzy
5. LCD sebagai penampil iluminasi ruang.
6. Solid State Relay (SSR)
7. Maket rumah yang memiliki tiga ruangan untuk memodelkan ruangan-ruangan
yang akan dikendalikan penerangannya Maket tersebut menggunakan lampu
pijar dengan daya yang berbeda untuk masing-masing ruangan.
3.3. Perancangan Perangkat Keras
Perancangan perangkat keras meliputi perancangan, rangkaian sensor cahaya,
bagian pengendali berbasiskan mikrokontroler ATmega8535, rangkaian penampil,
rangkain Solid State Relay (SSR). Blok diagram system perangkat keras ditunjukkan
pada gambar 3.4, sedangkan gambar rangkaian keseluruhan terlampir.
Gambar 3.4. Blok diagram sistem perangkat keras
3.3.1. Sensor Cahaya
Rangkaian sensor cahaya yang digunakan pada pengendali penerangan
ruangan ditunjukkan pada Gambar 3.5. Sebagai sensor cahaya adalah LDR (Light
Dependent Resistor) yang berfungsi untuk mendeteksi besarnya iluminasi di dalam
ruangan. Pengendali penerangan ruangan ini menggunakan enam buah LDR sebagai
transducer yg mengubah energi cahaya ke energi listrik yang selanjutnya akan diolah
mikrokontroller. LDR 0 dan LDR 1 diletakkan di ruang 0, LDR 2 dan 3 diletakkan di
ruang 1, sedangkan LDR 4 dan LDR 5 diletakkan di ruang 2. Masing-masing
ruangan menggunakan 2 sensor. Sensor pertama diletakkan di dekat lampu, hal ini
bertujuan supaya iluminasi yang diukur sebagian besar bersumber dari lampu.
Sedangkan sensor kedua diletakkan dekat dengan sumber luar.
R0
1k
L0
LDR
VCC
R1
1k
L1
LDR
VCC
R2
1k
L2
LDR
VCC
R3
1k
L3
LDR
VCC
LDR.0 LDR.1 LDR.2 LDR.3
R4
1k
L4
LDR
VCC
R5
1k
L5
LDR
VCC
LDR.4 LDR.5
Gambar 3.5. Rangkaian sensor cahaya
3.3.2. Rangkaian Penampil
Penampil pada sistem Pengendali Penerangan Ruangan ini menggunakan
modul penyaji kristal cair (LCD) dengan tingkat kecerahan tinggi. Modul ini
merupakan modul penyaji kristal cair matrik titik dengan pengendali di dalamnya.
Pengendali ini mempunyai sebuah ROM/RAM pembangkit karakter di dalamnya dan
RAM data tampilan. Semua fungsi tampilan dikendalikan oleh instruksi-instruksi.
M1632 merupakan Modul LCD Matrix dengan konfigurasi 16 karakter dan 2
baris dengan setiap karakternya dibentuk oleh 8 baris pixel dan 5 kolompixel (1 baris
pixel terakhir adalah kursor). Gambar 3.6. menunjukkan Modul LCD M1632. Dan
Gambar 3.7. menunjukkan hubungan antara layar LCD dengan HD44780 yang
merupakan mikrokontroller pengendali LCD dan mempunyai kemampuan untuk
mengatur proses scanning pada layar.
Gambar 3.6. Modul LCD M1632
Gambar 3.7. Hubungan HD44780 dengan LCD
(diambil dari data sheet HD44780)
Rangkaian ini berfungsi untuk menampilkan informasi sebagai berikut:
1. Nama alat
Setelah sistem dihubungkan dengan jala-jala PLN, pada baris pertama LCD akan
menampilkan KENDALI LAMPU dan baris kedua akan menampilkan "dgn
LOGIKA FUZZY"
2. Identitas pembuat
1,5 detik setelah menampilkan nama alat, LCD akan menampilkan " N E T I K
A " pada baris pertama dan "== U N N E S ==" pada baris kedua.
3. Hasil pengukuran iluminasi, output dari pengendali fuzzy, dan periode pemicuan
PWM (Pulse Width Modulation)
Jika switch 1 ditekan maka sistem akan berjalan sehingga LCD dapat
menampilkan hasil pengukuran iluminasi, output dari pengendali fuzzy, dan
periode pemicuan PWM (Pulse Width Modulation). Baris pertama LCD
menampilkan hasil pembacaan iluminasi sensor pada ruang 0 (LDR 0 dan LDR
1) yang telah dikonversi menjadi bentuk digital. Baris kedua akan menampilkan
output pengendali fuzzy yang berupa nilai tegangan pengaturan, dan
menampilkan periode pemicuan PWM yang merupakan hasil konversi dari
output pengendali fuzzy. Apabila switch 0 ditekan sekali, LCD akan
menampilkan informasi hasil pengukuran iluminasi, output pengendali fuzzy, dan
periode pemicuan PWM dari ruang 1. Namun jika switch 0 ditekan dua kali, LCD
akan menampilkan informasi dari ruang 2.
Konfigurasi pin dari LCD dan alokasinya pada mikrokontroler ATmega8535
dapat dilihat pada Gambar 3.8.
Gambar 3.8. Rangkain LCD M1632
3.3.3. Modul pengatur tegangan
Sebagai pengatur tegangan, digunakan rangkaian Solid State Relay (SSR)
yang pada prinsipnya adalah penggabungan antara rangkaian optocoupler yang
VR
5k
123456789
1
0
1
1
1
2
1
3
1
4
1
5
1
6
JLCD
Pin LCD
VCC
P
O
R
T
C
.
0
P
O
R
T
C
.
1
P
O
R
T
C
.
2
P
O
R
T
C
.
4
P
O
R
T
C
.
5
P
O
R
T
C
.
6
P
O
R
T
C
.
7
LCD
PORTC[0..7]
menggunakan Zero Crossing Circuit di dalam MOC 3041 dan TRIAC. Gambar 3.9
menunjukkan gambar rangkaian SSR, sedangkan cara kerja rangkaian ini adalah
sebagai berikut:
Jika ada logika 1 pada input (IN) rangkaian ini, maka transistor BD139 akan
aktif dan sambungan Collector dan Emitter seolah-olah seperti saklar tertutup
sehingga arus akan lewat dari power suply melewati MOC kaki 1 dan 2. Hal ini akan
mengakibatkan dioda yang berada didalam MOC 3041 aktif dan transistor yang
berada di dalam MOC3041 juga aktif. Keadaan ini akan mengakibatkan arus dari
jala-jala 220VAC mengalir ke kaki Gate TRIAC dan akan memicu TRIAC tersebut.
Pemicuan ini mengakibatkan kaki MT1 dan MT2 akan terhubung dan jala-jala
220VAC akan mengalir melalui beban. Hal ini berakibat beban ON. C 10nF/400V
pada rangkaian ini berfungsi untuk mengurangi arus yang sangat besar saat beban
mulai ON.
Jika terdapat logik 0 pada input (IN) rangkaian ini, maka transistor BD139
tidak akan aktif dan sambungan kolektor emitor (CE) seolah-olah seperti saklar
tebuka. Hal ini mengakibatkan dioda dan transistor yang berada di dalam MOC3041
tidak aktif dan tidak akan ada pemicuan pada TRIAC sehingga beban tidak
terhubung ke jala-jala 220VAC atau dengan kata lain beban OFF. Pemberian logika
0 ataupun logika 1 tersebut dikendalikan oleh mikrokontroler.
Gambar 3.9. Rangkaian Solid State Relay
3.3.4. Mikrokontroler ATmega8535
Rangkaian ini bekerja sebagai unit pengendali agar sistem bekerja sesuai
dengan algoritma program.
Bagian input mikrokontroler di dalam rangkaian ini pin 0 - 5 Port A
terhubung dengan rangkaian sensor, sehingga system dapat mengolah besarnya
tegangan menjadi informasi besarnya iluminasi yang terukur oleh sensor.
Bagian output mikrokontroler Port B mikrokontroler ini terhubung dengan
rangkaian solid state relay untuk mengendalikan keadaan lampu dalam keadaan
terang, agak terang, redup, agak redup, atau padam. Pin 2 Port D terhubung dengan
rangkaian zero crossing detector. Pin 3 Port D terhubung dengan rangkaian switch 0
untuk melihat keadaan di masing-masing ruangan seperti yang terlihat pada
penampil. Pin 7 Port D terhubung dengan switch 1 untuk menjalankan system.
Sedangkan Port B untuk mengaktifkan tampilan pada penampil. Gambar rangkaian
sistem mikrokontroller ATmega8535 seperti terlihat pada gambar 3.10.
10
G
10nF/400V
BD139
10
C I R C U I T
C R O S S
Z E R O
MOC3041
1
2
6
4
560
L O A D
1
2
29/2W
VCC
M T 2
2 2 0 V A C
IN
M T 1 330
Q4008L4/TO
PB0
PB2
PB3
PB4
PB5
PB6
PB7
PB1
PA0
PA2
PA3
PA4
PA5
PA6
PA7
PA1
PC0
PD4
PC4
PC3
PC5
PC7
PC6
PD7
PD2
PC2 PD5
PD6 PC1
PD0
PD1
PD3
X1
13
X2
12
RESET
9
PD3 (INT1)
17
PD2 (INT0)
16
PD5 (OC1A)
19
PD4 (OC1B)
18
PD0 (RXD)
14
PD1 (TXD)
15
PB0 (XCT/T0)
1
PB1 (T1)
2
PB2 (INT2/AIN0)
3
PB3 (OC0/AIN1)
4
PB4 (SS)
5
PB5 (MOSI)
6
PB6 (MISO)
7
PB7 (SCK)
8
(ADC1) PA1
39
(ADC2) PA2
38
(ADC3) PA3
37
(ADC4) PA4
36
(ADC5) PA5
35
(ADC6) PA6
34
(ADC7) PA7
33
AREF
32
PD7 (OC2)
21
(SCL) PC0
22
(SDA) PC1
23
PC2
24
PC3
25
PC4
26
PC5
27
(TOSC1) PC6
28
(TOSC2) PC7
29
AVCC
30
PD6 (ICP1)
20
(ADC0) PA0
40
U1
ATMEGA8535
RST
X2
X1
LDR.0 (PA.0)
LCD
PWM Lamp
ZCD (PD.2)
SW0 (PD.3)
LDR.1 (PA.1)
LDR.2 (PA.2)
LDR.3 (PA.3)
PORTB[0. .2]
PORTC[0..7]
LDR.4 (PA.4)
LDR.5 (PA.5)
SW1 (PD.7)
Gambar 3.10 . Rangkaian mikrokontroller ATmega8535
3.4. Perancangan Perangkat Lunak
Perangkat lunak yang digunakan untuk membuat program mikrokontroler
yaitu CodeVision AVR C Compiler dengan menggunakan bahasa C. Selanjutnya
program ini disimpan dalam memori data dan memori program. Perancangan
software dilakukan dengan membuat diagram alir (flow chart) terlebih dahulu.
Setelah itu, program dibuat dengan mengikuti diagram alir (flow chart) seperti yang
ditunjukkan pada gambar 3.11. Sedangkan diagram alir timer untuk PWM
ditunjukkan pada gambar 3.12..
Gambar 3.11. Diagram alir (flow chat) sistem pengendali penerangan ruangan
Gambar 3.12. Diagram alir timer untuk PWM
3.4.1. Perancangan Fuzzy Logic
Sistem inferensi fuzzy yang digunakan pengendali penerangan ruangan ini adalah
Metode Mamdani. Pada metode mamdani, untuk mendapatkan output diperlukan
4 tahapan, yaitu: Pembentukan himpunan fuzzy (fuzzifikasi), aplikasi fungsi
implikasi (aturan), komposisi aturan, dan penegasan (defuzzifikasi). Komposisi
aturan menggunakan operato OR (union), sedangkan untuk defuzzifikasi
digunakan metode Centroid.
Sinyal input dari LDR 0, LDR 2, dan LDR 4 yang berupa nilai tegas (crisp)
difuzzifikasi menjadi himpunan-himpunan fuzzy GELAP, SEDANG, dan
TERANG dengan fungsi kenggotaan segitiga. Fungsi keanggotaan dengan tiga
variabel dari sinyal input (Fungsi keanggotaan input r3) adalah sebagai berikut:
Gambar 3.13. Fungsi keanggotaan input r3
Dari fungsi keanggotaan diatas, dapat diketahui derajad keanggotaan () masing-
masing variabel dalam himpunan fuzzy GELAP, SEDANG dan TERANG.
Untuk menghitung derajad keanggotaan segitiga tersebut digunakan rumus 3.1
(perhatikan gambar 3.14).
( )
( )
( )

'

<

,
_

<

,
_

b x
b x c
c b
x b
c x a
a c
a x
a x
x
A
0
) ( 0
) ( ............................................................. 3.1
D
e
r
a
j
a
d

k
e
a
n
g
g
o
t
a
a
n

(

)
Gambar 3.14. Parameter fungsi keanggotaan Segitiga
Sinyal dari LDR 0, LDR 2, dan LDR 4 yang telah dikonversi dari sinyal analog
menjadi bentuk digital kemudian difuzzifikasi. Fungsi keanggotaan dengan 5
variabel dari sinyal input (Fungsi keanggotaan input r5) adalah sebagai berikut:
Gambar 3.15. Fungsi keanggotaan input r5
Untuk menghitung derajad keanggotaan input r5 digunakan rumus 3.1
(perhatikan gambar 3.14).
D
e
r
a
j
a
d

k
e
a
n
g
g
o
t
a
a
n

(

)
1
0
a c
domain
Derajad
keanggotaan
(x)
b
Gambar 3.16. Fungsi keanggotaan output LDR dalam ruangan
Fungsi keanggotaan untuk nyala lampu (output) seperti ditunjukkan gambar 3.15.
Untuk menghitung derajad keanggotaan dari variabel REDUP menggunakan
rumus 3.1 (perhatikan gambar 3.14). Rumus 3.2 (perhatikan gambar 3.16)
digunakan untuk menghitung derajad keanggotaan dari variabel PADAM,
SANGAT-REDUP, AGAK-TERANG, dan TERANG.
( )
( )
( )
( )

'

<

,
_


<

,
_

d x
d x c
c d
x d
c x b
c x a
a b
a x
a x
x
A
0
1
) ( 0
) ( ............................................................ 3.2
Gambar 3.17. Parameter fungsi keanggataan Trapesium
D
e
r
a
j
a
d

k
e
a
n
g
g
o
t
a
a
n
1
0
a b
domain
Derajad
keanggotaan
(x)
d c
Basis aturan (rule base) untuk pengendali penerangan ruangan ini ditunjukkan
oleh tabel 3.1.
Tabel 3.1. Basis aturan (rule base)
R5
GPR5 AGR5 RRR5 ATR5 TRR5
GPR3
TROT ATOT ATOT ATOT RDOT
SDR3
ATOT RDOT RDOT RDOT SROT
TRR3
RDOT SROT SROT SROT PDOT
Keterangan:
INPUT
R5 : untuk fungsi keanggotaan dengan lima variabel
GPR5 : gelap
AGR5 : agak gelap
RRR5 : remang-remang
ATR5 : agak terang
T RR5 : terang
R3 : untuk fungsi keanggotaan dengan tiga variabel
GPR3 : gelap
SDR3 : sedang
T RR3 : terang
OUTPUT
PDOT : padam (output)
SROT : sangat redup (output)
R DOT : redup (output)
ATOT : agak terang (output)
T ROT : terang (output)
R3
Dari tabel 3.1. dapat dituliskan 15 aturan sebagai berikut:
1. If (r3 is GELAP) and (r3 is GELAP) then (Nyala Lampu is
TERANG)
2. If (r5 is GELAP) and (r3 is SEDANG) then (Nyala Lampu is
TERANG)
3. If (r5 is GELAP) and (r3 is TERANG) then (Nyala Lampu is
TERANG)
4. If (r5 is AGAK GELAP) and (r3 is GELAP) then (Nyala Lampu is AGAK
TERANG)
5. If (r5 is AGAK GELAP) and (r3 is SEDANG) then (Nyala Lampu is
REDUP)
6. If (r5 is AGAK GELAP) and (r3 is TERANG) then (Nyala Lampu is
SANGAT REDUP)
7. If (r5 is REMANG-REMANG) and (r3 is TERANG) then (Nyala Lampu is
SANGAT REDUP)
8. If (r5 is REMANG-REMANG) and (r3 is SEDANG) then (Nyala Lampu is
REDUP)
9. If (r5 is REMANG-REMANG) and (r3 is GELAP) then (Nyala Lampu is
AGAK TERANG)
10. If (r5 is AGAK TERANG) and (r3 is GELAP) then (Nyala Lampu is AGAK
TERANG)
11. If (r5 is AGAK TERANG) and (r3 is SEDANG) then (Nyala Lampu is
REDUP)
12. If (r5 is AGAK TERANG) and (r3 is TERANG) then (Nyala Lampu is
SANGAT REDUP)
13. If (r5 is TERANG) and (r3 is TERANG) then (Nyala Lampu is
PADAM)
14. If (r5 is TERANG) and (r3 is SEDANG) then (Nyala Lampu is
PADAM)
15. If (r5 is TERANG) and (r3 is GELAP) then (Nyala Lampu is
PADAM)
3.4.2. Pemrograman
Inisialisasi sistem ATmega8353. Pada CodeWizardAVR dilakukan pengaturan
Port A sebagai input ADC, Port B sebagai output lampu, Port C sebagai output
LCD, sedangkan Port D sebagai input zero crossing detector, switch 0 dan switch
1. Timers yang digunakan adalah Timer2 dengan mode normal top = FFh dan
clock value 4 MHz. Dalam pemrograman digunakan variabel-variabel sebagai
berikut:
// Global variables
char buf[33];
// Variabel fungsi keanggotaan input
unsigned int mu, mu_gpr3, mu_sdr3, mu_trr3, mu_gpr5, mu_agr5,
mu_rrr5, mu_atr5, mu_trr5,
GPR3, SDR3, TRR3, GPR5, AGR5, RRR5, ATR5, TRR5,
ldr[6], xx;
long int ot[6];
unsigned char room, rom, flg, x, out_fuz[6];
// Variabel fungsi keanggotaan output
unsigned int mu_pdot, mu_atot, mu_rdot, mu_srot, mu_trot;
Program dimulai dengan inisialisasi variabel awal pada menu utama:
void main(void)
{
unsigned char j;
xx=flg=0;
room=0;
x=0;
ot[0]=ot[1]=ot[2]=0;
Selanjutnya LCD akan menampilkan informasi nama alat dan identitas pembuat,
dalam pemrograman dituliskan sebagai berikut:
#asm("cli") // Global disable interrupts
lcd_init(16); // LCD module initialization
lcd_gotoxy(0,0); lcd_putsf(" KENDALI LAMPU");
lcd_gotoxy(0,1); lcd_putsf("dgn LOGIKA FUZZY"); delay_ms(1500);
lcd_clear();
#asm("sei") // Global enable interrupts
while (1)
{
lcd_gotoxy(0,0); lcd_putsf(" N E T I K A ");
lcd_gotoxy(0,1); lcd_putsf("== U N N E S ==");
Proses pengendalian dimulai apabila switch 1 ditekan
j=0;
while (PIND.7==1) {}
while (PIND.7==0) {}
while (j==0) {
if (PIND.7==0) {j=1;};
Untuk membaca besarnya sinyal dari LDR 0, LDR 2, dan LDR 4 dalam
program dituliskan sebagai berikut
ldr[x]=read_adc(x);
r3();
Sinyal-sinyal tersebut selanjutnya difuzzifikasi. Berikut adalah penerjemahan
derajad keanggotaan input r3 (Gambar 3.8) kedalam bahasa pemrograman
Atmega8535.
void r3(void)
{
GPR3=SDR3=TRR3=0;
mu_gpr3=mu_sdr3=mu_trr3=0;
// GELAP
mu=(127-ldr[x])*10;
if (ldr[x]>127) {mu=0;};
mu=mu/127;
if (mu>0) {
GPR3=1;
mu_gpr3=mu;
};
// SEDANG
if (ldr[x]<128) {
mu=(ldr[x]*10)/127;
if (mu>0) {
SDR3=1;
mu_sdr3=mu;
}
}
// TERANG
else {
mu=((255-ldr[x])*10)/128;
if (mu>0) {
SDR3=1;
mu_sdr3=mu;
}
mu=((ldr[x]-127)*10)/128;
if (mu>0) {
TRR3=1;
mu_trr=mu;
};
};
}
Sedangkan untuk membaca besarnya sinyal dari LDR 0, LDR 2, dan LDR 4
dalam program dituliskan sebagai berikut
ldr[x+1]=read_adc(x+1);
r5();
Sinyal-sinyal tersebut selanjutnya difuzzifikasi Berikut adalah penerjemahan
derajad keanggotaan input r5 (Gambar 3.13) kedalam bahasa pemrograman
Atmega8535.
void r5(void)
{
unsigned char y;
y=x+1;
GPR5= AGR5= RRR5= ATR5= TRR5= 0;
mu_gpr5= mu_agr5= mu_rrr5= mu_atr5= mu_trr5= 0;
// GELAP
if (ldr[y]<=64) {
mu=((64-ldr[y])*10)/64;
if (mu>0) {
GP=1; mu_gp=mu;
}
// AGAK GELAP
mu=(ldr[y]*10)/64;
if (mu>0) {
AG=1; mu_ag=mu;
}
}
if (ldr[y]>64 && ldr[y]<=128) {
mu=((128-ldr[y])*10)/64;
if (mu>0) {
AG=1; mu_ag=mu;
}
// REMANG-REMANG
mu=((ldr[y]-64)*10)/64;
if (mu>0) {
RR=1; mu_rr=mu;
}
}
if (ldr[y]>128 && ldr[y]<=192) {
mu=((192-ldr[y])*10)/64;
if (mu>0) {
RR=1; mu_rr=mu;
}
// AGAK TERANG
mu=((ldr[y]-128)*10)/64;
if (mu>0) {
AT=1; mu_at=mu;
}
}
if (ldr[y]>192) {
mu=((255-ldr[y])*10)/64;
if (mu>0) {
AT=1; mu_at=mu;
}
//TERANG
mu=((ldr[y]-192)*10)/64;
if (mu>0) {
TR=1; mu_tr=mu;
}
}
}
Setelah input difuzzifikasi kemudian dilakukan evaluasi aturan (inferensi)
menggunakan basis aturan yang telah dirancang. Output yang diperoleh dari inferensi
selanjutnya didefuzzifikasi untuk mendapatkan output dalam bentuk nilai tegas.
Penerjemahan derajad keanggotaan output, basis aturan, dan defuzzifikasi kedalam
bahasa pemrogramn Atmega8535 adalah sebagai berikut:
void fuzz_out(void)
{
unsigned int mu_xx,zz,mu_xz;
mu_pdot= mu_atot= mu_rdot= mu_srot= mu_trot = mu_xx= 0;
zz=mu_xz=0;
out_fuz[x]=0;
//SANGAT REDUP
if ((AG==1) && (TRR==1)) {mu_srot=min(mu_ag, mu_trr);}
if ((RR==1) && (TRR==1)) {mu_xx =min(mu_rr, mu_trr);
mu_srot=max(mu_srot, mu_xx);}
if ((AT==1) && (TRR==1)) {mu_xx =min(mu_at, mu_trr);
mu_srot=max(mu_srot, mu_xx);}
if (mu_srot>0) {
mu_xz=mu_xz + (((30*mu_srot)+250)/10)*mu_srot;
zz =zz+mu_srot;
mu_xz=mu_xz + (((35*(10-mu_srot))+850)/10)*mu_srot;
zz =zz+mu_srot;
}
//REDUP
if ((AG==1) && (SDR==1)) {mu_rdot=min(mu_ag, mu_sdr);}//
mu_rdot=max(mu_rdot, mu_xx);}
if ((RR==1) && (SDR==1)) {mu_xx =min(mu_rr, mu_sdr);
mu_rdot=max(mu_rdot, mu_xx);}
if ((AT==1) && (SDR==1)) {mu_xx =min(mu_at, mu_sdr);
mu_rdot=max(mu_rdot, mu_xx);}
if (mu_rdot==10) {
mu_xz=mu_xz + (128*mu_rdot);
zz =zz+mu_rdot;
}
if ((mu_rdot>0) && (mu_rdot<10)) {
mu_xz=mu_xz + (((63*mu_rdot)+650)/10)*mu_rdot;
zz =zz+mu_rdot;
mu_xz=mu_xz + (((62*(10-mu_rdot))+1280)/10)*mu_rdot;
zz =zz+mu_rdot;
}
//AGAK TERANG
if ((AG==1) && (GPR==1)) {mu_atot=min(mu_ag, mu_gpr);}
if ((RR==1) && (GPR==1)) {mu_xx =min(mu_rr, mu_gpr);
mu_atot=max(mu_atot, mu_xx);}
if ((AT==1) && (GPR==1)) {mu_xx =min(mu_at, mu_gpr);
mu_atot=max(mu_atot, mu_xx);}
if (mu_atot>0) {
mu_xz=mu_xz + (((35*mu_atot)+1350)/10)*mu_atot;
zz =zz+mu_atot;
mu_xz=mu_xz + (((25*(10-mu_atot))+2000)/10)*mu_atot;
zz =zz+mu_atot;
}
out_fuz[x]=mu_xz/zz;
//PADAM
if ((TR==1) && (TRR==1)) {mu_pdot=min(mu_tr, mu_trr);}
if (mu_pdot>0) {
mu_xz=(((20*(10-mu_pdot))+250)/10)*mu_pdot;
zz =mu_pdot;
}
//TERANG
if ((GP==1) && (GPR==1)) {mu_trot=min(mu_gp, mu_gpr);}
if (mu_trot>0) {
mu_xz=mu_xz + (((39*mu_trot)+1950)/10)*mu_trot;
zz =zz+mu_trot;
}
BAB IV
PENGUJIAN PERANGKAT KERAS DAN LUNAK
4.1. Pengujian Perangkat Keras
Pengujian perangkat keras dilakukan untuk mengetahui apakah perangkat
keras yang telah dirancang dapat bekerja atau berfungsi dengan baik sebagaimana
yang diinginkan. Pengujian yang dilakukan terhadap perangkat keras meliputi
beberapa blok rangkaian perangkat keras yang telah dirancang. Terdapat beberapa
pengujian yang dilakukan terhadap perangkat keras, diantaranya:
4.2.1. Pengujian Sensor Cahaya
Untuk pengujian sensor cahaya digunakan voltmeter digital. Pengujian
dilakukan dengan menjalankan system dan menghubungkan output rangkaian sensor
cahaya dengan voltmeter digital. Agar dapat dideteksi perubahan keluaran tegangan
LDR terhadap perubahan cahaya, mula-mula LDR diberi cahaya hingga pada LCD
menunjukkan nilai iluminasi sebesar 230. Kemudian intensitas cahaya diturunkan
hingga menunjukkan iluminasi sebesar 50. Untuk setiap penurunan iluminasi sebesar
10, dicatat besarnya iluminasi dan tegangan keluaran LDR. Hasil pengujiannya
ditunjukkan pada Tabel 4.1. Hasil pengujian sensor cahaya menggunakan lux meter
dan volt meter digital sebagai kalibrasi terlampir
52
Tabel 4.1. Hasil Pengujian Rangkaian Sensor
Iluminasi
(lux)
Tegangan
(Volt)
230 0,53
220 0,66
210 0,87
200 0,99
190 1,23
180 1,42
170 1,69
160 1,92
150 2,04
140 2,16
130 2,46
120 2,71
110 2,84
100 3,05
90 3,31
80 3,4
70 3,57
60 3,8
50 4,06
40 4,21
30 4,35
20 4,53
10 4,77
Berdasarkan data pada Tabel 4.1 dapat dibuat grafik hubungan antara
iluminasi dengan tegangan keluaran LDR yaitu seperti ditunjukkan pada Gambar 4.1.
Dari grafik pada Gambar 4.1 terlihat bahwa hubungan antara iluminasi dengan
tegangan keluran LDR mendekati linier sesuai dengan gambar 2.23.
0
1
2
3
4
5
6
0 50 100 150 200 250
luminansi (lux)
t
e
g
a
n
g
a
n

(
V
o
l
t
)
Gambar 4.1. Grafik Hubungan Antara Tegangan dan Iluminasi
4.2.2. Pengujian Rangkaian Mikrokontroler ATmega8535
Pengujian minimum mikrokontroler dilakukan untuk mengetahui apakah
mikrokontroler dapat bekerja sesuai dengan fungsi semestinya. Pengujian
dilakukan dengan menjalankan program yg akan membuat lampu ping-pong
(nyala-mati secara bergantian). Setiap port dihubungkan dengan LED untuk
mengetahui apakah masing-masing kaki berfungsi dengan baik. Pada
CodeWizartAVR dilakukan pengaturan Port A, Port B, Port C, dan Port D sebagai
output. Kemudian pada CodeVisionAVR dituliskan program ping-pong sebagai
berikut:
#include <mega8535.h>
void main(void)
{
while (1)
{
PORTA=0xaa;
PORTB=0xaa;
PORTC=0xaa;
PORTD=0xaa;
};
}
Keluaran nilai digital ADC
4.2.3. Pengujian LCD M1632
Pengujian LCD ini untuk mengetahui apakah LCD dapat dipakai atau rusak.
Pengujian pertama yang dilakukan dengan memberi tegangan pada pada kaki catu
daya (kaki 2 dan 15). Maka LCD akan menyala, namun demikian tidak berarti
LCD akan bekerja dengan. Pengujian selanjutnya adalah menjalankan program ke
dalam sistem minimum ATmega8535 yang akan di tampilkan oleh LCD melalui
Port C. Sebagai contoh perintah untuk menampilkan tulisan TEKNIK
ELEKTRO UNNES. Pada CodeWizartAVR dilakukan pengaturan Port C untuk
LCD. Selanjutnya pada CodeVisionAVR dituliskan program sebagai berikut:
#include <mega8535.h>
#asm
.equ __lcd_port=0x15
#endasm
#include <lcd.h>
void main(void)
{
#asm("sei")
lcd_init(16);
lcd_gotoxy(0,0); lcd_putsf(" TEKNIK ELEKTRO ");
lcd_gotoxy(0,1); lcd_putsf(" U N N E S ");
}
4.2.4. Pengujian Rangkaian Solid State Relay (SSR)
Pengujian rangkaian SSR bertujuan untuk mengetahui apakah rangkaian ini
dapat menghasilkan output sesuai dengan input yang didapat dari rangkaian
mikrokontroller ATmega8535. Pengujian pada rangkaian ini delakukan dengan
menjalankan system dan memberikan tegangan dari jala-jala PLN serta
menghubungkan output rangkaian dengan wattmeter. Pada saat pengujian, ruang
keluarga (R0) menggunakan lampu pijar 20 watt, ruang tidur (R1) menggunakan
lampu pijar 5 watt, sedangkan ruang baca (R3) menggunakan lampu pijar 15 watt.
Dari pengujian tersebut, diperoleh hasil seperti pada tabel 4.2.
Tabel 4.2. Hasil Pengujian Rangkaian SSR
Daya (Watt) Kondisi
lampu R0 R1 R2
padam 0 1 0
agak redup 0 11 7
redup 3 12 8
agak terang 3 14 9
terang 4 19 13
Dari hasil pengujian rangkaian SSR, pada saat kondisi lampu terang tidak
dapat mencapai daya maksimal. Hal ini dikarenakan tegangan dari jala-jala PLN
ketika pengukuran kurang dari 220 V.
4.2. Pengujian Perangkat Lunak
Pengujian perangkat lunak ini dilakukan pada beberapa sub rutin program.
Tujuan pengujian adalah untuk memastikan sub rutin bekerja sesuai dengan yang
direncanakan. Untuk sub rutin yang menerima input dan meneruskan output dapat
dicobakan secara langsung pada mikrokontroler sehingga hasilnya dapat dilihat.
Misalnya sub rutin pada LCD maka akan dapat dilihat secara langsung pada LCD.
4.2.1. Pengujian Program Pengendali Logika Fuzzy
Pengujian pemrograman pengendali logika fuzzy bertujuan untuk mengetahui
apakah pemrograman sudah sesuai dengan perhitungan atau belum. Pengujian
dilakukan dengan membandingkan antara defuzzifikasi yang ditampilkan pada LCD
dengan defuzzifikasi perhitungan. Tabel 4.3. menunjukan data pengujian
pemrograman logika fuzzy.
Tabel 4.3. Data Pengujian Program Kendali Fuzzy
Hasil Defuzzifikasi
Input r5 Input r3
pada output
Sistem
hasil
Perhitungan
Error
(%)
20 10 234 200 23,5
65 10 170 175 2,9
65 125 123 129 4,9
65 230 87 86 1,1
130 10 169 175 3,6
130 125 125 129 3,2
130 230 87 86 1,1
190 10 170 175 2,9
190 125 128 129 0,8
190 230 84 86 2,4
240 230 0 45 17,6
Dari tabel 4.3. dapat dibuat grafik hubungan antara hasil defuzzifikasi oleh
sistem dan hasil defuzzifikasi berdasarkan perhitungan, seperti ditunjukkan
Gambar4.2.
0
50
100
150
200
250
300
1 2 3 4 5 6 7 8 9 10 11
Sistem
Perhitungan
Gambar 4.2. Grafik Hubungan Antara Defuzzifikasi Sistem dan Perhitungan
Dari tabel 4.3 dan grafik 4.2, dapat dilihat pada saat input r5 20 lux dan 240 lux,
errornya sangat besar, sehingga sistem dapat bekerja dengan baik pada r5 antara 65
190 lux.
4.2.2. Pengujian Tampilan
Pengujian tampilan bertujuan untuk melihat apakah tampilan pada LCD
sudah sesuai dengan pemrograman. Tampilan-tampilan pada LCD seperti terlihat
pada gambar-gambar berikut:
Gambar 4.3. Tampilan nama alat
Gambar 4.4. Tampilan idantitas pembuat
Gambar 4.5. Tampilan Ruang Keluarga
Gambar 4.6. Tampilan Ruang Tidur
Gambar 4.7. Tampilan Ruang Baca
K E N D A L I L A MP U
d g n L O G I K A F U Z Z Y
N E T I K A P
5 3 5 0 4 0 2 0 2 0 U N N E S
R g 0 : ^^
D e f u z z :
R g 1 : ^^
D e f u z z :
R g 2 : ^^
D e f u z z :
Gambar 4.3. menunjukkan tampilan pertama setelah sistem dijalankan.
Setelah 1,5 detik akan muncul tampilan identitas pembuat seperti ditunjukkan
Gambar 4.4. LCD akan menampilkan tampilan Ruang Keluarga seperti pada
Gambar 4.5. apabila switch 1 ditekan. Jika switch 0 ditekan 1 kali, LCD akan
menampilkan tampilan Ruang Tidur seperti Gambar 4.6. Namun jika pada LCD
ditampilkan informasi Ruang Baca seperti Gambar 4.7., berarti telah ditekan 2 kali.
Apabila switch 1 ditekan sekali lagi, maka LCD akan kembali menampilkan identitas
pembuat dan sistem berhenti bekerja.
4.3. Pengujian Sistem Pengaturan Penerangan Ruangan
Pengujian sistem pengaturan penerangan ruangan bertujuan untuk mengetahui
apakah sistem dapat mempertahankan iluminasi dalam ruangan. Pengujian ini
dilakukan dengan cara menjalankan sistem dan mengukur iluminasi masing-masing
ruangan dengan lux meter. Pengujian dilakukan pada tiga kondisi lampu yaitu
padam, redup, dan terang. Tabel 4.4 menunjukkan hasil pengujian sistem
Tabel 4.4. Hasil pengujian sistem Pengaturan Penerangan Ruangan
Stndr. Iluminasi (lux) Hasil Pengukuran (Lux) Error (%)
Kondisi
Lampu
Ruang
Kel.
Ruang
Tidur
Ruang
Baca
Ruang
Kel.
Ruang
Tidur
Ruang
Baca
Ruang
Kel.
Ruang
Tidur
Ruang
Baca
padam 300 70 200 340 65 190 13,3 7,1 5
redup 300 70 200 290 65 200 3,33 7,1 0
terang 300 70 200 300 70 200 0 0 0
BAB V
PENUTUP
5.3. Kesimpulan
Berdasarkan perancangan dan pengujian yang telah dilakukan maka dapat
disimpulkan bahwa:
1. Pengendalian penerangan dalam ruang dengan memperhitungkan kontribusi
pencahayaan dari sumber luar kedalam ruangan dapat menghemat energi.
2. Sistem ATmega8535 berfungsi sebagai central processing unit yang
mengolah sinyal analog dari LDR menjadi suatu nilai keluaran yang berupa
waktu tundaan untuk pemicuan triac pada rancl mjgkaian solid state relay.
3. Jumlah ruangan yang dikendalikan oleh Sistem Pengendali Penerangan
Ruangan ini terbatas. Hal ini disebabkan oleh kapasitas ADC internal yang
berada di Port A Mikrokontroler ATmega8535 hanya terdiri dari 8 pin.
4. Mikrokontroller ATmega8535 dapat bekerja dengan baik karena hubungan
antara iluminasi dan tegangan mendekati linier.
5.4. Saran
1. Jumlah dan peletakan LDR disesuaikan dengan ukuran ruangan, sehingga
didapatkan pengendalian penerangan yang maksimal.
2. Jika pada suatu ruangan digunakan banyak sensor, sebaiknya digunakan
sistemmultiplexing.
DAFTAR PUSTAKA
________. HD44780U (LCD II) (Dot Matrix Liquid Crystal Display
Controller/Driver) HITACHI. www.sparkfun.com/datasheets/lcd
________. Light Dependent Resistors. www.google.com
________. 1987. Liquid Crystal Display Module M1632 User Manual. Seiko
Instrumens Inc 15 Juni 2006
Fellow IEE. 1999. Rangkaian, Devais, dan Aplikasinya Jilid 1. Jakarta: PT.
Prenhallindo.
Kusumadewi, Sri. 2003. Artificial Intelligence Teknik dan Aplikasi. Yogyakarta:
Graha Ilmu.
Kusumadewi, Sri dan Hari Punomo. 2004. Aplikasi Logika Fuzzy Untuk Pendukung
Keputusan. Yogyakarta: Graha Ilmu.
Kusumadewi, Sri. 2002. Analisis dan Desain Sistem Fuzzy Menggunakan Tool Box
Matlab. Yogyakarta: Graha Ilmu.
Muhaimin. 2001. Teknologi Pencahayaan. Bandung: PT. Refika Aditama
Nalwan, Paulus Andi.2004. Panduan Praktis Penggunaan dan Antarmuka Modul
LCD M1632. Jakarta : PT Elex Media Komputindo
Petruzella, Frank D. 2001. Elektronik Industri. Yogyakarta : Andi
Wardhana, Lingga. 2006. Baca Sendiri Mikrokontroller AVR Seri ATMega8535
Simulasi, Hardware, dan Aplikasi. Yogyakarta: Andi
LAMPIRAN A
/*****************************************************
This program was produced by the
CodeWizardAVR V1.25.1 Evaluation
Automatic Program Generator
Copyright 1998-2006 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
Project : Fuzzy Lamp
Version : 1
Date : 24/12/2006
Author : Netika
Company : UNNES
Comments:
Chip type : ATmega8535
Program type : Application
Clock frequency : 4.000000 MHz
Memory model : Small
External SRAM size : 0
Data Stack size : 128
*****************************************************/
#include <mega8535.h>
#include <stdio.h>
#include <delay.h>
#include <math.h>
// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x15 ;PORTC
#endasm
#include <lcd.h>
// Global variables
char buf[33];
unsigned int mu, mu_gpr, mu_sdr, mu_trr, mu_gp, mu_ag, mu_rr,
mu_at, mu_tr,
GPR, SDR, TRR, GP, AG, RR, AT,
TR,
ldr[6], xx;
long int ot[6];
unsigned char room, rom, flg, x, out_fuz[6];
unsigned int mu_pdot, mu_atot, mu_rdot, mu_srot, mu_trot;
#define ADC_VREF_TYPE 0x60
// fungsi 8 bit ADC
unsigned char read_adc(unsigned char adc_input)
{
ADMUX=adc_input|ADC_VREF_TYPE;
ADCSRA|=0x40;
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCH;
}
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
{
flg=1;
PORTB.0=1; PORTB.1=1; PORTB.2=1;
xx=0;
}
// External Interrupt 1 service routine
interrupt [EXT_INT1] void ext_int1_isr(void)
{
room=room+1; if (room>2) {room=0;}
}
// Timer 2 overflow interrupt service routine
interrupt [TIM2_OVF] void timer2_ovf_isr(void)
{
if (flg==1) {
if (xx>ot[0]) {PORTB.0=0;}
if (xx>ot[1]) {PORTB.1=0;}
if (xx>ot[2]) {PORTB.2=0;}
xx=xx+1;
}
}
void fuzz_out(void);
void r5(void);
void r3(void);
void main(void)
{
unsigned char j;
// Input/Output Ports initialization
// Port A initialization
PORTA=0x00; // Func7=In Func6=In Func5=In Func4=In Func3=In
Func2=In Func1=In Func0=In
DDRA=0x00; // State7=T State6=T State5=T State4=T State3=T
State2=T State1=T State0=T
// Port B initialization
PORTB=0x00; // Func7=Out Func6=Out Func5=Out Func4=Out
Func3=Out Func2=Out Func1=Out Func0=Out
DDRB=0xFF; // State7=Low State6=Low State5=Low State4=Low
State3=Low State2=Low State1=Low State0=Low
// Port C initialization
PORTC=0x00; // Func7=In Func6=In Func5=In Func4=In Func3=In
Func2=In Func1=In Func0=In
DDRC=0x00; // State7=T State6=T State5=T State4=T State3=T
State2=T State1=T State0=T
// Port D initialization
PORTD=0xFF; // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In
Func1=In Func0=In
DDRD=0x00; // RPull-UP // 0xF0;
// Timer/Counter 0 initialization
TCCR0=0x00; // Clock source: System Clock
TCNT0=0x00; // Clock value: Timer 0 Stopped
OCR0=0x00; //
// Mode: Normal top=FFh
// OC0 output: Disconnected
// Timer/Counter 1 initialization
TCCR1A=0x00; // Clock source: System Clock
TCCR1B=0x00; // Clock value: Timer 1 Stopped
TCNT1H=0x00; // Mode: Normal top=FFFFh
TCNT1L=0x00; // OC1A output: Discon.
ICR1H=0x00; // OC1B output: Discon.
ICR1L=0x00; // Noise Canceler: Off
OCR1AH=0x00; // Input Capture on Falling Edge
OCR1AL=0x00; // Timer 1 Overflow Interrupt: On
OCR1BH=0x00; // Input Capture Interrupt: Off
OCR1BL=0x00; // Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
// Timer/Counter 2 initialization
ASSR=0x00; // Clock source: System Clock
TCCR2=0x01; // Clock value: 4000.000 kHz
TCNT2=0x00; // Mode: Normal top=FFh
OCR2=0x00; // OC2 output: Disconnected
// External Interrupt(s) initialization
GICR|=0xC0; // INT0: On
MCUCR=0x0A; // INT0 Mode: Falling Edge
MCUCSR=0x00; // INT1: On
GIFR=0xC0; // INT1 Mode: Falling Edge
// INT2: Off
TIMSK=0x44; // Timer(s)/Counter(s) Interrupt(s) initialization
// Analog Comparator initialization
ACSR=0x80; // Analog Comparator: Off
SFIOR=0x00; // Analog Comparator Input Capture by
Timer/Counter 1: Off
// ADC initialization
ADMUX=ADC_VREF_TYPE; // ADC Clock frequency: 1000.000 kHz
ADCSRA=0x82; // ADC Voltage Reference: AVCC pin
SFIOR&=0xEF; // ADC High Speed Mode: Off
// ADC Auto Trigger Source: None
// Only the 8 most significant bits of
// the AD conversion result are used
xx=flg=0;
room=0;
x=0;
ot[0]=ot[1]=ot[2]=0;
#asm("cli") // Global disable interrupts
lcd_init(16); // LCD module initialization
//*
lcd_gotoxy(0,0); lcd_putsf(" KENDALI LAMPU");
lcd_gotoxy(0,1); lcd_putsf("dgn LOGIKA FUZZY"); delay_ms(1500);
lcd_clear();
//lcd_gotoxy(0,0); lcd_putsf(" N E T I K A ");
//lcd_gotoxy(0,1); lcd_putsf("== U N N E S =="); //delay_ms(2000);
lcd_clear();
//*/
#asm("sei") // Global enable interrupts
//lcd_clear();
while (1)
{
lcd_gotoxy(0,0); lcd_putsf(" N E T I K A ");
lcd_gotoxy(0,1); lcd_putsf("== U N N E S ==");
j=0;
while (PIND.7==1) {}
while (PIND.7==0) {}
while (j==0) {
if (PIND.7==0) {j=1;};
ldr[x]=read_adc(x); // ldr
r3(); // 3 fungsi keanggotaan
lcd_gotoxy(0,0); sprintf(buf,"Rg%i: %i",room,ldr[rom]);
lcd_puts(buf);
// tampil_fuzz_in_r3();
ldr[x+1]=read_adc(x+1); // ldr
r5(); // 5 fungsi keanggotaan
lcd_gotoxy(10,0); sprintf(buf,"^^ %i ",ldr[rom+1]);
lcd_puts(buf);
// tampil_fuzz_in_r5();
fuzz_out();
ot[x]=out_fuz[x]; ot[x]=((ot[x]*314)/234);
//ot[0]=ot[1]=ot[2]=314; // test pwm,
ot=0..314
lcd_gotoxy(0,1); sprintf(buf,"Defuzz: %i %u
",out_fuz[rom],ot[rom]); lcd_puts(buf);
//tampil_fuzz_out();
x=x+2;
if (x>4) {x=0;}
if (room==0) {rom=0;}
if (room==1) {rom=2;}
if (room==2) {rom=4;}
delay_ms(100);
lcd_clear();
//lcd_gotoxy(0,1); sprintf(buf,"%i %i
%i",out_fuz[0],out_fuz[1],out_fuz[2]); lcd_puts(buf); */
}
} // end of while (1)
}
void fuzz_out(void)
{
unsigned int mu_xx,zz,mu_xz;
mu_pdot= mu_atot= mu_rdot= mu_srot= mu_trot = mu_xx= 0;
zz=mu_xz=0;
out_fuz[x]=0;
//SANGAT REDUP
if ((AG==1) && (TRR==1)) {mu_srot=min(mu_ag, mu_trr);}
if ((RR==1) && (TRR==1)) {mu_xx =min(mu_rr, mu_trr);
mu_srot=max(mu_srot, mu_xx);}
if ((AT==1) && (TRR==1)) {mu_xx =min(mu_at, mu_trr);
mu_srot=max(mu_srot, mu_xx);}
//if ((TR==1) && (SDR==1)) {mu_xx =min(mu_tr, mu_sdr);
mu_srot=max(mu_srot, mu_xx);}
if (mu_srot>0) {
mu_xz=mu_xz + (((30*mu_srot)+250)/10)*mu_srot;
zz =zz+mu_srot;
mu_xz=mu_xz + (((35*(10-mu_srot))+850)/10)*mu_srot;
zz =zz+mu_srot;
}
//REDUP
//if ((GP==1) && (TRR==1)) {mu_rdot=min(mu_gp, mu_trr);}
if ((AG==1) && (SDR==1)) {mu_rdot=min(mu_ag, mu_sdr);}//
mu_rdot=max(mu_rdot, mu_xx);}
if ((RR==1) && (SDR==1)) {mu_xx =min(mu_rr, mu_sdr);
mu_rdot=max(mu_rdot, mu_xx);}
if ((AT==1) && (SDR==1)) {mu_xx =min(mu_at, mu_sdr);
mu_rdot=max(mu_rdot, mu_xx);}
//if ((TR==1) && (GPR==1)) {mu_xx =min(mu_tr, mu_gpr);
mu_rdot=max(mu_rdot, mu_xx);}
if (mu_rdot==10) {
mu_xz=mu_xz + (128*mu_rdot);
zz =zz+mu_rdot;
}
if ((mu_rdot>0) && (mu_rdot<10)) {
mu_xz=mu_xz + (((63*mu_rdot)+650)/10)*mu_rdot;
zz =zz+mu_rdot;
mu_xz=mu_xz + (((62*(10-mu_rdot))+1280)/10)*mu_rdot;
zz =zz+mu_rdot;
}
//AGAK TERANG
if ((AG==1) && (GPR==1)) {mu_atot=min(mu_ag, mu_gpr);}
if ((RR==1) && (GPR==1)) {mu_xx =min(mu_rr, mu_gpr);
mu_atot=max(mu_atot, mu_xx);}
if ((AT==1) && (GPR==1)) {mu_xx =min(mu_at, mu_gpr);
mu_atot=max(mu_atot, mu_xx);}
//if ((GP==1) && (SDR==1)) {mu_xx =min(mu_gp, mu_sdr);
mu_atot=max(mu_atot, mu_xx);}
if (mu_atot>0) {
mu_xz=mu_xz + (((35*mu_atot)+1350)/10)*mu_atot;
zz =zz+mu_atot;
mu_xz=mu_xz + (((25*(10-mu_atot))+2000)/10)*mu_atot;
zz =zz+mu_atot;
}
out_fuz[x]=mu_xz/zz;
//PADAM
if ((TR==1) && (TRR==1)) {mu_pdot=min(mu_tr, mu_trr);}
if (mu_pdot>0) {
mu_xz=(((20*(10-mu_pdot))+250)/10)*mu_pdot;
zz =mu_pdot;
}
//if (TR==1) {out_fuz[x]=0;}
//TERANG
if ((GP==1) && (GPR==1)) {mu_trot=min(mu_gp, mu_gpr);}
if (mu_trot>0) {
mu_xz=mu_xz + (((39*mu_trot)+1950)/10)*mu_trot;
zz =zz+mu_trot;
}
//if (GP==1) {out_fuz[x]=255;}
}
void r5(void)
{
unsigned char y;
y=x+1;
GP= AG= RR= AT= TR= 0;
mu_gp= mu_ag= mu_rr= mu_at= mu_tr= 0;
if (ldr[y]<=64) {
mu=((64-ldr[y])*10)/64;
if (mu>0) {
GP=1; mu_gp=mu;
}
mu=(ldr[y]*10)/64;
if (mu>0) {
AG=1; mu_ag=mu;
}
}
if (ldr[y]>64 && ldr[y]<=128) {
mu=((128-ldr[y])*10)/64;
if (mu>0) {
AG=1; mu_ag=mu;
}
mu=((ldr[y]-64)*10)/64;
if (mu>0) {
RR=1; mu_rr=mu;
}
}
if (ldr[y]>128 && ldr[y]<=192) {
mu=((192-ldr[y])*10)/64;
if (mu>0) {
RR=1; mu_rr=mu;
}
mu=((ldr[y]-128)*10)/64;
if (mu>0) {
AT=1; mu_at=mu;
}
}
if (ldr[y]>192) {
mu=((255-ldr[y])*10)/64;
if (mu>0) {
AT=1; mu_at=mu;
}
mu=((ldr[y]-192)*10)/64;
if (mu>0) {
TR=1; mu_tr=mu;
}
}
}
void r3(void)
{
GPR=SDR=TRR=0;
mu_gpr=mu_sdr=mu_trr=0;
mu=(127-ldr[x])*10;
if (ldr[x]>127) {mu=0;};
mu=mu/127;
if (mu>0) {
GPR=1;
mu_gpr=mu;
};
if (ldr[x]<128) {
mu=(ldr[x]*10)/127;
if (mu>0) {
SDR=1;
mu_sdr=mu;
}
}
else {
mu=((255-ldr[x])*10)/128;
if (mu>0) {
SDR=1;
mu_sdr=mu;
}
mu=((ldr[x]-127)*10)/128;
if (mu>0) {
TRR=1;
mu_trr=mu;
};
};
}
LAMPIRAN C
Gambar Rangkaian Keseluruhan
LAMPIRAN D
Kalibrasi Rangkaian Sensor
Kalibrasi dilakukan dengan mengambil data sampel antara hasil pengukuran
luxmeter penera dengan keluaran nilai digital ADC {X} dihitung menggunakan
regresi.
Hasil pengukuranan rangkaian sensor menggunakan lux meter dan volt meter
digital
Iluminasi
(lux)
Keluaran
nilai digital
ADC
Tegangan
(Volt)
Pengukuran
190 1,23 3000
180 1,42 2400
170 1,69 1600
160 1,92 900
150 2,04 700
140 2,16 450
130 2,46 370
120 2,71 260
110 2,84 160
100 3,05 110
90 3,31 100
80 3,4 60
70 3,57 50
60 3,8 30
Grafik hubungan antara iluminasi dan keluaran nilai digital ADC ditunjukkan oleh
gambar berikut:
0
500
1000
1500
2000
2500
3000
3500
0 50 100 150 200
Keluaran nilai digital ADC
I
l
u
m
i
n
a
s
i

(
l
u
x
)
Dari grafik diatas ditentukan persamaan dengan menggunakan regresi exponensial,
karena trand grafik tersebut sesuai dengan tipe regresi exponensial. Dengan regresi
exponensial diperoleh grafik seperti ditunjukkan oleh gambar berikut:
y = 3,7008e
0,0352x
R
2
= 0,9954
0
500
1000
1500
2000
2500
3000
3500
0 50 100 150 200
ADC
L
u
m
Jadi persamaan regresi luxmeter penera dengan rangkaian sensor adalah sebagai
berikut:
y = 3,7008 e
0,0352x
Keterangan :
y = Iluminasi
x = keluaran nilai digital ADC
Hail perhitungan iluminasi berdasarkan persamaan regresi exponensial dan error
yang dihasilkan ditunjukkan pada tabel dibawah ini.
Iluminasi (lux)
Keluaran
nilai digital
ADC
Pengukuran Perhitungan
Error
190 3000 2910,68 2,98
180 2400 2049,22 14,62
170 1600 1442,73 9,83
160 900 1015,73 12,86
150 700 715,11 2,16
140 450 503,46 11,88
130 370 354,46 4,20
120 260 249,55 4,02
110 160 175,69 9,81
100 110 123,69 12,45
90 100 87,08 12,92
80 60 61,31 2,18
70 50 43,17 13,67
60 30 30,39 1,30

You might also like