prototipe pengendali suhu ruangan berdasarkan …
Post on 07-Nov-2021
19 Views
Preview:
TRANSCRIPT
TUGAS AKHIR
PROTOTIPE PENGENDALI SUHU RUANGAN
BERDASARKAN SUHU LINGKUNGAN
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Oleh:
FREDRICK EDWAR JENNER LAOLI
NIM : 145114067
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2018
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
FINAL PROJECT
ROOM TEMPERATURE CONTROLLER BASED ON
ENVIRONMENTAL TEMPERATURE
In partial fulfilment of the requirement
For the degree of Sarjana Teknik
Department of Electrical Engineering
By:
FREDRICK EDWAR JENNER LAOLI
NIM : 145114067
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2018
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
“Syukuri semua yang ada saat ini, lakukan yang terbaik untuk
besok pagi”
Skripsi ini kupersembahkan kepada ….
Tuhan Tuhan Yesus dan Allah Bapa
Bapak, Ibu dan Keluarga tercinta
Teman-teman Teknik Elektro Sanata Dharma
Semua pihak yang telah membantu
terselesaikannya skripsi ini
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Pendingin ruangan saat ini sangat dibutuhkan oleh setiap orang. Namun pendingin
ruagan yang saat ini beredar dinyalakan secara manual oleh pengguna. Kebanyakan
pendingin ruangan yang beredar saat ini adalah pendingin dengan kandungan kalor yang
tidak ramah lingkungan seperti freon yang dapat merusak lapisan ozon.
Pada penelitian ini, penulis menggunakan thermoelektrik untuk mendinginkan sebuah
ruangan. Data dari sensor melalui ADC diubah manjadi data digital dan melakukan
pengolahan data secara fuzzy untuk mengolah data keluaran yang bertujuan untuk mengatur
kecepatan kipas yang berfungsi untuk mengalirkan udara dingin dalam ruangan.
Darii hasi pengujian dan analisa, alat ini berfunngsi dengan baik unutk mengatur suhu
dalam ruangan.
Kata kunci: Fuzzy, pengendali suhu, thermoelectric,ATMega8535.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
Air conditioning is currently needed by everyone. But the refrigerator cooler that is
currently circulating is turned on manually by the user. Most air conditioners currently
circulating are coolers with heat content that is not environmentally friendly such as freon
which can damage the ozone layer.
In this study, the author uses thermoelectric to cool a room. Data from the sensor
through the ADC is changed to digital data and fuzzy data processing is done to process the
output data which aims to regulate the fan speed which serves to drain cold air in the room.
From testing and analysis, this tool functions well to regulate the temperature in the
room.
Keywords: Fuzzy, temperature controllers, thermoelectric, ATMega8535
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
DAFTAR ISI
HALAMAN JUDUL ............................................................................................................. i
HALAMAN PERSETUJUAN ........................................................................................... iii
HALAMAN PENGESAHAN ............................................................................................ iv
PERNYATAAN KEASLIAN KARYA .............................................................................. v
HALAMAN PERSEMBAHAN DAN MOTO HIDUP .................................................... vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH
UNTUK KEPENTINGAN AKADEMIK ........................................................................ vii
INTISARI .......................................................................................................................... viii
ABSTRAK ........................................................................................................................... ix
KATA PENGANTAR ......................................................................................................... x
DAFTAR ISI ....................................................................................................................... xi
DAFTAR GAMBAR ........................................................................................................ xiii
DAFTAR TABEL ............................................................................................................. xiv
BAB I PENDAHULUAN .................................................................................................... 1
1.1 Latar Belakang ............................................................................................... 1
1.2 Tujuan dan Manfaat Penelitian ...................................................................... 2
1.3 Batasan Masalah ........................................................................................... 2
1.4 Metodologi Penelitian .................................................................................... 2
BAB II DASAR TEORI ...................................................................................................... 4
2.1 Mikrokontroler AVR ATmega8535 .............................................................. 4 2.1.1 Fitur ATmega8535[1] ........................................................................ 4 2.1.2 Interupsi ............................................................................................. 5 2.1.3 Analog to Digital Converter ATMega8535 ....................................... 5 2.1.4 Timer/Counter .................................................................................... 8
2.2 Teori Logika Fuzzy ........................................................................................ 9 2.2.1 Fusifikasi ............................................................................................... 9
2.2.2 Pembentukan Aturan Fuzzy ............................................................... 10
2.2.3 Analisis Logika Fuzzy ......................................................................... 11
2.2.4 Defusifikasi ......................................................................................... 11
2.3 Sensor Suhu LM35 ...................................................................................... 12
2.4 LCD (Liquid Crystal Display) 16x2 ............................................................ 12
2.5 Rangkaian Elektronis ................................................................................... 13
2.5.1 Penguat Non-Inverting ........................................................................ 13
2.5.2 Transistor ............................................................................................ 14
2.5.3 Push-button ......................................................................................... 14
2.6 termoelektrik ................................................................................................ 15
2.7 Kipas DC ..................................................................................................... 16
BAB III RANCANGAN PENELITIAN .......................................................................... 17
3.1 Diagram Block ............................................................................................. 17 3.2 Perancangan Perangkat Keras ..................................................................... 19
3.2.1 Pengkondisi Sinyal.............................................................................. 19
3.2.2 Driver Kipas ........................................................................................ 19
3.2.3 Rangkaian Tombol Data ..................................................................... 20
3.2.4 Perancangan Rangkaian Sensor LM35 ............................................... 21
3.2.5 Antarmuka Mikrokontroler dan LCD ................................................. 21
3.3 Perancangan Perangkat Lunak..................................................................... 22
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
3.3.1 Perancangan Program pada Mokrokontroler ...................................... 22
3.3.2 Tampilan Awal Program ..................................................................... 22
3.3.3 Meminta Masukan Data ...................................................................... 23
3.3.4 Pengolahan Data ................................................................................. 24
BAB IV HASIL DAN PEMBAHASAN ........................................................................... 28
4.1 Implementasi Pembuatan Alat ....................................................................... 28 4.1.1 Bentuk Fisik Box ............................................................................. 28
4.1.2 Keterangan Penggunaan Alat .......................................................... 29 4.2 Pengujian Alat dan Analisis ........................................................................... 30
4.2.1 Pengujian Alat Secara Keseluruhan .............................................. 30
4.2.2 Pengujian Sistem Fuzzy ................................................................. 37
4.2.3 Pengujian Sensor LM35 ................................................................ 38
4.3 Pembahasan Program .................................................................................... 39
BAB V KESIMPULAN ..................................................................................................... 45
5.1 Kesimpulan ................................................................................................... 45
5.2 Saran ............................................................................................................. 45
DAFTAR PUSTAKA ........................................................................................................ 46
LAMPIRAN ....................................................................................................................... 47
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
DAFTAR GAMBAR
Gambar 1.1. Alur Kerja Sisteem ……………………………………………… 3
Gambar 2.1. Konfigurasi pin ATMega8535…………………………………. 4
Gambar 2.2. Pengaruh konfigurasi bit-bit ADLAR ............................................ 6
Gambar 2.3. Register TCCR0 ............................................................................. 8
Gambar 2.4. Register TCCR1B .......................................................................... 8
Gambar 2.5. Register TCCR0 ............................................................................. 9
Gambar 2.6. Fungsi keanggotaan variabel masukan ....................................... 10
Gambar 2.7. Bentuk fisik LM35 ...................................................................... 12
Gambar 2.8. Bentuk LCD16x2 ........................................................................ 13
Gambar 2.9. Rangkaian non inverting ............................................................. 14
Gambar 2.10. Tansistor 2N44401 ...................................................................... 14
Gambar 2.11. Push-button ................................................................................. 15
Gambar 2.12. Efek piltier .................................................................................. 15
Gambar 3.1. Diagram blok perancangan ......................................................... 17
Gambar 3.2. Diagram close loop ..................................................................... 18
Gambar 3.3. Bentuk fisik pemodelan .............................................................. 18
Gambar 3.4. Rangkaian non inverting ............................................................. 19
Gambar 3.5. Driver kipas ................................................................................. 20
Gambar 3.6. Rangkaian tombol input .............................................................. 20
Gambar 3.7. Rangkaian sensor suhu ................................................................ 21
Gambar 3.8. Ranngkaian mikrokontroler dengan lcd ...................................... 21
Gambar 3.9. Diagram alir kerangka program utama ....................................... 22
Gambar 3.10. Diagram alir tampilan awal program ......................................... 23
Gambar 3.11. Contoh tampilan lcd .................................................................... 23
Gambar 3.12. Diagram alir tampilan data ......................................................... 24
Gambar 3.13. Diagram alir pengolahan data ..................................................... 24
Gambar 3.14. Subrutin adc ................................................................................ 25
Gambar 3.15. Diagam alir logika fuzy .............................................................. 25
Gambar 3.16. Gambar lingustik error ............................................................... 26
Gambar 3.17. Linguistik change of error ........................................................... 26
Gambar 3.18. Change of control ....................................................................... 26
Gambar 4.1. Gambar bentuk fisik .................................................................... 28
Gambar 4.2. Gambar bentuk fisik dari dalam .................................................. 29
Gambar 4.3. Cuplikan foto saat lagi jalan ....................................................... 30
Gambar 4.4. Tampilan dari LCD ..................................................................... 30
Gambar 4.5. Grafik penurunan suhu dalam ruangan ....................................... 37
Gambar 4.6. Gambar perubahan nilai set point ............................................... 37
Gambar 4.7. Hasil pembacaan LM35 .............................................................. 39
Gambar 4.8. Kode program bahasa C Interupsi ............................................. 40
Gambar 4.9. Kode program utama .................................................................. 43
Gambar 4.10. Program penampil lcd ................................................................. 44
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
DAFTAR TABEL
Tabel 2.1. Vektor Interupsi ATMega8535 .............................................................. 5
Tabel 2.2. Konfigurasi bit-bit ADMUX .................................................................. 7
Tabel 2.3. Konfigurasi bit-bit ADPS ....................................................................... 7
Tabel 2.4. Konfigurasi Bit Clock select ................................................................... 8
Tabel 2.5. Konfigurasi Bit clock select TCCR1B.................................................... 8
Tabel 2.6. Pengaturan Bit select .............................................................................. 9
Tabel 2.7. Konfigurasi Kaki LCD ......................................................................... 13
Tabel 3.1. Konfigurasi Pin push button ................................................................. 21
Tabel 3.2. Daftar basis Aturan Pengendali Suhu ................................................... 27
Tabel 4.1. Keterangan Bagian-bagian Perangkat Pengendali Suhu ...................... 29
Tabel 4.2. Data Hasil Pengujian Proses Keseluruhan ........................................... 31
Tabel 4.3. Varian Data Percobaan ......................................................................... 34
Tabel 4.4. Data hasil Pengujian Sistem Fuzzy ...................................................... 38
Tabel 4.5. Hasil Pengukuran Keakuratan LM35 dengan Termodigital ................ 39
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Seiring perkembangan teknologi dalam setiap aspek kehidupan, menciptakan rasa
ketertarikan dan menawarkan kemudahan untuk setiap aktivitas. Salah satu contoh
perkembangan teknologi yang paling dekat dengan kita adalah hadirnya air conditioner
(AC) yang merupakan perkembangan dari kipas. Sebelumnya kita mengenal kipas untuk
mengalirkan udara dengan volume yang banyak sehingga kita merasakan kesejukan. Namun
dengan adanya AC kita mampu mendinginkan suatu rungan dengan mudah karena udara
yang keluar dari AC tersebut adalah udara yang dingin. Tidak hanya itu, teknologi remote
controller dengan infrared juga memudahkan kita untuk mengontrol dengan jarak jauh dan
membuatnya semakin menarik.
Selain hal di atas, saat ini telah berkembang juga teknologi yang sering kita sebut
dengan sensor. Teknologi ini merupakan alat yang digunakan untuk mendeteksi adanya
perubahan lingkungan, fisik atau pun kimia dengan variabel keluaran yang diubah menjadi
besaran listrik. Besaran listrik tersebut diproses oleh sistem dengan berbagai algoritma
pemrograman sehingga hasil keluaran dari proses tersebut menjadi masukan untuk mengatur
sebuah sistem yang diinginkan. Keluran dari sistem ini mampu digunakan dalam berbagai
aplikasi. Ada banyak aplikasi-aplikasi yang dihasilkan seiring perkembangan variabel
besaran listrik dan proses algoritma tersebut. Salah satu aplikasi yang paling kita kenal
adalah smart home.
Pengetahuan tersebut memberikan ide kepada penulis untuk membuat prototipe
pengendali suhu ruangan berdasarkan suhu lingkungan dengan masukan dari sensor suhu
sebagai pengganti remote controller. Sebelumnya penelitian pengendali suhu ruangan
dengan menggunakan termoelektrik dan kontroler fuzzy sudah ada, hasil dari penelitian itu
sudah baik dimana steady state error dibawah 5%, tetapi penelitian tersebut terbatas pada
suhu dalam ruangan (dalam proses tertutup)[4] .
Proses pengendali suhu berdasarkan suhu lingkungan ini dimulai dari pembacaan
variabel sensor suhu yang diubah dalam besaran listrik kemudian hasil data tersebut diolah
dalam mikrokontroler dengan berbagai algoritma program yang akan mengendalikan driver
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
motor DC sebagai penggerak dari kipas DC dan juga menyalakan thermoelectric sebagai
pendingin. Prototipe yang akan dibuat memiliki ukuran 30x30x20 (cm) dan tidak terisolasi.
1.2. Tujuan dan Manfaat penelitian
Tujuan dari penelitian ini adalah untuk menghasilkan prototipe alat yang dapat
mengendalikan suhu ruangan berdasarkan suhu lingkungan dengan mikrokontroler dan
logika fuzzy.
Maanfaat dari penelitian ini :
a. Memberikan kenyamanan dan efektifitas kepada pemilik rumah untuk pengendalian
suhu ruangan.
b. Menambah aplikasi dari kontrol logika fuzzy.
c. Hasil penelitian ini juga dapat dikembangkan dengan literatur aplikasi elektronika.
1.3. Batasan Masalah
Pada penelitian pengendali suhu rungan dengan pemodelan memiliki batasan-batasan
masalah sebagai berikut:
a. Menggunakan kontroler AT mega8535
b. Menggunakan bahasa AVR
c. Suhu ruangan dibatasi pada 20-25o C.
d. Menyalakan kipas DC dan thermoelectric serta memberikan tampilan suhu (suhu
dalam ruangan dan suhu diluar ruangan) pada LCD.
e. Ukuran model 30x30x20 (cm) untuk bagian luar.
f. Sensor yang digunakan adalah LM35 yang berfungsi sebagai sensor suhu.
g. Pendingin ruangan menggunakan thermoelectric.
h. Menggunakan kipas DC 12 volt untuk mengalirkan udara.
i. Adanya keterkaitan suhu lingkungan dengan suhu dalam ruangan.
j. Sensor suhu luar ruangan untuk menyalakan thermoelectric.
k. Kondisi suhu luar ruangan lebih besar dengan suhu dalam ruangan.
1.4. Metodologi penelitian
Berdasarkan tujuan yang ingin dicapai dalam penelitian ini, maka ada beberapa
metode yang harus digunakan :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
a. Studi literatur
Mencari berbagai referensi dalam penulisan penelitian yang bersumber dari buku,
internet dan berbagai jurnal yang mendukung penelitian seperti logika fuzzy, motor
driver, sensor suhu, mikrokontroler dll.
b. Perancangan alur sistem kerja secara umum
Merancang alur proses dari alat yang dibuat.
c. Perancangan hardware
Pada tahap ini penulis akan akan merancang dan membuat alat berdasar pada teori
yang didapatkan dan selanjutkan akan disimulasikan terlebih dahulu, untuk
mendapatkan keakuratan rancangan sebelum diaplikasi ke dalam bentuk nyata.
d. Perancangan software
Merancang dan membuat algoritma program dari sistem yang akan dibuat dengan
bahasa pemrograman AVR.
e. Pengujian alat dan pengambilan data
Dalam pengujian dan pengambilan data, parameter pengukuran yang akan dicoba
meliputi kondisi suhu yang sesuai dengan set point yang telah ditetapkan dengan cara
mengubah-ubah suhu lingkungan yang menjadi faktor pengendali suhu dalam ruangan
dan mengamati bagaimana sensor dan fuzzy control merespon perubahan tersebut.
f. Analisis data
Analisis data berupa perhitungan,pengukuran dan pengamatan yang selanjutnya akan
dibandingkan dengan hasil-hasil perhitungan teoritis atau perancangan alat
g. Pengambilan Kesimpulan
Membuat kesimpulan dari analisis dan pembahasan data yang telah dilakukan.
Sensor suhu 1
Sensor suhu 2
Mikro-
kontroler
Kipas
thermoelectric
LCD
Gambar 1.1 Alur kerja sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
BAB II
DASAR TEORI
2.1. Mikrokontroler AVR ATmega8535
Mikrokontroler AT mega85358 merupakan system microprocessor 8 bit dengan
teknologi RISC (Reduced Instruction Set Computer)[1].
2.1.1. Fitur ATmega8535[1]
a. Saluran I/O sebanyak 32 buah, yang terdiri atas Port A,B,C dan D.
b. Tiga buah Timer/Counter dengan kemampuan perbandingan
c. CPU yang terdiri atas 32 register
d. SRAM internal sebesar 512 bytes
e. EEPROM sebesar 512 bytes yang dapat di program saat operasi.
f. PWM (Pulse Width Modulation) sebanyak 4 kanal
g. ADC (Analog-to-Digital Converter) 10 bit sebanyak 8 saluran
h. Port USART untuk komunikasi serial.
i. Antarmuka komparator analog.
j. Memori Flash sebesar 8 kbytes dengan kemampuan Read While Write.
k. Unit interupsi internal dan eksternal.
l. Port antarmuka SPI.
m. Watchdog Timer dengan osilator internal
Gambar 2.1 Konfigurasi pin ATMega8535[1]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
2.1.2. Interupsi
Interupsi adalah kondisi dimana mikrokontroler berhenti menjalankan perintah yang
sedang dikerjakan (rutin utama) dan mengerjakan perintah yang lain (rutin interupsi). Pada
ATMega8535 memiliki 21 interupsi internal dan eksternal seperti pada tabel 2.1.
Interupsi dapat bekerja bila Status Register (SREG) dan bit pada masing-masing
register bernilai 1[1].
2.1.3. Analog to Digital Converter ATMega8535
Analog to Digital Converter (ADC) dalam ATMega8535 terhubung ke sebuah
multiplekser analog yang akan memilih kanal ADC yang akan diperlukan[1]. Dalam
ATMega8535 terdapat 8 kanal ADC dan dapat diaktifkan dengan memberikan supply
tegangan pada port ADC.
Dua jenis mode ADC yang dapat diigunakan, yaitu mode single conversion dan mode
free running. Pada mode single conversion, ADC harus diaktifkan terlebih dahulu setiap kali
Table 2.1 Vektor interupsi ATMega8535
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
digunakan. Sedangkan dalam mode free running, ADC cukup diaktifkan sekali saja dan akan
terus terkonversi tanpa henti.
Saat mengakses ADC, register-register I/O yang terdapat dalam ADC memiliki proses
pengaturan. Proses pengaturan tersebut antara lain:
a. Menentukan sumber tegangan referensi
Tegangan referensi pada ADC merupakan batas rentang representasi nilai digital hasil
konversi. Hasil konversi pada mode single ended conversion dirumuskan sebagai
berikut:
𝐴𝐷𝐶 =𝑉𝐼𝑁.1024
𝑉𝑅𝐸𝐹 (2.1)
Keterangan persamaan 2.1:
VIN = tegangan masukan analog pada kanal ADC yang aktif
VREF = tegangan referensi yang dipilih
b. Menentukan bentuk penyajian data ADC
Penyajian data pada register ADCL dan ADCH yang ditentukan oleh ADLAR (ADC
Left Adjusted Result) pada register ADMUX. Data hasil konversi memiliki panjang 10
bit, sedangkan setiap register data menampung 8 bit. Artinya jika register diisi penuh
maka register lain tidak penuh berisi.
Jika bit ADLAR dengan kondisi ‘0’ (clear), delapan bit rendah disimpan di ADCL dan
sisanya di ADCH seperti yang ditunjukan pada gambar 2.2
Gambar 2.2 Pengaruh konfigurasi bit-bit ADLAR[1]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
c. Memilih kanal yang aktif
Kanal yang aktif ditentukan oleh bit-bit MUX4-MUX0 pada register ADMUX, untuk
lebih jelas dapat melihat tabel 2.2.
d. Menentukan prescaler (clock ADC)
Prescaler merupakan faktor pembagi yang diterapkan pada clock mikrokontroler.
Untuk mendapatkan data hasil konversi yang valid, maka ADC mikrokontroler harus
menerima frekuensi clock yang tepat. Nilai prescaler ditentukan oleh bit-bit ADC
prescaler select bits (ADPS) yang dapat dilihat pada tabel 2.3
e. Inisialisasi ADC
Untuk mengaktifkan ADC, bit Aden (ADC Enable) harus diberi logika “1” atau dalam
artian harus aktif . Untuk memulai ADC, ADSC (ADC Start Conversion) harus
memiliki bit masukan atau dalam artian ADSC berlogika “1”. Dalam konversi data,
ADC memerlukan waktu dan terbagi dalam dua tahap, yaitu waktu yang diperlukan
untuk konversi adalah 25 siklus clock ADC pada konversi pertama dan 13 siklus
clock ADC untuk konversi berikutnya.
Table 2.2 Konfigurasi bit-bit ADMUX
[2]
Tabel 2.3 kofigurasi bit-bit ADPS[2]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
2.1.4. Timer/Counter
AVR ATMega8535 memiliki tiga buah timer, Timer/Counter 0 (8 bit), Timer/Counter
1 (16 bit), dan Timer/Counter 2 (8 bit).
a. Timer/Counter 0
Timer/Counter 0 adalah Timer/Counter 8 bit yang multifungsi. Pengaturan diatur oleh
TCCR0 (Timer/Counter Control Register0) yang dapat dilihat pada gambar 2.3 dan tabel
2.4.
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
FOC0 WGM00 COM01 COM00 WGM01 CS02 CS01 CS00
Gambar 2.3 Register TCCR0
Tabel 2.4 Konfigurasi Bit Clock Select
CS02 CS01 CS00 Keterangan
0 0 0 sumber clock (timer/counter tidak difungsikan)
0 0 1 ClkI/O/1 (tanpa prescaling)
0 1 0 ClkI/O/8 (dari prescaling)
0 1 1 ClkI/O/64 (dari prescaling)
1 0 0 ClkI/O/256(dari prescaling)
1 0 1 ClkI/O/1024 (dari prescaling)
1 1 0 Sumber clock eksternal pada pin T0. Clock pada falling edge
1 1 1 Sumber clock eksternal pada pin T0. Clock pada rising edge
b. Timer/Counter 1
Timer/Counter 1 adalah Timer/Counter 16 bit yang memungkinkan program
pewaktuan lebih akurat. Pengaturan Timer/Counter 1 diatur oleh TCCR1A (Timer/Counter1
Control RegisterA) dan TCCR1B (Timer/Counter1 Control RegisterB) dapat dilihat pada
gambar 2.4 dan tabel konfigurasi pada tabel 2.5.
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
ICNC1 ICES1 - WGM13 WGM12A CS12 CS11 CS10
Gambar 2.4 Register TCCR1B
Tabel 2.5 Konfigurasi Bit Clock Select TCCR1B CS12 CS11 CS10 Keterangan
0 0 0 sumber clock (timer/counter tidak difungsikan)
0 0 1 ClkI/O/1 (tanpa prescaling)
0 1 0 ClkI/O/8 (dari prescaling)
0 1 1 ClkI/O/64 (dari prescaling)
1 0 0 ClkI/O/256(dari prescaling)
1 0 1 ClkI/O/1024 (dari prescaling)
1 1 0 Sumber clock eksternal pada pin T1. Clock pada falling edge
1 1 1 Sumber clock eksternal pada pin T1. Clock pada rising edge
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
c. Timer/Counter2
Timer/Counter2 adalah Timer/Counter 8 bit yang multifungsi. Pengaturan
Timer/Counter2 diatur oleh TCCR2 (Timer/Counter2 Control Register), dapat dilihat pada
gambar 2.5 dan pengaturan bit select pada tabel 2.6
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
FOC2 WGM20 COM21 COM20 WGM21 CS22 CS21 CS20
Gambar 2.5 Register TCCR2
Tabel 2.6 Pengaturan bit select
CS22 CS21 CS20 Keterangan
0 0 0 sumber clock (timer/counter tidak difungsikan)
0 0 1 ClkI/O/1 (tanpa prescaling)
0 1 0 ClkI/O/8 (dari prescaling)
0 1 1 ClkI/O/64 (dari prescaling)
1 0 0 ClkI/O/256(dari prescaling)
1 0 1 ClkI/O/1024 (dari prescaling)
1 1 0 Sumber clock eksternal pada pin T0. Clock pada falling edge
1 1 1 Sumber clock eksternal pada pin T0. Clock pada rising edge
2.2. Teori Logika Fuzzy
Logika fuzzy pertama kali diperkenalkan oleh Prof. Lotfi A. Zadeh dari University of
California di berkeley pada tahun 1965[4]. Dalam implementasi fuzzy dibagi dalam 4 tahap:
a. Fusifikasi, merupakan proses pemetaan dari masukan tegas ke himpunan fuzzy.
b. Pembentukan aturan fuzzy merupakan penalaran rule
c. Analisis logika fuzzy merupakan proses mengkombinasikan output yang menyatakan
himpunan fuzzy kedalam himpunan fuzzy.
d. Defusifikasi mengubah himpunan fuzzy ke nilai tegas.
2.2.1. Fusifikasi
Fusifikasi adalah proses pemetaan masukan ke dalam fungsi keanggotaaan fuzzy,
proses pemetaan ini dilakukan agar nilai variable masukan himpunan dapatdioleh dan
dieksekusi dalam logika fuzzy . Untuk membuat sistem kendali maka pertama perlu
memasukan fungsi keanggotaan untuk variabel masukan. Fungsi keanggotaan ini sangat
perlu untuk didefinisikan dengan nilai derajat keanggotaan dalam himpunan serta nama
variabel yang dapat dilihat pada gambar 2.6. Pada gambar 2.6 terlihat fungsi keanggotaan
fuzzy “suhu” yang dibagi dalam tiga himpunan, yaitu Dingin, Sejuk dan Panas. Pada derajat
keanggotaaan dalam diagram tersebut merupakan titik perpotoongan antara nilai masukan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
pada sumbu horizontal dengan garis yang mendefenisikan satu atau lebih fungsi
keanggotaan fuzzy.
Sebagai contoh, nilai 23,6 pada variabel suhu dingin adalah fungsi keanggotaan
sejuk dengan derajat keanggotaan 0,2 dan variabel sejuk dengan derajat keanggotaan 0,9.
Sistem logika fuzzy bekerja berdasarkan keanggotaaan suatu himpunan dan derajat
keanggotaan, berbeda halnya dengan sistem klasik yang menyatakan keanggotaan dari suatu
fungsi.
Dalam kasus diatas, maka suhu 23,60C lebih condong pada keanggotaan sejuk
dengan derajar keanggotaan 0,9 dari pada keanggotaan himpunan dingin dengan derajat 0,2.
2.2.2. Pembentukan Aturan Fuzzy
Setelah menentukan fungsi keanggotaan untuk variabel masukan dan keluaran,
maka tahap selanjutnya adalah menentukan basis aturan untuk menghubungkan aksi
keluaran pengendali dengan kondisi masukan.
Beberapa aturan dapat dibuat untuk menentukan aksi keluaran fuzzy. Dapat dilihat
pada contoh berikut.
a. Jika kondisi suhu dalam keadaan Dingin, maka kecepatan kipas dalam posisi lambat
b. Jika kondisi suhu dalam keadaan sejuk, maka kecepatan kipas dalam kondisi sedang
c. Jika kondisi suhu panas, maka kecepatan kipas dalam kondisi cepat.
Aturan diatas dapat menghubungkan banyak variabel masukan dan keluaran karena
dideskripsikan dengan kata-kata. Pada umumnya, pengendali logika fuzzy dijelaskan dengan
kata-kata bukan dengan definisi matematis. Hal ini dapat diartikan bahwa semua sistem non-
linier dapat dikendalikan dengan mudah pada logika fuzzy[4][6].
Gambar 2.6 Fungsi keanggotaan variabel masukan suhu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
2.2.3. Analisis Logika Fuzzy
Pada proses pembentukan aturan (implikasi), fungsi yang digunakan ditiap aturan
adalah fungsi implikasi Min[6]. Fungsi implikasi min yaitu mengambil nilai keanggotaan
yang terkecil pada setiap himpunan fuzzy. Untuk komposisi antar aturan fuzzy menggunakan
metode koposisi max (maximum). Komposisi merupakan kesimpulan atas keseluruhan
kesimpulan masing-masing aturan. komposisi max adalah aksi fuzzy diperoleh dari
pengambilan nilai maksimum himpunan fuzzy dari aturan yang digunakan.
2.2.4. Defusifikasi
Defusifikasi adalah penegasan pada hasil atau kesimpulan dari suatu himpunan.
setelah mendapatkan hasil atau output maka data tersebut akan dimasukan kedalam
pengendali, agar dapat diproses dalam sistem pengendali maka perlu diubah kedalam nilai
tegas, karna nilai yang dimiliki adalah nilai dari domain himpunan fuzzy tersebut..
Salah satu metode yang sering digunakan dalam defusifikasi adalah metode rerata
pusat atau Height. Keuntungan menggunakan metode ini adalah memiliki nilai yang
kontinyu, masuk akal dan komputasinya cukup mudah. Rumus perhitungan pada proses ini
dapat dilihat pada persamaan berikut ini. U merupakan bilai tegas, 𝑏𝑖 nilai derajat
keanggotaan dan 𝑥𝑖 merupakan nilai tengah dari himpunan.
𝑈 =∑ 𝑏𝑖𝑥𝑖
𝑚𝑖=1
∑ 𝑏𝑖𝑚𝑖=1
(2.2)
2.2.5. Logika Fuzzy dalam Sistem Kendali
Bentuk dasar logika fuzzy adalah arsitektur Mamdani, arsitektur ini juga banyak
digunakan dibanding dengan arsitektur yang lain karena cara kerja arsitektur mamdani yang
mengubah kinerja eksternal dan sifat plant kedalam bahasa berbasis aturan (rule).
Paradigma kendali logika fuzzy Mamdani meletakkan controlled variable
(CV1,CV2,...) dari plant dengan manipulated variable (MV1, MV2,....). Dalam setiap CV,
diperlukan error yang merupakan perbedaan nilai variabel terukur dengan nilai reverensi.
Selain error diperlukan juga perubahan error (𝑑𝑒
𝑑𝑡) yang digunakan dalam premise aturan.
Masukan Fuzzy Logic Controller (FLC) adalah error (ce). Pengendali dilakukan
dengan cara pemetaan nilai error,en(t) dan perubahan error ternomalisasi cen(t) dengan
persamaan sebagai berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
en(t) = nee(t)
cen(t) = nce(e(t)-e(t-T)) (2.3)
Dengan T adalah time step, ne dan nce adalah faktor normalisasi kedalam prubahan
aksi pengendali δun(t) melalui aturan :
If en(t) is P and cen(t) is N then δun(t) is Z (2.4)
P,N dan Z adalah pendekatan dari positive, negative dan zero yang didefinisikan
sebagai fuzzy set melalui variabel yang relevan.
2.3. Sensor Suhu LM35
IC LM35 adalah sensos suhu dalam bentuk Integrated Circuit (IC) dapat dilihat pda
gambar 2.7. Sensor suhu memiliki kemampuan untuk mengetahui suhu ruangan dalam skala
°C dengan keluaran tegangan 10mV untuk setiap °C. Dalam artian ini, setiap kenaikan
10mV akan mengalami kenaikan suhu sebesar 1oC dengan persamaan
𝑉𝑜𝑢𝑡 = 𝑠𝑢ℎ𝑢 𝑥 1𝑜𝑚𝑉 (2.5)
Dapat bekerja dengan supply 4-30V dengan tegangan output antara 0V sampai dengan
1,5V. Rentang suhu yang mampu diukur oleh sensor adalah dari -55°C s/d +150°C[2][3].
2.4. LCD (Liquid Crystal Display) 16x2
LCD (Liquid Crystal Display) adalah sebuah perangkat elektronika yang berfungsi
untuk menampilkan karakter yang bertujuan untuk menjadi media komunikasi alat
elektronika dengan user (pengguna) dengan menggunakan media tampilan kristal cair. LCD
16x2 artinya LCD yang digunakan terdapat 2 baris dengan 16 karakter setiap barisnya
dengan keseluruhan 32 karakter seperti pada gambar 2.8. Setiap satu karakter huruf terdiri
dari 8 baris dan 5 kolom dot. Untuk konfigurasi pin kaki LCD 16x2 dapat dilihat tabel 2.7.
berikut ini.
Gambar 2.7 Bentuk fisik LM35[3]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Gambar 2.8 Bentuk LCD 16x2
Tabel 2.7. Konfigurasi kaki LCD 16x2
2.5. Rangkaian Elektronis
2.5.1. Penguat Non-Inverting
Untuk memperbesar suatu sinyal tanpa mengubah bentuk sinyal masukannya,
maka kita memerlukan rangkaian non-inverting.
Rumus untuk penguat non-inverting adalah
𝑉𝑜𝑢𝑡 = (1 +𝑅𝑓
𝑅) 𝑉𝑖𝑛 (2.6)
Untuk rumus penguatan sebagai berikut
𝐴𝑣 = (1 +𝑅𝑓
𝑅) (2.7)
rangkaian non-inverting akan ditunjukkan pada gambar 2.9.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
Gambar 2.9 Rangkaian non-inverting
2.5.2. Transistor
Untuk mengatur kecepatan kipas yang berfungsi untuk mengalirkan udara dalam
ruangan maka diperlukan driver. Dalam perancangan ini, driver kipas menggunkan transistor
NPN 2N4401 dapat dilihat pada gambar 2.10. rumus umum transistor
Ib = (Vb -Vbe ) / Rb (2.8)
Gambar 2.10 Transistor 2N4401
2.5.3. Push-button
Push-button merupakan sebuah rangkain elektronika yang enyammbunngkan atau
memutuskan sebuah aliran listrik dalam sebuah sistem dengan cara menekan alat elektronika
tersebut. Push-button memiliki dua kondisi logika yakni low dan high. Bentuk fisik Push-
button dapat dilihat pada gambar 2.11. cara kerja push-button adalah akan menghasilkan
noise ketika ditekan atau biasanya disebut bouncing. Bouncing adalah keadaan saat Push-
button ditekan dan menghasilkan osilasi (keadaaan low dan high dalalm frekuensi tinggi)
dalam waktu tertentu dan menghasilkan output yang benar. dalam waktu tertentu dan
menghasilkan nilai yang benar.
Untuk mengurangi bouncing maka perlu rangkaian anti-bouncing dengan
menggunakan komponen kapasitor dan resistor. Lebar anti-bouncing pada push-button 2,5
µS. dengan persamaan sebagai berikut.
𝑓 =1
𝑇=
1
2 𝑥 𝜋 𝑥 𝑅 𝑥 𝐶 (2.9)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
Gambar 2.11 Push-button
2.6. Termoelektrik
Termoelektrik elektrik merupakan sebuah perangkat yang dapat mengubah energy
kalor menjadi energi lisrik begitu pula sebaliknya[4]. Jika dua buah logam berbeda
dihubungkan pada kedua ujungnya dan salah satu ujungnya diberi suhu berbeda maka akan
membentuk rangkaian tertutup yang mengaliri arus. Fenomena ini disebut efek Seebeck,
karena ditemukan oleh Thomas Seebeck pad atahun 1821.
Bila rangkaian tertutup dari dua logam diberi arus listrik maka pada salah satu
ujungnya akan menyerap kalor,sehingga menjadi hangat dan ujung lainnya akan terasa
dingin. Fenomena ini disebut efek Peltier karena ditemuakan oleh Jean Charles Athanase
Peltier pada tahun 1834.
Efek peltier dan efek Seebeck inilah yang menjadi dasar pengembangan termoelektrik.
Termoelektrik dibuat dengan menggunakan bahan semikonduktor tipe-n dan tipe-p untuk
memperluas permukaan dari tempat penyerapan dan pelepasan kalor seperti pada gambar
2.12.
Gambar 2.12 Efek Peltier yang terjadi pada rangkaian tertutup dari kedua batang logam
yang berbeda[4].
Pada saat electron berpindak dari tipe-p ke tipe-n melalui sambungan elektrik, maka
electron akan berpindah dengan cara menyerap energi panas pada sisi dingin. Ketika
elektron berpindah dari tipe-n ke tipe-p melalui sambungan elektrik, maka electron yang
berpindah melepaskan energi panas yang melemah ke bagian sisi panas.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
2.7. Kipas DC
Kipas merupakan perangkat elektronik yang digunakan untuk mengalirkan udara.
Dalam erancangan ini, kipas berfungsi untuk mengalirkan udara dingin didalam ruangan dan
juga membuang kalor untuk mengoptimalkan pendinginan ruangan. Kipas yang digunakan
memiliki tegangan 12V DC.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
BAB III
RANCANGAN PENELITIAN
3.1. Diagram Blok
Pada gambar di bawah ini, menunjukkan model perancangan pengontrol suhu ruangan
menggunakan mikrokontroler.
Dalam sistem ini, set-point untuk suhu ruangan diatur oleh tombol Naik Turun. Untuk
start dan stop dilakukan dengan dengan menekan push button, sehingga sistem akan dimulai
setelah tombol start diberikan. Suhu dalam rungan akan dibaca oleh sensor 2 LM35
sedangkan untuk pembacaan suhu luar rungan akan dibaca oleh sensor 1 LM35 dengan
keluaran setiap LM35 sebesar 10mV/oC. Setelah melakukan pembacaan suhu oleh sensor,
akan dilanjutkan dengan pengkondisian sinyal (blok pengkondisi sinyal 1) yang merupakan
rangkaian penguat non-inverting. Keluaran dari blok ini akan masuk dalam ADC
mikrokontroler dan dilanjutkan ke PWM. Keluaran dari PWM mikrokontroler tersebut akan
masuk kepenguatan daya agar dapat bekerja dengan maksimal. Thermoelectric dalam sistem
ini akan dikendalikan dengan mode on off sedangkan kipas DC dikendalikan dengan logika
fuzzy.
Keluaran dari mikrokontroler berupa data digital akan dikonversikan ke PWM dengan
mengatur duty cycle melalui mikrokontroler. Setelah itu akan diumpan ke dalam driver
motor DC. Pada LCD yang berfungsi sebagai penampil, akan dikendalikan menggunakan
Gambar 3.1 Diagram blok perancangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
mikrokontroler. Data yang ditampilkan dalam LCD ini berupa kecepatan kipas, suhu
ruangan, suhu luar ruangan dan set point.
Gambar 3.2 merupakan rancangan blok diagram sistem closed loop fuzzy logic
control. Pemberian set point (SP), perhitungan nilai error (e), perubahan nilai error (ce),
fuzzy logic control (FLC), integrator dan PWM diproses didalam mikrokontroler. Untuk
kipas yang diatur kecepatan putarnya adalah kipas yang menghadap kedalam yang berfungsi
untuk mengalirkan udara dengan hawa dingin dari termoelektrik, sedangkan untuk kipas
yang dipasang dibagian luar tidak diatur kecepatan putarnya dalam artian diberi tegangan
masukan maksilam sebesar 12 volt. Kipas yang menghadap keluar berfungsi untuk
mengeluarkan hawa panas yang berasal dari termoektrik, Pemodelan alat yang digunakan
dapat dilihat pada gambar 2.3.
Gambar 3.3. Bentuk fisik pemodelan ruangan yang akan dibuat
Gambar 3.2 Blok diagram closed loop pengendali yang digunakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
3.2. Perancangan Perangkat Keras
Perancangan perangkat keras pada alat ini sangat diperlukan agar alat yang dirancang
dapat bekerja dengan baik.
3.2.1. Pengkondisi Sinyal
Pengkondis sinyal adalah sebuah operasi elektronik yang digunakan untuk
mengkonversi sinyal elektroknik agar sesuai pada komponen elektronika yang digunakan
dalam sistem pengendali, pengkondisi sinyal yang digunakan dalam rangkaian ini adalah
penguat non-inverting.
Penguat non-inverting digunakan untuk menghasilkan tegangan yang memiliki fasa
yang sama dengan tegangan output penguat. Tegangan referensi internal ADC adalah 2.56V,
untuk membuat sensor suhu berada 36oC pada kondisi tinggi maka sensor suhu memerlukan
buffer dan diperkuat sebesar 7 kali. Untuk mempermudah Rf ditentukan sebesar 200KΩ.
Untuk rumus perhitungan dapat dilihat pada persamaan 2.6 dan 2.7.
𝑅𝑖 =200000
6= 33333.3Ω
Untuk resistor 33333,3 Ω dapat dipararel dengan 3 buah resistor 100K Ω seperti pada
gambar 3.4.
3.2.2. Driver Kipas
Agar kipas DC bekerja dengan baik maka membutuhkan driver. Driver pada kipas ini
berfungsi untuk mengatur kecepatan putar motor pada kipas agar sesuai dengan system yang
diiginkan. Inputan pada driver ini adalah sinyal pulsa dari PWM mikrokontroler. Keluaran
dari mikrokontroler PWM yang telah di-buffer terlebih dahulu dan dibatasi 3,6mA. Maka
anggapan Op-Amp ideal, dimana RB dapat dihitung dengan rumus persamaan 2.8.
𝑅𝐵 = 𝑉𝑠−0,7
3,6𝑚𝐴= 1,2𝑘Ω
Gambar 3.4 rangkaian non-inverting sebagai baffer untuk sensor suhu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
Gambar 3.5. Driver kipas
3.2.3. Rangkaian Tombol Data
Untuk memasukan nilai suhu yang diinginkan kedalam pengolahan data maka sangat
diperlukan sebuah perangkat inputan push-button. Nilai set point yang diinginkan
sebelumnya telah tersimpan pada mikrokontroler dalam artian Fungsi dari push-button
adalah memilih nilai set point. Untuk rancangan tombol memilih nilai set point
menggunakan push-button dapat dilihat pada gambar 3.6 berikut ini.
Perhitungan resistor dan kapasitor yang digunakan dapat dilihat pada persamaan 2.9
dengan lebar minimum untuk anti-bouncing 2,5µS, T sebesar 0,5mS dan mengasumsikan
nilai resistor sebesar 30kΩ.
1
𝑇=
1
2 𝑥 𝜋 𝑥 𝑅 𝑥 𝐶
1
0,5𝑚𝑆=
1
2 𝑥 𝜋 𝑥 30000𝑥 𝐶
𝐶 = 2,65𝑛𝐹
𝐶 = 2,2𝑛𝐹
Gambar 3.6 Rangkaian tombol input data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
Table 3.1 Konfigurasi pin push-button
Push-button Pin atmega8535
Up 24
Down 25
Start 26
Stop 27
3.2.4. Perancangan Rangkaian Sensor LM35
Sensor LM35 merupakan perangkat elektronika yang memiliki fungsi untuk
mendeteksi suhu ruangan dengan skala oC. agar alat ini bekerja dengan baik maka harus
dirangkai dengan baik. Maka rancangan untuk sensor suhu dapat dilihat pada gambar 3.7
Gambar 3.7 Rangkaian sensor suhu.
3.2.5. Antarmuka Mikrokontroler dan LCD
Antarmuka mikrokontroler dangan LCD dapat dilihat pada gambar 3.5. Pin 11-14
pada LCD dihungkan dengan pin PD4- PD7 pada atmega 8535 untuk jalur I/O. Pin RS LCD
dihungkan dengan pin PD0 Atmega 8535 dan pin Enabel pada LCD dihubungkan dengan
pin PD2 pada atmega 8535.
Gambar 3.8 rangkaian mikrokontroler dengan LCD
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
3.3. Perancangan Perangkat Lunak
Perancangan perangkat lunak sangatlah diperlukan unutk memberikan perintah dan
alur eksekusi pada pengendali.
3.3.1. Perancangan Program pada Mikrokontroler
Untuk dapat bekerja dengan baik, mikrokontoler perlu di program terlebih dahulu.
Pada dasarnya program dimulai dengan inisialisasi dan pemberian nilai awal. Proses ini
bertujuan untuk mendefenisikan PORT pada mikrokontroler sebagai masukan maupun
sebagai keluaran, variabel-variabel yang digunakan serta inisialisasi LCD, PWM, ADC
dan timer agar perangkat keras dapat bekerja dengan baik. Dilanjutkan dengan
menampilkan karakter dan kondisi awal pada LCD sebagai tampilan awal dari program,
selanjutnya meminta masukan data dan data masukan akan diolah dan terus diulang sampai
ada sinyal berhenti. Jika ada sinyal berhenti maka data output akan di-reset dan diulangi
dari proses pemberian nilai awal. Untuk diagram alir kerangka utama program dapat dilihat
pada gambar 3.9.
Gambar 3.9 Diagram alir kerangka program utama
3.3.2. Tampilan Awal Program
Pada proses ini, adaya penampilan karakter di LCD untuk mengetahui apakah
program dapat bekerja atau tidak. Program pertama ini akan berisi ucapan selamat datang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
lalu dilanjutkan dengan keterangan suhu dalam ruangan dan suhu diluar ruangan. Setiap
penggantian karakter yang ditampilkan di LCD memiliki waktu tunda 1,5 detik agar
tampilan dapat diamati. Sesor suhu1 berfungsi untuk membaca suhu didalam ruangan,
untuk sensor suhu2 berfungsi untuk membaca keadaan suhu lingkungan diluar ruangan.
Diagram alir tampilan awal dapat dilihat pada gambar 3.10 dan untuk tampilan awal dan
tampilan suhu pada LCD dapat dilihat pada gambar 3.11.
(a) (b)
3.3.3. Meminta Masukan Data
Proses meminta data masukan ini dilakukan dengan mengatur set point dengan cara
menekan push batton. push batton yang berfungsi untuk input data ada dua dengan fungsi
memilih nilai keatas atau nilai kebawah. untuk contoh tampilan dapat dilihat pada gambar
3.12(b). Data yang dimasukan oleh push batton sebelumnya sadah di simpan dalam data.
Gambar 3.11 (a) Contoh tampilan selamat datang, (b) contoh tampilan suhu
Gambar 3.10 diagram alir tampilan awal program
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
Pada proses ini lebih kepada pemilihan set point saja. Diagram alir pada proses ini
dapat dilihat pada gambar 3.12
b
a
3.3.4. Pengolahan Data
Proses pengolahan data ini dimulai dari pembacaan ADC dilanjutkan dengan
perhitungan untuk mencari error (e) dan perubahan nilai error (ce) serta error sebelumnya
untuk menghitung nilai output dengan proses fusifikasi dan defusifikasi. Data output yang
dihasilkan akan diolah oleh mikrokontroler selanjutnya data dikirim ke PWM untuk input
dari termoelektrik dan kipas DC. Data dari mikrokontroler juga akan ditampilkan ke LCD,
untuk diagram alir pengolahan data dapat dilihat pada gambar 3.13
Gambar 3.13 Diagram alir pengolahan data
3.3.4.1. Subrutin Baca ADC
Konversi data analog ke dalam data digital maka diperlukan subrutin ADC. Konversi
ADC dimulai dengan menentukan kanal ADC (kanal ADC0, kanal ADC1, kanal ADC2),
Gambar 3.12 (a) Diagram alir, (b) tampilan input data
input data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
kemudian konversi ADC hingga selesai, setelah konversi selesai maka hasil konversi
tersebut disimpan dalam kanal, seperti pada gambar 3.14.
GambAar 3.14 Diagram alir subrutin ADC
3.3.4.2. Fuzzy
Proses pengolah data menggunakan logika fuzzy dimulai dengan masukan nilai set
point dan perhitungan nilai selisih pembacaan sensor (membandingkan nilai suhu didalam
ruangan dan diluar ruangan) dan nilai suhu yang diinginkan sehingga memiliki data error
(e) dan perubahan error (ce). Pada masukan tersebut dilakukan pemetaan kedalam fusifikasi.
Setelah proses fusifikasi maka dilanjutkan proses inferensi aturan dengan menghubungkan
semua aturan untuk menghasilkan anggota keluaran fuzzy. Setelah mendapatkan keluaran
maka data keluaran tersebut akan dicari nilai middle untuk masing-masing anggota keluaran
fuzzy. Setelah dihasilkan keluaran fuzzy maka proses berikutnya defusifikasi untuk
menghasilkan nilai keluaran yang tegas dapat dilihat pada gambar 3.15.
Gambar 3.15 Diagram alir logika fuzzy
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
a. Fusifikasi
Pengendali logika fuzzy pada rancangan ini menggunakan metode Mamdani. Pada
proses pembentukan anggota himpunan ini, dilakukan pemetaan nilai variabel masukan
tegas kedalam himpunan fuzzy. Fungsi nilai keanggotaan ini didefenisikan dengan rentang
nilai dan derajat keanggotaan. Pada Fuzzy Logic Control (FLC) perlu menentukan variabel
linguistik masukan dan keluaran. Variable linguistik masukan berupa nilai error (e), change
of error (∆e) dan change of control (u). Gambar 3.16 adalah variabel linguistik error suhu,
Gambar 3.17 adalah variabel linguistik change of error suhu dan Gambar 3.18 merupakan
variabel linguistik change of control suhu.
Gambar 3.16 variabel linguistik error.
Gambar 3.17 Variabel linguistik change of error .
Gambar 3.18 Variabel linguistik change of control .
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
b. Pembentukan Aturan Fuzzy
Setelah proses fusifikasi dilakukan maka Fuzzy Logic Control (FLC) memerlukan
basis aturan untuk menjalankan dan menentukan proses eksekusi data yang ingin dilakukan.
Basis aturan untuk untuk menentukan aksi keluaran dapat dilihat pada table 3.2 berikut.
Prinsip yang digunakan dalam merancang FLC ada dua yaitu yang pertama adalah
jika keluaran mencapai nilai nilai yang ditentukan dan perubahan nilai error dalam keadaan
nol, maka keluaran FLC tidak berubah dan yang kedua adalah jika keluaran menyimpang
dari nilai yang telah ditantukan maka aksi kendali ditentukan oleh tanda (+/-) sinyal error
dan change of error.
Tabel 3.2. Daftar basis aturan pengendali suhu.
∆e e
NB N NS Z PS P PB
N N N N N Z P P
Z N N Z Z Z P P
P Z Z P P P P P
Setelah menentukan basis aturan yang digunakan maka langkah selanjutnya adalah
fungsi implikasi, implikasi yang digunakan adalah fungsi implikasi min. cara kerja dari
implikasi ini adalah dengan mengambil nilai terkecil dari setiap himpunan fuzzy.
c. Komposisi Aturan
Dalam komposisi aturan mamdani ada tiga metoda yang digunakan dalam inferensi
system fuzzy. Dalam komposisi ini penulis menggunakan komposisi Max. Dalam metode
komposisi max nilai yang diambil sebagai keluaran dari proses adalah nilai terbesar/
tertinggi dari hasil aturan yang digunakan.
d. Defusifikasi
Proses defusifikasi merupakan proses penagasan pada himpunan fuzzy. Masukan pada
proses ini adalah hasil dari komposisi aturan-aturan fuzzy tersebut. Pengendali logika fuzzy
menghasilkan keluaran yang diberikan kepada sistem yang ingin dikendalikan. Proses
penegasan nilai fuzzy ini sangat perlu untuk dilakukan agar nilai tersebut dapat digunakan
untuk mengendalikan sistem.
Metode yang digunakan dalam penegasan ini adalah metode height, untuk rumus
metode ini dapat dilihat pada persamaan 2.2. Metode ini paling banyak digunakan karena
metode ini paling sederhana dan paling cepat. Cara kerja dari metode height adalah dengan
menjumlahkan titik tengah dari setiap membership yang tersulut, kemudian membaginya
dengan jumlah dari derajat (tinggi) keanggotaan dari membership yang tersulut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB IV
HASIL DAN PEMBAHASAN
Bab ini berisi mengenai hasil pengamatan dari Prototipe Pengendali Suhu Ruangan
Berdasarkan Suhu Lingkungan menggunakan ATMega8535. Hasil pengamatan berupa
pengujian per sub pada rangkaian,kepresisisan dan program yang telah diaplikasikan.
Pada pembuatan alat terdapat beberapa perubahan antara perancangan dan
implementasi. Pada perancangan, metode yang digunakan adalah metode mamdani tetapi
dalam implementasi yang digunakan adalah metode sugeno. Perubahan ini dilakukan karena
program dari mamdani yang agak rumit dalam pengaplikasian terhadap program madani
belum bisa berhasil dalam percobaan. Menggunakan metode sugeno hampir sama dengan
mamdani tetapi bedanya, metode sugeno mengambil data pada titik tengah dari kurva (center
of singleton) sedangkan mamdani menghitung luasan dibawah kurva.
4.1. Implementasi pembuatan alat
4.1.1. Bentuk Fisik Box dari Prototipe
Perangkat keras yang berfungsi untuk mengendali suhu ini terdiri dari box yang
berukuran 30x30x20, kipas DC berjumlah 2 buah, termoelektrik, LCD 16x2, sumber
tegangan, rangkaian elektronika, sensor dan relay. Gambar 4.1 memperlihatkan perangkat
pada prototipe.
Gambar 4.1 Bentuk Fisik Box Prototipe, dan perangkat.
28
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
Gambar 4.2 .Bentuk fisik box dari dalam
Pada Gambar 4.1. dan 4.2. di atas terdapat beberapa perangkat keras yang ditandai
dengan angka. Keteranga lebih lanjut dapat dilihat pada Tabel 4.1 berikut ini.
Tabel 4.1 Keterangan Bagian-bagian Perangkat Pengendali Suhu
No Nama Bagian Keterangan
1 Sumber tegangan
masukan
Berfungsi unutk memberi sumber ke perangkat
elektronika.
2 Kipas DC Berfungsi unutk mengalirkan udara dingin di dalam
box dan membuang hawa panas pada thermoelektrik.
3 Relay Berfungsi sebagai saklar terhadap thermoelektrik
4 Atmega8535 Berfungsi sebagai chip kontroler
5 LCD 16x2 Berfungsi sebagai penampil nilai output perangkat.
6 Rangkaian Elektronika Berfungsi untuk menunjang cara kerja perangkat.
7 Box Berfungsi sebagai daerah yang didinginkan.
8 Sensor Berfungsi sebagai nilai inputan dari alat.
4.1.2. Keterangan Penggunaan Alat
Prototipe pengendali suhu ruangan berdasarkan suhu ligkungan ini dapat
memanupulasi suhu ruangan hingga turun beberapa derajat dalam celcius. Hasil pembacaaan
dua sensor suhu LM35 berfungsi sebagai inputan pada thermoelektrik dan dan menjadi nilai
error pada system fuzzy. Nilai dari LM35 diolah dan dibandingkan pada nilai set point. Nilai
set poin dapat dimasukan melalui tombol Up/Down. Nilai perbandingan ini akan diproses
dalam fuzzy untuk pengatur kecepatan putar dari kipas. Contoh penggunaan alat ini dapat di
lihat pada gambar 4.3. di bawah ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
Gambar 4.3. Cuplikan foto ketika perangkat sedang dinyalakan.
Untuk cuplikan hasil pembacaan nilai suhu, set point dan hasil pengukuran menggunakan
termodigital ruangan dapat dilihat pada gambar 4.4. di bawah ini.
Gambar 4.4. Tamplian dari LCD sebagai penampil
4.2. Pengujian alat dan analisis
Pengujian dilakukan untuk mengetahui kualitas alat berdasarkan output dari perangkat
keras dan perhitungan secara matematis. Pengambilan data dilakukan pada tanggal 5
november 2018. Dalam pengujian tersebut terbagi dalam beberapa aspek yaitu kinerja per
sub sistem dan kinerja alat secara keseluruhan. Pengujian alat per sub sistem dilakukan
dengan menganalisis data keluaran pada sub system. Hasil dari pengujian ini bermaksud
untuk melihat apakah perangkat tersebut berjalan sebagai mana difungsikan atau malah
belum bisa digunakan.
4.2.1. Pengujian Alat Secara Keseluruhan
Pengujian perangkat secara keseluruhan bertujuan untuk melihat hasil dari masing-masing
program setelah diintergrasikan. Pengujian ini dilakukan untuk melihat hasil keluaran dari
sistem fuzzy dengan cara mengatur sinyal masukan pengendali dengan hasil pembacaan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
sensor suhu. Pengujian ini dilakukan dengan pembacaan suhu saat diuji coba. Setelah
melakukan pengujian maka didapatkan hasil yang berubah sesuai dengan sinyal masukan.
Dapat dilihat pada tabel 4.2 berikut ini.
Tabel 4.2 Data Hasil Pengujian Proses Keseluruhan dengan set point 21
Waktu SD TD PWM Teori
00:00:00 28 28,3 156 156
00:00:10 28 28,1 156 156
00:00:20 28 27,9 156 156
00:00:30 28 27,8 156 156
00:00:40 27 27,6 133 133
00:00:50 27 27,4 133 133
00:01:00 27 27,2 133 133
00:01:10 27 27,1 133 133
00:01:20 27 27 133 133
00:01:30 26 26,9 114 114
00:01:40 26 26,4 114 114
00:01:50 26 25,9 114 114
00:02:00 25 25,2 79 79
00:02:10 25 25,1 79 79
00:02:20 25 24,8 79 79
00:02:30 25 24,7 79 79
00:02:40 25 24,6 79 79
00:02:50 25 24,5 79 79
00:03:00 25 24,4 79 79
00:03:10 24 24,3 79 79
00:03:20 24 24,2 79 79
00:03:30 24 24,1 64 64
00:03:40 24 24 64 64
00:03:50 24 23,9 64 64
00:04:00 24 23,8 64 64
00:04:10 24 23,7 64 64
00:04:20 24 23,6 64 64
00:04:30 24 23,5 64 64
00:04:40 24 23,4 64 64
00:04:50 24 23,4 64 64
00:05:00 24 23,4 64 64
00:05:10 24 23,3 64 64
00:05:20 24 23,3 64 64
00:05:30 24 23,3 64 64
00:05:40 23 23,2 64 64
00:05:50 23 23,2 64 64
00:06:00 23 23,2 64 64
00:06:10 23 23,1 64 64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Lanjutan dari data tabel 4.2 Pengujian Proses Keseluruhan
Waktu SD TD PWM Teori
00:06:20 23 23 64 64
00:06:30 23 22,8 64 64
00:06:40 23 22,8 64 64
00:06:50 23 22,7 64 64
00:07:00 23 22,7 64 64
00:07:10 23 22,5 64 64
00:07:20 23 22,5 64 64
00:07:30 23 22,4 64 64
00:07:40 23 22,4 64 64
00:07:50 23 22,3 64 64
00:08:00 22 22,3 64 64
00:08:10 22 22,3 64 64
00:08:20 22 22,3 64 64
00:08:30 22 22,3 64 64
00:08:40 22 22,3 64 64
00:08:50 22 22,3 64 64
00:09:00 22 22,3 64 64
00:09:10 22 22,3 64 64
00:09:20 22 22,2 64 64
00:09:30 22 22,2 64 64
00:09:40 22 22,2 64 64
00:09:50 22 22,2 64 64
00:10:00 22 22,2 64 64
00:10:10 22 22,2 64 64
00:10:20 22 22,1 64 64
00:10:30 22 22,1 64 64
00:10:40 22 22,1 64 64
00:10:50 22 22,1 64 64
00:11:00 22 22,1 64 64
00:11:10 22 22,1 64 64
00:11:20 22 22,1 64 64
00:11:30 22 22,1 64 64
00:11:40 22 22,1 64 64
00:11:50 22 22,1 64 64
00:12:00 22 22,1 64 64
00:12:10 22 22,1 64 64
00:12:20 22 22,1 64 64
00:12:30 22 22,1 64 64
00:12:40 22 22,1 64 64
00:12:50 22 22,1 64 64
00:13:00 22 22,1 64 64
00:13:10 22 22,1 64 64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Lanjutan dari data tabel 4.2 Pengujian Proses Keseluruhan
Waktu SD TD PWM Teori
00:13:20 22 22 64 64
00:13:30 22 22 64 64
00:13:40 22 22 64 64
00:13:50 22 22 64 64
00:14:00 22 22 64 64
00:14:10 22 22 64 64
00:14:20 22 22 64 64
00:14:30 22 22 64 64
00:14:40 22 22 64 64
00:14:50 22 22 64 64
00:15:00 22 22 64 64
00:15:10 22 22 64 64
00:15:20 22 22 64 64
00:15:30 22 22 64 64
00:15:40 22 22 64 64
00:15:50 22 22 64 64
00:16:00 22 22 64 64
00:16:10 22 22 64 64
00:16:20 22 22 64 64
00:16:30 22 22 64 64
00:16:40 22 22 64 64
00:16:50 22 22 64 64
00:17:00 22 22 64 64
00:17:10 22 22 64 64
00:17:20 22 22 64 64
00:17:30 22 22 64 64
00:17:40 22 22 64 64
00:17:50 22 22 64 64
00:18:00 22 22 64 64
00:18:10 22 22 64 64
00:18:20 22 22 64 64
00:18:30 22 22 64 64
00:18:40 22 22 64 64
00:18:50 22 22 64 64
00:19:00 22 21,9 64 64
00:19:10 22 21,9 64 64
00:19:20 22 21,9 64 64
00:19:30 22 21,9 64 64
00:19:40 22 21,9 64 64
00:19:50 22 21,9 64 64
00:20:00 22 21,9 64 64
00:20:10 22 21,9 64 64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
Lanjutan dari data tabel 4.2 Pengujian Proses Keseluruhan
Waktu SD TD PWM Teori
00:20:20 22 21,9 64 64
00:20:30 22 21,9 64 64
00:20:40 21 21,9 64 64
Pada pengujian alat dengan sistem keseluruhan ini, menunjukkan bahwa nilai PWM
atau output yang dikehendaki untuk dikendalikan tercapai. Pada data yang tertera di atas,
kita dapat melihat bahwa suhu ruangan yang awalnya berada pada suhu 280C dapat
dikendalikan sesuai dengan masukan set point. Pengambilan data di atas dilakukan pada
pagi hari sekitar jam 8 pagi dengan durasi 21 menit. Dalam data ini dapat dilihat perubahan
pada setiap variabel error dan delta error mempengaruhi nilai pada PWM yang dikehendaki.
Dari data percabaan ini, kita juga dapat menyimpulkan bahwa alat sudah bekerja dengan
baik, dapat dilihat dari perbandingan data matematis teori pada metode sugeno tidak
memiliki perbedaan atau dalam artian masih memiliki nilai yang sama.
Pada percobaan ini, nilai dari set point adalah 21 sebagai target suhu yang ingin di
capai. Dengan suhu ruangan dan lingkungan yang terukur sebesar 280C.Target pencapaian
suhu dalam percobaan ini tercapai dan dapat dikatakan memiliki nilai keluaran yang baik
dan alat bekerja sesuai dengan target.
Dalam percobaan kinerja alat ini, juga dilakukan pengambilan data dengan 6 varian
yang berbeda. Perbedaan ini terletak pada set point, untuk melihat data hasil pengujiannya
dan perbedaannya dapat di lihat pada tabel berikut 4.3 berikut ini.
Tabel 4.3 Varian Data Percobaan
Pada tabel varian data di atas, terdapat tabel waktu untuk menunjukkan durasi yang
diperlukan alat mencapai target dari set point. Kolom Suhu Dalam menunjukkan suhu dalam
ruangan yang terukur meelalui sensor LM35. Kolom set point adalah nilai suhu ruangan
yang ditargetkan. Kolom TD adalah kolom pembanding nilai suhu yang terukur pada awal
pengukuran sebelum program dijalankan. Kolom HSD (hasil suhu dalam) adalah kolom
yang menunjukan hasil dari manipulasi nilai suhu dalam kurun waktu dan set point yang
No Waktu Suhu
Dalam
Set
Point TD HSD HTD
1 75 menit 27 20 27,1 20 20,9
2 21 menit 28 21 27 21 21,9
3 18 menit 30 22 27 22 22,9
4 10 menit 30 23 27 23 23,3
5 7 menit 30 24 26,7 24 24,2
6 5 menit 30 25 26,6 25 25,6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
telah diatur. Kolom HTD (hasil termodigital) adalah hasil pengukuran termodigital setelah
proses diilakukan, data ini digunakan untuk membandingkan nilai suhu yang sudah dicapai.
Dari data pada tabel 4.7 di atas, kita melihat bahwa perubahan dari set point
mempengaruhi waktu yang dibutuhkan alat untuk bekerja, semakin besar nilai set point
semakin cepat waktu yang dibutuhkan alat untuk mencapai target suhu dan semakin kecil
nilai set point maka semakin lama pula waktu yang dibutuhkan alat untuk mencapai target.
Dari hasil perbandigan nilai pembacaan sensor LM35 sebagai sensor suhu dan termodigital
yang digunakan sebagai nilai pembanding memiliki nilai yang sama dalam artian alat yang
digunakan bekerja dengan baik unutk memanipulasi nilai suhu ruangan. Untuk grafik
perbandingan nilai suhu ruangan dengan waktu dapat dilihat pada gambar 4.5 berikut.
(a)
(b)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
(c)
(d)
(e)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
(f)
Gambar 4.5 (a),(b),(c),(d),(e) dan (f) Grafik penurunan suhu dalam ruangan yang
sedang dikendalikan.
Untuk set point yang dirubah ditengan tengah proses eksekusi data, dapat di lihat
pada gambar 5.6 berikut.
Gambar 4.6. Gambar perubahan nilai set point di tengah-tengah eksekusi program
Pada gambar 4.5 dan gambar 4.6 di atas, dapat kita lihat keterkaitan antara lamanya
waktu eksekusi, besar kecilnya nilai set point yang sedang di inginkan dengan proses
penurunnya suhu ruangan yang dikendalikan.
4.2.2. Pengujian Sistem Fuzzy
Tujuan pengujian ini adalah untuk mengetahui apakah keluaran fuzzy merupakan hasil
dari rule base evaluation dan proses dari defuzzyfikasi sudah sesuai dengan yang diharapkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
pada program. Hasil keluarnya fuzzy diperoleh dari proses penjumlahan keseluruhan nilai
sistem. Metode fuzifikasi yang digunakan adalah sugeno. Untuk hasil dari fuzzy dapat
melihat table 4.4 berikut ini.
Table 4.4. Data Hasil Pengujian Sistem Fuzzy
No Error Delta Error Output Teori
1 0 0 64 64
2 20 7 64 64
3 23 8 64 64
4 24 9 64 64
5 25 10 79 80
6 27 11 125 125,72
7 30 12 160 160
8 31 13 173 172,8
9 32 14 192 198
10 33 15 199 199,87
Hasil pengujian pada sistem fuzzy di atas menunjukkan bahwa program sistem fuzzy
yang diprogram dapat bekerja dengan baik, dari data pengujian yang dilakukan juga dapat
dilihat bahwa data keluaran dari prototipe sama dengan nilai dari perhitungan teori. Pada
pengujian ini dilakukan dengan memasukan nilai error dan delta error yang tertera pada
tabel di atas pada program dan melihat keluarannya PWMnya dari tampilan LCD.
4.2.3. Pengujian Sensor Suhu LM35
LM35 berfungsi untuk membaca suhu yang nantinya keluaran dari LM35 ini
digunakan sebagai inputan pada system dan perangkat lainnya. Dalam sistem ini LM35
berjumlah dua sensor dengan fungsi inputan kerja yang berbeda. Sensor satu dengan kode
pada LCD SD berfungsi untuk membaca suhu di dalam box dan menjadi masukan untuk
sistem fuzzy sedangkan sensor dua dengan kode pada LCD SL digunakan untuk membaca
suhu lingkungan yang merupakan masukan untuk menyalakan thermoelektrik. Gambar 4.7
akan menunjukkan tampilan dari sub sistem LM35.
Gambar 4.7 di bawah menunjukkan bahwa keakuratan dari hasil pembacaan sensor
suhu LM35 ini bisa dikatakan akurat karena LM35 bekerja dengan baik dan mampu
mengukur suhu ruangan dan suhu luar ruangan dengan baik. Hasil dari pembacaan
pembacaan suhu LM35 ini juga dibandingkan dengan termo digital yang dipasarkan di
pacaran. Dalam gambar 4.7 dapat dilihat perbandingan antara suhu yang terbaca oleh LM35
dan termodigital. Untuk hasil pembacaan dan perbandingan sensor LM35 dapat kita lihat
pada Tabel 4.9 di bawah ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
Gambar 4.7. Hasil pembacaan LM35 yang tertampil pada LCD
Gambar diatas menunjukkan bahwa keakuratan dari hasil pembacaan sensor suhu LM35 ini
bisa dikatakan bekerja dengan baik. Dapat kita lihat pada Tabel 45 di bawah ini.
Table 4.5. Hasil Pengukuran Keakuratan LM35 dengan thermodigital
No LM35 (SD) LM35(SL) Termodigital
1 32 32 31.3
2 30 30 30
3 29/30 30 29.6
4 29 29 29
5 28/29 29 28.8
6 28/29 29/28 28.4
7 28 28 28
8 28 28 27.6
Berdasarkan hasil pengujian di atas, menunjukkan bahwa data hasil dari pembacaan
sensor suhu LM35 sudah mendekati nilai dari pengukuran suhu ruangan berbasis digital.
Pada termodigital menunjukan 28.8 dan pada sensor satu membaca dengan angka tampilan
28 dan 29 yang terus bergantian sedangkan pada sensor dua membaca dengan hasil
membulatkan. Dari kedua hasil sensor tersebut berada pada kategori baik. Pada inputan suhu
ini juga menggunakkan ADC 8 bit. Sensor ini memiliki keluaran dalam bentuk tegangan
dengan skala 10mV/C.
4.3. Pembahasan Program
Pemrograman yang digunakan dalam menyusun keseluruhan alat ini adalah bahasa C
Codevision AVR. Mikrokontroler ATMega8535 sebagai pengendali dari sistem fuzzy ini.
Kode pemrograman pada AVR yang telah dirancang untuk menampilkan fungsi interupsi
dan fungsi utama. Fungsi interupsi dapat dilihat pada gambar 4.8 berikut ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
Kode program pada Gambar 4.8 di bawah terdapat fungsi proses untuk interupsi nilai
set point pada proses data yang sedang berlanjut dengan pembatasan nilai.
Gambar 4.8. kode Program Bahasa C untuk Fungsi Interupsi
Fungsi interupsi ini menampilkan nilai awal yang telah di set sebelumnya yaitu 20,
selanjutnya ketika program sedang berjalan dan ingin merubah nilai dari set point maka
perubahan yang dapat dimasukan setiap interupsi terjadi +/- 1 kali. Proses untuk ini memiliki
delay 200ms untuk menambah nilai sedangkan untuk mengurangi nilai tidak memiliki delay.
Fungsi utama adalah fungsi yang mengontrol secara keseluruhan proses dari eksekusi
data termasuk sistem fuzzy di dalamnya. Fungsi utama ini memiliki keluaran untuk mengatur
keluaran pada putaran kipas DC. Kode program dalam bahasa C untuk fungsi utama dapat
dilihat pada gambar 4.9 yang dipecah dalam beberapa gambar berikut ini.
(a)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
(b)
(c)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
(d)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
(e)
Gambar 4.9. (a),(b) , (c),(d) dan (e) Kode program utama untuk mengatur kecepatan kipas
DC
Berdasakan cuplikan kode program pada gambar 4.9 di atas, dapat dilihat bahwa pada
gambar (a), berisi kode program untuk membacaan nilai dari masukan sensor, dan pemberian
nilai dari error dan delta error. Pada gambar (b), berisi tentang perhitungan untuk nilai
derajat keanggotaan dari variabel error dan pengolompokan pada klaster error. Gambar (c),
berisi tentang perhitungan untuk nilai derajat keanggotaan dari variabel delta error dan
pengolompokan pada klaster delta error. Gambar (d) berisi tentang base ruller yang
digunakan pada sistem. Gambar (e), berisi tentang program aturan yang digunakan,
penegasan pada nilai fuzzy dan output pwm yang merupakan keluran dari program secara
keseluruhan. Untuk program tampilan dapat dilihat pada gambar 4.10 di bawah ini.
Pada Gambar 4.10 di bawah, dapat dilihat bahwa hasil dari fuzzy data langsung
ditampilkan dengan kode OCR1A. Pada gambar 4.10 juga kita melihat bahwa yang
ditampilkan dalam LCD adalah hasil pembacaan pada suhu dalam ruangan dengan kode
tampil “SD”, suhu luar ruangan dengan kode tampil “SL”, nilai set point dengan kode tampil
“SP” dan OCR1A dengan kode tampil “P”.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
Gambar 4.10. program penampil pada LCD
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Berdasarkan hasil pengujian dan pembahasan dari Prototipe Pengendali Suhu
Berdasarkan Suhu Lingkkungan menggunakan mikrokontroler ATMega8535, dapat diambil
kesimpulan sebagai berikut:
1. Alat yang dibuat sesuai dengan harapan, dari percobaan keseluruhan target dalam
perancancangan tercapai.
2. Sitem program fuzzy yang sudah dikodekan dalam program bekerja sesuai dengan yang
ditargetkan yakni mampu mendinginkan ruangan dengan set point 200C - 250C.
3. Target untuk memanipulasi nilai suhu bisa dilakukan dari skala set point 200C - 250C
dalam kurun waktu 9 menit sd 1 jam.
5.2. Saran
Penelitian ini masih jauh dari kata sempurna. Oleh karena itu, saran untuk
pengembangan penelitian selanjutnya antara lain:
1. Sebaiknya pada sistem fuzzy menggunakan metode mamdani agar nilai yang ingin
dikendalikan lebih baik lagi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
DAFTAR PUSTAKA
[1] Iswanto,2008, “Design dan Implementasi Sistem Embedded Mikrokontroller
ATMega8535 dengan Bahasa Basic”, Yogyakarta, Gava Media.
[2] Indriani, A., Johan, Witanto, Y., Hendra, “Pemanfaatan Sensor Suhu LM 35
Berbasis Microcontroller ATmega 8535 pada Sistem Pengontrolan Temperatur Air
Laut Skala Kecil”, Jurnal Rekayasa Mesin, Vol. 5, No.2, Tahun 2014: 183-192.
[3] ----,2000, Datasheet LM35, National Semiconduktor.
[4] Yatmiko. T, 2008, Air Conditioning Model With Fuzzy Logic Controler, Tugas
Akhir, Jurusan Teknik Elektro, FST, Universitas Sanata Dharma, Yogyakarta.
[5] ----,2010, Datasheet 2N4401, On Semiconductor.
[6] Gadaffi. M, 2016, Analisis Perbandingan Metode Tsukamoto dan Mamdani dalam
Optimasi Produksi Barang, Skripsi, Jurusan Matematika, FST, Universitas Islam
Negeri maulana Malik Ibrahim, Malang.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
Lampiran 1. Rangkaian perancangan alat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
Lampiran 2. Hasil Perhitungan Logika fuzzy secara matematis
1. Error[0] dan Delta Error[0]
1. Himpunan Fuzzy
a. Error
- Sangat Dingin = 100
b. Delta error
- Sangat DinginCoe = 100-(0x20)= 100
- DinginCoe = (0x20)= 0
2. Implikasi
a. IF error Sangat Dingin AND delta error Sangat Dingin THEN kecepatan
PWM Dianggap Mati.
- µerror Sangat Dingin[0] ∩ µ delta error Sangat Dingin[0]
- min(100;100)
- 100
b. IF error Sangat Dingin AND delta error Dingin THEN kecepatan PWM
Dianggap Mati.
- µerror Sangat Dingin[0] ∩ µ delta error Dingin[0]
- min(100;0)
- 0
3. Komposisi antar aturan
Output PWM
Gambar daerah hasil komposisi
4. Penegasan
𝑍 =(100𝑥64) + (0𝑥64)
100 + 0= 64
Output PWM yang diihasilakan sebesar 64.
2. Error[20] dan Delta Error[7]
1. Himpunan fuzzy
a. Error
- Sangat dingin = 300 − (20𝑥25
2) = 50
- Dingin = (20𝑥25
2) − 200 = 50
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
b. Delta error
- DinginCoe = 200 − (7𝑥20) = 60
- HangatCoe = (7𝑥20) − 100 = 40
2. Implikasi
a. IF error Sangat Dingin AND delta error Dingin THEN kecepatan PWM
Dianggap Mati.
- µerror Sangat Dingin[20] ∩ µ delta error Dingin[7]
- min(50;60)
- 50
b. IF error Sangat Dingin AND delta error Hangat THEN kecepatan PWM
Pelan.
- µerror Sangat Dingin[20] ∩ µ delta error Hangat[7]
- min(50;40)
- 40
c. IF error Dingin AND delta error Dingin THEN kecepatan PWM Dianggap
Mati.
- µerror Dingin[20] ∩ µ delta error Dingin[7]
- min(50;60)
- 50
d. IF error Dingin AND delta error Hangat THEN kecepatan PWM Dianggap
Mati.
- µerror Dingin[20] ∩ µ delta error Hangat[7]
- min(50;40)
- 40
3. Komposisi antar aturan
Output PWM
4. Penegasan
𝑍 =(50𝑥64) + (40𝑥64) + (50𝑥64) + (40𝑥64)
50 + 40 + 50 + 40= 64
Output pwm yang dihasilkan sebesar 64.
3. Error[23] dan Delta Error[8]
1. Himpunan fuzzy
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
a. Error
- Sangat dingin = 300 − (23𝑥25
2) = 12,5
- Dingin = (23𝑥25
2) − 200=87,55
b. Delta error
- DinginCoe = 200 − (8𝑥20) = 40
- HangatCoe (8𝑥20) − 60
2. Implikasi
a. IF error Sangat Dingin AND delta error Dingin THEN kecepatan PWM
Dianggap Mati.
- µerror Sangat Dingin[20] ∩ µ delta error Dingin[7]
- min(12,5;40)
- 12,5
b. IF error Sangat Dingin AND delta error Hangat THEN kecepatan PWM
Pelan.
- µerror Sangat Dingin[20] ∩ µ delta error Hangat[7]
- min(12,5;60)
- 12,5
c. IF error Dingin AND delta error Dingin THEN kecepatan PWM Dianggap
Mati.
- µerror Dingin[20] ∩ µ delta error Dingin[7]
- min(87,5;40)
- 40
d. IF error Dingin AND delta error Hangat THEN kecepatan PWM Dianggap
Mati.
- µerror Dingin[20] ∩ µ delta error Hangat[7]
- min(87,5;60)
- 60
3. Komposisi antar aturan
4. Penegasan
𝑍𝑂 =(12,5𝑥64) + (40𝑥64) + (12,5𝑥60) + (60 + 64)
25,16 + 25,16= 64
Output PWM yang dihasilkan sebesar 64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
Lampiran 3. Listing Program
#include <mega8535.h>
#include <delay.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
// Alphanumeric LCD Module functions
#include <alcd.h>
#asm
.equ __lcd_port=0x15; PORTC
#endasm
;
unsigned char sdgn,dgn,hgt,pns,adc,jml_nilteng,jml_nil,suhu,sensor_luar,coa,set_point;
unsigned char sdgnCoe,dgnCoe,hgtCoe,pnsCoe;
int ptr0,ptr1,ptr2,ptr3,ptr4,ptr5,ptr6,ptr7,ptr8,ptr9,ptr10,ptr11,ptr12,ptr13,ptr14,ptr15;
int
nilteng0,nilteng1,nilteng2,nilteng3,nilteng4,nilteng5,nilteng6,nilteng7,nilteng8,nilteng9,nilteng10,nilteng11,n
ilteng12,nilteng13,nilteng14,nilteng15;
int tmp,Coe,deff,i,t;
float ptr[15];
float nilteng[15];
int nilai_atas,nilai_bawah;
/*unsigned char bufzoError[4];
unsigned char bufpbError[4];
unsigned char adc,sensor_luar,sensor_ruang,suhu;
char pwm,h_eps,h_epb,max1,max2;
char sensor,error,d_error,last_error,min_in_1,max_in_1,min_in_2,max_in_2,min_out,max_out;
char selisih_in_1,selisih_in_2,selisih_pwm;
char eps,epb,d_eps,d_epb,bx,by,bz,pred1,pred2,pred3,pred4,oot,ood,z1,z2,z3,z4,ztot;*/
unsigned char set_point=20;
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
// Place your code here
set_point +=1;
delay_ms(200);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
// External Interrupt 1 service routine
interrupt [EXT_INT1] void ext_int1_isr(void)
// Place your code here
if (set_point>20)
set_point -=1;
// External Interrupt 2 service routine
interrupt [EXT_INT2] void ext_int2_isr(void)
// Place your code here
#define ADC_VREF_TYPE 0xE0
// Read the 8 most significant bits
// of the AD conversion result
unsigned char read_adc(unsigned char adc_input)
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCH;
// Declare your global variables here
char puf[33];
void main(void)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=Out Func4=Out Func3=In Func2=In Func1=In Func0=Out
// State7=T State6=T State5=0 State4=0 State3=T State2=T State1=T State0=0
PORTD=0x00;
DDRD=0x31;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 46,875 kHz
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
// Mode: Fast PWM top=0x00FF
// OC1A output: Non-Inv.
// OC1B output: Non-Inv.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0xA1;
TCCR1B=0x0C;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x7F;
OCR1BH=0x00;
OCR1BL=0x3F;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: On
// INT0 Mode: Falling Edge
// INT1: On
// INT1 Mode: Falling Edge
// INT2: On
// INT2 Mode: Falling Edge
GICR|=0xE0;
MCUCR=0x0A;
MCUCSR=0x00;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
GIFR=0xE0;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// USART initialization
// USART disabled
UCSRB=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 750,000 kHz
// ADC Voltage Reference: Int., cap. on AREF
// ADC High Speed Mode: Off
// ADC Auto Trigger Source: ADC Stopped
// Only the 8 most significant bits of
// the AD conversion result are used
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x84;
SFIOR&=0xEF;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
// Alphanumeric LCD initialization
// Connections specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTC Bit 0
// RD - PORTC Bit 1
// EN - PORTC Bit 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
// D4 - PORTC Bit 4
// D5 - PORTC Bit 5
// D6 - PORTC Bit 6
// D7 - PORTC Bit 7
// Characters/line: 16
lcd_init(16);
// Global enable interrupts
#asm("sei")
while (1)
adc=read_adc(0);
suhu=read_adc(1);
sensor_luar=suhu;
if (set_point<=tmp)
PORTD.0=1;
else if (set_point>tmp)
PORTD.0=0;
tmp=adc;
Coe=adc-15;
//fuzzyfikasi error
if(tmp<=16) //tmp=temperatur terukur
sdgn=100; //sdgn=sangat dingin
dgn=0; //dgn=gingin
hgt=0; //hgt=hangat
pns=0; //pns=panas
else if(tmp>16 && tmp<=24)
sdgn=300-((float)(tmp*25)/2);
dgn=((float)(tmp*25)/2)-200;
hgt=0;
pns=0;
else if(tmp>24 && tmp<=32)
sdgn=0;
dgn=400-((float)(tmp*25)/2);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
hgt=((float)(tmp*25)/2)-300;
pns=0;
else if(tmp>32 && tmp<=40)
sdgn=0;
dgn=0;
hgt=500-((float)(tmp*25)/2);
pns=((float)(tmp*25)/2)-400;
else
sdgn=0;
dgn=0;
hgt=0;
pns=100;
// Place your code here
//fuzzyfikasi Coerror
if(Coe<=5) //sigm=jumlah orang
sdgnCoe=100-(Coe*20); //sdk=sedikit
dgnCoe=(Coe*20); //sdg=sedang
hgtCoe=0; //byk=banyak
pnsCoe=0; //fll=full
else if(Coe>5 && Coe<=10)
sdgnCoe=0;
dgnCoe=200-(Coe*20);
hgtCoe=(Coe*20)-100;
pnsCoe=0;
else if(Coe>10 && Coe<=15)
sdgnCoe=0;
dgnCoe=0;
hgtCoe=300-(Coe*20);
pnsCoe=(Coe*20)-200;
else
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
sdgnCoe=0;
dgnCoe=0;
hgtCoe=0;
pnsCoe=100;
// base ruller
if(sdgnCoe<sdgn)
ptr0=sdgnCoe;nilteng0=64;
else
ptr0=sdgn;nilteng0=64;
if(sdgnCoe<dgn)
ptr1=sdgnCoe;nilteng1=64;
else
ptr1=dgn;nilteng1=64;
if(sdgnCoe<hgt)
ptr2=sdgnCoe;nilteng2=128;
else
ptr2=hgt;nilteng2=128;
if(sdgnCoe<pns)
ptr3=sdgnCoe;nilteng3=192;
else
ptr3=pns;nilteng3=192;
if(dgnCoe<sdgn)
ptr4=dgnCoe;nilteng4=64;
else
ptr4=sdgn;nilteng4=64;
if(dgnCoe<dgn)
ptr5=dgnCoe;nilteng5=64;
else
ptr5=dgn;nilteng5=64;
if(dgnCoe<hgt)
ptr6=dgnCoe;nilteng6=128;
else
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
ptr6=hgt;nilteng6=128;
if(dgnCoe<pns)
ptr7=dgnCoe;nilteng7=255;
else
ptr7=pns;nilteng7=255;
if(hgtCoe<sdgn)
ptr8=hgtCoe;nilteng8=64;
else
ptr8=sdgn;nilteng8=64;
if(hgtCoe<dgn)
ptr9=hgtCoe;nilteng9=64;
else
ptr9=dgn;nilteng9=64;
if(hgtCoe<hgt)
ptr10=hgtCoe;nilteng10=192;
else
ptr10=hgt;nilteng10=192;
if(hgtCoe<pns)
ptr11=hgtCoe;nilteng11=255;
else
ptr11=pns;nilteng11=255;
if(pnsCoe<sdgn)
ptr12=pnsCoe;nilteng12=64;
else
ptr12=sdgn;nilteng12=64;
if(pnsCoe<dgn)
ptr13=pnsCoe;nilteng13=128;
else
ptr13=dgn;nilteng13=128;
if(pnsCoe<hgt)
ptr14=pnsCoe;nilteng14=192;
else
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
ptr14=hgt;nilteng14=192;
if(pnsCoe<pns)
ptr15=pnsCoe;nilteng15=255;
else
ptr15=pns;nilteng15=255;
nilai_bawah=ptr0+ptr1+ptr2+ptr3+ptr4+ptr5+ptr6+ptr7+ptr8+ptr9+ptr10+ptr11+ptr12+ptr13+ptr14+ptr15;
nilai_atas=(ptr0*nilteng0)+(ptr1*nilteng1)+(ptr2*nilteng2)+(ptr3*nilteng3)+(ptr4*nilteng4)+(ptr5*nilteng5)
+(ptr6*nilteng6)+(ptr7*nilteng7)+(ptr8*nilteng8)
+(ptr9*nilteng9)+(ptr10*nilteng10)+(ptr11*nilteng11)+(ptr12*nilteng12)+(ptr13*nilteng13)+(ptr14*nilteng1
4)+(ptr15*nilteng15);
coa=(nilai_atas/nilai_bawah);
OCR1A=coa;
lcd_gotoxy(0,0);
sprintf(puf,"SD:%d",adc);
lcd_puts(puf);
lcd_gotoxy(015,0);
sprintf(puf,":%d",Coe);
lcd_puts(puf);
lcd_gotoxy(8,0);
sprintf(puf,"SL:%d",suhu);
lcd_puts(puf);
lcd_gotoxy(0,1);
sprintf(puf,"SP:%d",set_point);
lcd_puts(puf);
lcd_gotoxy(10,1);
sprintf(puf,"P:%d",OCR1A);
lcd_puts(puf);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
top related