Anda di halaman 1dari 31

Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno

Tugas Besar Sebagai salah satu syarat untuk menyelesaikan Mata Kuliah Mikroprosesor dan Antarmuka Jurusan Teknik Elektro Fakultas Teknik Universitas Andalas Oleh : Fadilla Zennifa (0910951006)

Pembimbing : Ir. Darwison, MT

JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS ANDALAS PADANG 2012

Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno
ABSTRAK Penulisan proposal alat ini bertujuan untuk memenuhi syarat mata kuliah Mikroposesor dan Antarmuka, Dalam makalah ini akan dibahas mengenai Pengontrol suhu ruangan yang bertujuan untuk untuk mengukur suhu serta menyesuaikan suhu terukur tersebut berdasarkan input dari keypad dan digunakan sensor LM35DZ lalu diproses dengaan mikrokontroler arduino uno lalu menampilkan display keluaran dengan menggunakan LCD (Liquid Crystal Display) serta Fan. Dalam suatu penelitian, seringkali digunakan pengendali mikro single-board yang tidak berbasis opensource sehingga sangat sulit untuk membuatnya. Sehingga untuk mengatasi kekurangan tersebut maka untuk pembuatan alat ini selanjutnya menggunakan sensor suhu dengan kode LM35 dengan tipe LM35DZ, yang memiliki kelebihan dan kemudahan yaitu range suhu terukurnya cukup lebar, memiliki akurasi yang cukup tinggi, biaya ekonomis dan juga menggunakan Arduino yang merupakan pengendali mikro single-board

yang bersifat open-source dan LCD sebagai display serta keypad sebagai salah satu factor yang membuat suhu dapat dikendalikan. Jadi dari percobaan yang telah dilakukan oleh peneliti sebelumnya hanya mengirimkan data hasil pembacaan sensor suhu ke serial port, maka percobaan selanjutnya ini besarnya suhu yang terbaca akan di tampilkan pada LCD lalu output juga akan diperlihatkan dari perputaran fan yang dihubungkan ke sistem. Kata kunci : sensor suhu, pengukuran suhu, mikrokontroler arduino, mikro single-board, opensource,LCD.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -2

BAB I PENDAHULUAN 1.1 Latar Belakang Pada era modern ini, perkembangan teknologi elektronika berkembang dengan pesat. Salah satu komponen elektronika yang berkembang pesat tersebut adalah sensor dan pengendali mikro single-board. Meskipun terdapat beraneka ragam sensor, kebanyakan sensor terutama sensor suhu memiliki rentang terukur yang sempit serta akurasi yang rendah namun memiliki biaya yang tinggi. Disamping itu, terdapat banyak pengendali mikro single-board yang tidak berbasis opensource sehingga sangat sulit untuk membuatnya. Oleh karena itu, dalam penelitian pembuatan alat ini penulis

menggunakan sensor suhu dengan kode LM35 dengan tipe LM35DZ, dimana range suhu yang terukurnya cukup lebar dan memiliki akurasi yang cukup tinggi serta tergolong ekonomis. Serta penulis juga menggunakan Arduino yang merupakan pengendali mikro single-board yang bersifat open-source dan LCD sebagai display. Dalam penelitian ini penulis membuat sebuah alat pengontrol suhu ruangan dengan menggunakan mikrokontroler arduino uno dan menampilkannya dengan menggunakan LCD. Berdasarkan latar belakang tersebut, maka dibuatlah Tugas Besar ini dengan judul Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno.

1.2 Rumusan Masalah 1. Bagaimana cara mengontrol temperatur ruangan dengan menggunakan mikrokontroler arduino uno? 2. Bagaimana cara menampilkan hasil suhu yang terbaca dengan

menggunakan LCD? 3. Bagaimana cara mengatur perputaran fan agar dapat hidup atau mati?

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -3

1.3 Batasan Masalah Adapun batasan masalah pada penelitian ini, yaitu: 1. Sistem menggunakan mikrokontroller Arduino uno 2. Sistem ditampilkan display LCD 16x2 3. Sistem menggunakan sensor LM35 4. Keypad memberikan input kepada sistem 5. Sistem hanya berfungsi untuk menghidupkan dan mematikan fan, tanpa mengatur kecepatan dari fan

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -4

BAB II TINJAUAN PUSTAKA Pada bab ini, akan dibicarakan mengenai komponen-komponen pada Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno serta cara kerja dari setiap alat-alat yang digunakan. 2.1 Arduino Uno

Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri.

Gambar 2.1 [Mikrokontroler Arduino Uno] Arduino Uno adalah piranti mikrokontroler menggunakan ATmega328 , merupakan penerus Arduino Duemilanove. Arduino

Uno memiliki 14 Pin input/output digital(dimana 6 pin dapat digunakan

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -5

sebagai output PWM), 6 input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset.

Gambar 2.2 [system minimum Arduino Uno]

2.2 Sensor Suhu LM35DZ LM35 adalah sensor suhu dari National Semiconductor yang mempunyai akurasi tinggi. Outputnya berupa tegangan analog dan memiliki jangkauan pengukuran -55C hingga +150C dengan akurasi 0.5C. Tegangan output adalah 10mV/C. Output dapat langsung dihubungkan port mikrokontroler yang memiliki ADC atau dengan Arduino, karena Arduino memiliki port ADC (analog input) sebanyak 6 buah.

Gambar 2.3 [LM 35 DZ]

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -6

Analog input pada Arduino memiliki resolusi 10-bit, yang dapat memberikan keluaran 2^10 = 1024 nilai diskrit. Bila digunakan catu 5V, resolusi yang dihasilkan adalah 5000mV/1024 = 4.8mV. Karena LM35 memiliki resolusi output 10mV/C, m

2.3 Potensiometer

Gambar 2.4 [Potensiometer]

Sebuah potensiometer biasanya dibuat dari sebuah unsur resistif semilingkar dengan sambungan geser (penyapu). Unsur resistif, dengan terminal pada salah satu ataupun kedua ujungnya, berbentuk datar atau menyudut, dan biasanya dibuat dari grafit, walaupun begitu bahan lain mungkin juga digunakan sebagai gantinya. Penyapu disambungkan ke terminal lain. Pada potensiometer panel, terminal penyapu biasanya terletak di tengah-tengah kedua terminal unsur resistif. Untuk potensiometer putaran tunggal, penyapu biasanya bergerak kurang dari satu putaran penuh sepanjang kontak. Potensiometer "putaran ganda" juga ada, elemen resistifnya mungkin berupa pilinan dan penyapu mungkin bergerak 10, 20, atau lebih banyak putaran untuk menyelesaikan siklus. Walaupun begitu,

potensiometer putaran ganda murah biasanya dibuat dari unsur resistif konvensional yang sama dengan resistor putaran tunggal, sedangkan penyapu digerakkan melalui gir cacing. Disamping grafit, bahan yang digunakan untuk membuat unsur resistif adalah kawat resistansi, plastik partikel karbon dan campuran keramik-logam yang disebut cermet. Pada potensiometer geser linier, sebuah kendali geser digunakan sebagai ganti kendali putar. Unsur resistifnya
Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -7

adalah sebuah jalur persegi, bukan jalur semi-lingkar seperti pada potensiometer putar. Potensiometer jenis ini sering digunakan pada peranti penyetel grafik, seperti ekualizer grafik. Karena terdapat bukaan yang cukup besar untuk penyapu dan kenob, potensiometer ini memiliki reliabilitas yang lebih rendah jika digunakan pada lingkungan yang buruk. Potensiometer tersedia dengan relasi linier ataupun logaritmik antara posisi penyapu dan resistansi yang dihasilkan (hukum potensiometer atau "taper"). Pembuat potensiometer jalur konduktif menggunakan pasta resistor polimer konduktif yang mengandung resin dan polimer, pelarut, pelumas dan karbon. Jalur dibuat dengan melakukan cetak permukaan papua pada substrat fenolik dan memanggangnya pada oven. Proses pemanggangan menghilangkan seluruh pelarut dan memungkinkan pasta untuk menjadi polimer padat. Proses ini menghasilkan jalur tahan lama dengan resistansi yang stabil sepanjang operasi. Potensiometer pada dasarnya digunakan untuk mengukur tegangan yang tidak diketahui dengan cara membandingkannya terhadap tegangan yang diketahui, dimana tegangan yang diketahui disuplai dari sebuah sel standar atau sumber tegangan referensi yang diketahui. Disamping itu, potensiometer juga dapat digunakan untuk : menentukan arus, dengan hanya mengukur penurunan tegangan yang dihasilkan arus tersebut melalui sebuah tahanan yang diketahui. mengkalibrasi voltmeter dan ampermeter, dan melengkapi cara standar untuk mengkalibrasi instrumen-instrumen tersebut. Pengukuran yang didasarkan pada cara perbandingan akan menghasilkan tingkat ketelitian yang sangat tinggi, karena hasil yang diperoleh hanya bergantung pada ketelitian tegangan standar yang diketahui, dan bukan bergantung pada defleksi aktual dari jarum penunjuk sebagaimana pada instrumen kumparan putar. Prinsip dasar sebuah potensiometer adalah memanfaatkan keadaan setimbang atau kondisi nol, maka jika kondisi setimbang dicapai, tidak ada daya yang diserap dari rangkaian yang mengandung gaya gerak listrik ( ggl ) yang tidak diketahui, dan sebagai akibatnya, penentuan tegangan tidak bergantung pada tahanan sumber.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -8

2.4 Kabel USB tipe A-B Bus Beruntut Semesta (USB) (bahasa Inggris: Universal Serial Bus) adalah standar bus serial untuk perangkat penghubung, biasanya kepada komputer namun juga digunakan di peralatan lainnya seperti konsol permainan, ponsel dan PDA. Sistem USB mempunyai desain yang asimetris, yang terdiri dari pengontrol host dan beberapa peralatan terhubung yang berbentuk pohon dengan menggunakan peralatan hub yang khusus.

Gambar 2.5 [Kabel USB A-B] Desain USB ditujukan untuk menghilangkan perlunya penambahan expansion card ke ISAkomputer atau bus PCI, dan memperbaiki kemampuan plug-and-play (pasang-dan-mainkan) dengan memperbolehkan peralatan-peralatan ditukar atau ditambah ke sistem tanpa perlu merebootkomputer. Ketika USB dipasang, ia langsung dikenal sistem komputer dan memroses device driver yang diperlukan untuk menjalankannya. Pada Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno, kabel USB diunakan sebagai port penghubung ke Komputer yang nantinya akan berfungsi sebagai catu daya. 2.5 FAN

Gambar 2.6 [fan/kipas] Fan atau kipas merupakan alat pendingin, pada penelitian ini, fan merupakan salah satu pembentuk faktor suhu yang diinginkan. Fan yang digunakan adalah motor dc 5 V yang diberi kertas.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -9

2.6 KEYPAD Pada dasarnya keypad yang ada dipasaran baik yang berukuran keypad 33, 34 atau 44, hanya tersusun dari beberapa push button yang dikonfigurasikan antara kolom dengan baris. Sehingga sering disebut juga keypad matriks nxm (n=kolom m=baris). Kolom dan baris ini nantinya yang digunakan untuk pendeteksian penekanan tombol.

Gambar 2.7 [Keypad 3x4 yang dihubungkan ke Arduino Uno] Keypad disini menggunakan sistem matrik dimana kolom dan baris yang sama diserikan satu sama lainnya. Perancangannya menggunakan saklar Push Button di setiap tombolnya, Push Button disini mempunyai tiga masukan yakni untuk kolom, baris, dan kommon (pada perancangan disini kommon dihubungkan ke ground). Dengan disetnya kommon dengan ground, apabila menekan tombol otomatis ketiga masukan terhubung, dengan kata lain kolom dan baris berlogika 0 perubahan logika inilah yang diproses oleh mikrokontroler. 2.7 Prinsip Kerja Sensor LM 35 Sensor suhu LM35 adalah komponen elektronika yang memiliki fungsi untuk mengubah besaran suhu menjadi besaran listrik dalam bentuk tegangan. Sensor Suhu LM35 yang dipakai dalam penelitian ini berupa komponen elektronika elektronika yang diproduksi oleh National Semiconductor. LM35 memiliki

keakuratan tinggi dan kemudahan perancangan jika dibandingkan dengan sensor suhu yang lain, LM35 juga mempunyai keluaran impedansi yang rendah dan linieritas yang tinggi sehingga dapat dengan mudah dihubungkan dengan rangkaian kendali khusus serta tidak memerlukan penyetelan lanjutan.
Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -10

Meskipun tegangan sensor ini dapat mencapai 30 volt akan tetapi yang diberikan kesensor adalah sebesar 5 volt, sehingga dapat digunakan dengan catu daya tunggal dengan ketentuan bahwa LM35 hanya membutuhkan arus sebesar 60 A hal ini berarti LM35 mempunyai kemampuan menghasilkan panas (selfheating) dari sensor yang dapat menyebabkan kesalahan pembacaan yang rendah yaitu kurang dari 0,5 C pada suhu 25 C .

Gambar 2.8 [Sensor Suhu LM35] Gambar diatas menunjukan bentuk dari LM35 tampak depan dan tampak bawah. 3 pin LM35 menujukan fungsi masing-masing pin diantaranya, pin 1 berfungsi sebagai sumber tegangan kerja dari LM35, pin 2 atau tengah digunakan sebagai tegangan keluaran atau Vout dengan jangkauan kerja dari 0 Volt sampai dengan 1,5 Volt dengan tegangan operasi sensor LM35 yang dapat digunakan antar 4 Volt sampai 30 Volt. Keluaran sensor ini akan naik sebesar 10 mV setiap derajad celcius sehingga diperoleh persamaan sebagai berikut : VLM35 = Suhu* 10 mV Secara prinsip sensor akan melakukan penginderaan pada saat perubahan suhu setiap suhu 1 C akan menunjukan tegangan sebesar 10 mV. Pada penempatannya LM35 dapat ditempelkan dengan perekat atau dapat pula disemen pada permukaan akan tetapi suhunya akan sedikit berkurang sekitar

0,01 C karena terserap pada suhu permukaan tersebut. Dengan cara seperti ini diharapkan selisih antara suhu udara dan suhu permukaan dapat dideteksi oleh sensor LM35 sama dengan suhu disekitarnya, jika suhu udara disekitarnya jauh lebih tinggi atau jauh lebih rendah dari suhu permukaan, maka LM35 berada pada suhu permukaan dan suhu udara disekitarnya . Jarak yang jauh diperlukan penghubung yang tidak terpengaruh oleh interferensi dari luar, dengan demikian digunakan kabel selubung yang ditanahkan
Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -11

sehingga dapat bertindak sebagai suatu antenna penerima dan simpangan didalamnya, juga dapat bertindak sebagai perata arus yang mengkoreksi pada kasus yang sedemikian, dengan mengunakan metode bypass kapasitor dari Vin untuk ditanahkan. 2.8 Prinsip Kerja Arduino UNO Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel.

Gambar 2.9 [Arduino Uno schematic] Mikrokontroler itu sendiri adalah chip atau IC (integrated circuit) yang bisa diprogram menggunakan komputer. Tujuan menanamkan program pada mikrokontroler adalah agar rangkaian elektronik dapat membaca input, memproses input tersebut dan kemudian menghasilkan output sesuai yang diinginkan. Jadi mikrokontroler bertugas sebagai otak yang mengendalikan input, proses dan output sebuah rangkaian elektronik. Komponen utama di dalam papan Arduino adalah sebuah microcontroller 8 bit dengan merk ATmega yang dibuat oleh perusahaan Atmel Corporation. Berbagai papan Arduino menggunakan tipe ATmega yang berbeda-beda tergantung dari spesifikasinya, sebagai contoh Arduino Uno menggunakan ATmega328 sedangkan Arduino Mega 2560 yang lebih canggih menggunakan ATmega2560. Untuk memberikan gambaran mengenai apa saja yang terdapat di dalam sebuah microcontroller, pada gambar berikut ini diperlihatkan contoh diagram blok sederhana dari microcontroller ATmega328 (dipakai pada Arduino Uno).

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -12

Gambar 2.10 [Diagram blok sederhana dari microncontroler ATmega 328 yang digunakan di Arduino Uno] Blok-blok di atas dijelaskan sebagai berikut: Universal Asynchronous Receiver/Transmitter (UART) adalah antar muka yang digunakan untuk komunikasi serial seperti pada RS-232, RS-422 dan RS-485. 2KB RAM pada memory kerja bersifat volatile (hilang saat daya dimatikan), digunakan oleh variable-variabel di dalam program. 32KB RAM flash memory bersifat non-volatile, digunakan untuk menyimpan program yang dimuat dari komputer. Selain program, flash memory juga menyimpan bootloader. Bootloader adalah program inisiasi yang ukurannya kecil, dijalankan oleh CPU saat daya dihidupkan. Setelah bootloader selesai dijalankan, berikutnya program di dalam RAM akan dieksekusi. 1KB EEPROM bersifat non-volatile, digunakan untuk menyimpan data yang tidak boleh hilang saat daya dimatikan. Tidak digunakan pada papan Arduino. Central Processing Unit (CPU), bagian dari microcontroller untuk menjalankan setiap instruksi dari program. Port input/output, pin-pin untuk menerima data (input) digital atau analog, dan mengeluarkan data (output) digital atau analog. 2.9 Prinsip Kerja LCD LCD (Liquid Crystal Display) adalah suatu jenis media tampilan yang menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan di

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -13

berbagai bidang, misalnya dalam alat-alat elektronik, seperti televisi, kalkulator ataupun layar komputer. Pada LCD berwarna semacam monitor, terdapat banyak sekali titik cahaya (pixel) yang terdiri dari satu buah kristal cair sebagai suatu titik cahaya. Walaupun disebut sebagai titik cahaya, namun kristal cair ini tidak memancarkan cahaya sendiri.

Gambar 2.11 [Lcd yang terangkai ke Arduino Uno] Sumber cahaya di dalam sebuah perangkat LCD adalah lampu neon berwarna putih di bagian belakang susunan kristal cair tadi. Titik cahaya yang jumlahnya puluhan ribu bahkan jutaan inilah yang membentuk tampilan citra. Kutub kristal cair yang dilewati arus listrik akan berubah karena pengaruh polarisasi medan magnetik yang timbul dan oleh karenanya akan hanya membiarkan beberapa warna diteruskan sedangkan warna lainnya tersaring. LCD adalah pilihan utama lain selain layar tabung CRT, LCD memiliki bentuk fisik yang lebih ramping, ringan, dan mengonsumsi daya lebih sedikit dibandingkan CRT. Namun resolusi yang dimiliki LCD belum sebaik CRT. Selain itu, hal lain yang menjadi kelemahan LCD adalah angle view-nya yang lebih sempit dibandingkan CRT. 2.10 Prinsip Kerja Potensiometer Prinsip kerja potensiometer didasarkan Jika saklar S dipindah ke posisi operasi dan saklar kunci galvanometer dibuka, maka baterai kerja akan mengalirkan arus

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -14

ke tahanan dan kawat geser, dan arus kerja yang melalui kawat geser dapat diubah dengan cara mengubah posisi dari tahanan geser. Untuk mengukur tegangan yang tidak diketahui ( E ), ditentukan dengan cara bagaimana mendapatkan posisi kontak geser, sehingga galvanometer

menunjukkan defleksi nol jika saklar galvanometer ditutup. Arus galvanometer nol, menunjukkan bahwa tegangan yang tidak diketahui ( E ) besarnya sama dengan penurunan tegangan E pada bagian xy dari kawat geser.( dengan perkataan lain penentuan nilai E adalah penentuan penurunan tegangan E sepanjang kawat geser ). Kawat geser mempunyai tahanan yang sama sepanjang kawat. Sebuah skala yang dikalibrasi, biasanya dalam centimeter atau millimeter yang terdapat sepanjang kawat geser, sehingga kontak geser dapat dipindah-kan ke posisi yang diinginkan. Disebabkan tahanan kawat geser diketahui secara tepat, maka penurunan tegangan sepanjang kawat atau sebagian kawat dapat dikontrol dengan mengatur arus kerja.

2.11 Dasar Pemrograman Bahasa C Program bahasa C adalah suatu program terdiri dari satu atau lebih fungsifungsi. Fungsi utama yang harus ada pada program C yang kita buat adalah fungsi main(). Fungsi main() ini adalah fungsi pertama yang akan diproses pada saat program di-compile dan dijalankan, sehingga bisa disebut sebagai fungsi yang mengontrol fungsi-fungsi lain. Karena struktur program bahasa C terdiri dari fungsi-fungsi lain sebagai program bagian (subroutine), maka bahasa C biasa disebut sebagai bahasa pemrograman terstruktur. Cara penulisan fungsi pada program bahasa C adalah dengan memberi nama fungsi dan kemudian dibuka dengan tanda kurung kurawal buka ({) dan ditutup dengan tanda kurung kurawal tutup (}). Aturan pemrograman pada Bahasa C standar mencakup hal-hal sebagai berikut: 1. Sebagai konvensi, program ditulis dengan menggunakan huruf kecil.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -15

2. Tanda titik-koma ; digunakan untuk memisahkan dua pernyataan yang dapat dijalankan (executable statements). 3. Tanda kurung-kurawal { dan } digunakan untuk mengelompokkan unit-unit eksekusi dari fungsi-fungsi maupun pernyataan pengendali (control statements). 4. Fungsi dan variabel memerlukan deklarasi tipe data ( type declaration). 5. Kata kunci (reserved words) tidak dapat digunakan sebagai pengenal (identifiers), seperti nama fungsi atau nama variabel. 6. Komentar yang terdiri dari satu baris atau lebih dituliskan diantara tanda /* dan */. Komentar yang hanya terdiri dari satu baris dapat dituliskan setelah tanda //.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -16

BAB III PERANCANGAN DAN IMPLEMENTASI SISTEM


Pada perancangan dan implementasi sistem akan dijelaskan tentang cara kerja sistem yang terdapat dalam garis besar perancangan sistem dan diikuti dengan penjelasan tentang perancangan dan pembuatan perangkat keras (hardware) yang terdiri dari rangkaian mekanik dan rangkaian elektrik yang digunakan pada Pengontrol suhu ruangan dengan menggunakan Arduino Uno. Kemudian diikuti dengan perancangan dan pembuatan perangkatan lunak (software) yang akan berfungsi untuk mengatur atau mengendalikan pergerakan sistem. 3.1 Garis Besar Perancangan Sistem Pada bagian ini akan dijelaskan secara garis besar bagaimana Pengontrol suhu ruangan bekerja. Perancangan ini meliputi perancangan perangkat keras (hardware) dan perangkat lunak (software).

Keypad

LCD
fan
Arduino

sensor

Gambar 3.1 Blok diagram sistem

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -17

3.2 Gambar Rangkaian

Gambar 3.2 [gambar rangkaian alat dari Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno.]

Gambar 3.3 [gambar rangkaian alat dari Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno.]

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -18

3.3 Komponen yang digunakan Tabel 3.1 [komponen yang digunakan dalam Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno.] Komponen
1. 2. 3. 4.

Jumlah (buah) 1 1 1 2

Arduino UNO Sensor Suhu LM35DZ LCD FAN (Motor 5V)

3.4 Prinsip kerja LM35 adalah IC sensor suhu yang presisi, keluarannya berupa tegangan yang proposional linier terhadap perubahan suhu dalam derajat Celsius. Dalam system ini, aplikasi sensor suhu IC LM35 berfungsi untuk mendeteksi suhu yang terukur. Lalu diproses oleh Arduino Uno yang merupakan mikrokontroler yang digunakan pada sistem ini, kemudian hasil keluaran di display pada LCD Display 16x2. Pada proses awal, user harus memasukkan password yang telah ditentukan oleh programmer. Apabila password yang dimasukkan oleh user adalah salah, maka system program yang ditampilkan oleh LCD akan kembali ke inisialiasasi awal, apabila password yang dimasuki oleh user benar, maka system akan menunjukkan hasil nilai suhu yang terukur. Kemudian user akan menginput nilai suhu yang diinginkan. Suhu yang diinputkan oleh user harus lebih kecil dari pada suhu yang terukur sebelum diberi inputan nilai yang diinginkan. Jika suhu input lebih besar dari pada suhu sebelum diberi input maka kipas tidak akan menyala, sebaliknya apabila suhu lebih kecil dari suhu sebelum di input, maka kipas akan menyala. Pada system ini, penginputan nilai suhu hanya berfungsi sebagai pengatur apakah kipas akan hidup atau tidak. System ini tidak mengatur pergerakan fan sesuai dengan nilai yang di inputkan dengan menggunakan keypad untuk menghasilkan

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -19

suhu yang diinginkan, karena motor yang digunakan sebagai fan dari system ini adalah motor dc yang tidak menggunakan H-Junction.

Gambar:3.3[Rangkaian Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno]

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -20

BAB IV HASIL DAN PEMBAHASAN


4.1 Listing Program Berikut ini adalah listing program dari Perancangan dan Implementasi Pengontrol Suhu Ruangan dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno. Program yan digunakan pada system ini adalah program c++. #include <stdio.h> //Preprocessor directive #include <stdlib.h>//Preprocessor directive #include "string.h" //Preprocessor directive #include "Keypad.h" //untuk mengaktifkan fungsi library keypad #include "Wire.h" //untuk mengaktifkan fungsi library wire #include "LiquidCrystal.h" // untuk mengaktifkan fungsi library LCD #include "Password.h" //untuk mengaktifkan fungsi library password LiquidCrystal lcd(11, 12, 7, 8, 9, 10);//untuk mengkoneksikan pin ke LCD int tempC; //variable int tempPin = 0; //variable const byte ROWS = 4; //variable const byte COLS = 3; //variable char keys[ROWS][COLS] = {{'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'}}; int keey =0; //variable int keeys=0; //variable

byte rowPins[ROWS] = { 5, 4, 3, 2}; //connect to the row pinouts of the keypad byte colPins[COLS] = {
Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -21

8, 7, 6}; // connect to the column pinouts of the keypad int count=0; byte fan = 13; //variable

boolean blink = true;

Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); Password password = Password("040691");

void setup() { lcd.begin(16, 2); pinMode(fan, OUTPUT); digitalWrite(fan, LOW);

lcd.print(" Pengontrol Suhu"); delay (2000); lcd.setCursor(0, 0); lcd.clear(); lcd.print("password:"); keypad.addEventListener(keypadEvent); keypad.setHoldTime(500); } void loop() { char key = keypad.getKey(); if (key != NO_KEY) { lcd.print(key); count++; key -= 48; //this is an ASCII offset. converts input values to their integer value keey = (keey * 10) + key; //concatenates each new digit

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -22

keeys=keey;

if (count==17) { lcd.clear(); count=0; } } }

void suhu(){ lcd.setCursor(0, 0); lcd.print("suhu:"); tempC = analogRead(tempPin); tempC = (5.0 * tempC * 100.0)/1024.0;//untuk merumuskan hasil analog dalam bit lcd.print(tempC); lcd.setCursor(0, 1); lcd.print("Kontrolsuhu?"); delay (2000); lcd.clear(); lcd.setCursor(0, 0); lcd.print("yes=inputtemp"); lcd.setCursor(0, 1); lcd.print("no=blank"); delay (2000); lcd.clear(); lcd.setCursor(0, 0); lcd.print("suhu:"); tempC = analogRead(tempPin); tempC = (5.0 * tempC * 100.0)/1024.0; lcd.print(tempC);

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -23

lcd.setCursor(0, 1); char key = keypad.getKey(); keypad.addEventListener(keypadEvent); delay (1000); }

void csuhu(){ lcd.clear(); tempC = analogRead(tempPin); tempC = (5.0 * tempC * 100.0)/1024.0;

if(tempC>=keeys) { lcd.setCursor(0, 1); digitalWrite(fan,HIGH); lcd.print("on"); } else if (tempC <keeys) { lcd.setCursor(0, 1); digitalWrite(fan,LOW); lcd.print("off"); } } void keypadEvent(KeypadEvent eKey){ switch (keypad.getState()){ case PRESSED: Serial.print("Pressed: "); Serial.println(eKey); switch (eKey){ case '*': guessPassword(); break; default: password.append(eKey);break; } break;

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -24

case RELEASED: switch (eKey){ case '#': csuhu(); break; } break; case HOLD: switch (eKey){ lcd.clear(); case '*': blink = true;

} break;

}}

void guessPassword(){ if (password.evaluate()) {lcd.clear(); lcd.setCursor(0, 0); suhu(); } else { lcd.setCursor(0, 1); lcd.print("ulang!"); delay (3000); lcd.clear(); password.reset(); char key = keypad.getKey(); setup();} }

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -25

Flowchart system

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -26

HASIL SIMULASI PERANCANGAN DAN IMPLEMENTASI PENGONTROL SUHU RUANGAN DENGAN MENGGUNAKAN SENSOR LM35 BERBASIS MIKROKONTROLER ARDUINO UNO DENGAN MENGGUNAKAN PROTEUS

Tampilan awal

Tampilan ke 2 User diminta untuk memasukkan password dengan cara menginputkan data melalui keypad hasil inputan akan berbentuk * sebagai faktor kemanan.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -27

Tampilan ke 3 Ketika user memasukkan password yang salah, maka system akan kembali ke tampilan awal hingga user memasukkan password yang benar.

Tampilan ke 4 Ketika password yang diinputkan user benar, maka system akan menunjukkan nilai suhu yang terukur dalam derajat celcius yang ditampilkan ke LCD. Lalu system akan menanyakan ke user apakah suhu ingin dikontrol atau tidak.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -28

Tampilan ke 5 Apabila user ingin mengontrol suhu, maka user memasukkan nilai suhu yang diinginkan (dibawah suhu yang terukur) agar fan dapat berputar. Lalu setelah menginputkan suhu, user harus menekan tombol # sebagai fungsi untuk enter.

Tampilan ke 6 Apabila user menginginkan kipas mati, maka user cukup menekan tanda # beberapa kali sampai muncul tanda off.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -29

BAB V PENUTUP
5.1 Kesimpulan 1. Sensor suhu LM35 DZ merupakan sensor suhu yang presisi 2. Arduino uno merupakan mikrokontroler yang merupakan mikrokontroler opensource, dimana IC utama yang digunakan adalah ATmega 328 dengan clock speed 16 MHz. 3. Arduino Uno merupakan jenis mikrokontroler Arduino yang terbaru. 4. Sistem Perancangan Dan Implementasi Pengontrol Suhu Ruangan Dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno sangat layak untuk diaplikasikan sebagai pengontrol suhu. 5. Sistem Perancangan Dan Implementasi Pengontrol Suhu Ruangan Dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno berfungsi untuk menurunkan suhu.

5.2

Saran 1. Untuk kedepannya diharapkan diadakan penelitian kembali tentang penggunaan Perancangan Dan Implementasi Pengontrol Suhu Ruangan Dengan Menggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno yang dapat mengubah suhu ruangan menjadi lebih hangat dan kecepatan dari kipas dapat diatur sesuai dengan inputan yang diberikan ke keypad.

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -30

Daftar Pustaka
Anoname .2011. project 6 temperature sensor to LCD display

http://tutorial.cytron.com.my/2011/08/12/project-6-temperature-sensor-to-lcddisplay/ di akses pada 24 januari 2012 Anoname. -. Apa itu Arduino?. http://blog.indorobotika.com/arduino/apa-ituarduino.html di akses pada 24 januari 2012 Anoname. -. Arduino. http://id.wikipedia.org/wiki/Arduino di akses pada 24 januari 2012 Anoname.-. sensor suhu dengan arduino dan lm35.

http://blog.indorobotika.com/arduino/sensor-suhu-dengan-arduino-danlm35.html di akses pada 24 januari 2012 Anoname.2008.bread board. http://elektro-smekro.blogspot.com/2008/11/breadboard.html di akses pada24 januari 2012 Djuandi, Feri.2011. Pengenalan Arduino. http://www.tokobuku.com di akses pada Februari 2012 Insan.2011.sensorsuhuwithlcd.http://insansainsprojects.wordpress.com/2011/04 /20/sensor-suhu-with-lcd/ di akses pada 24 januari 2012 Valfa. 2011. temperature sensor using lm35 and LCD .

.http://valfa.blogspot.com/2011/03/temperature-sensor-using-lm35-andlcd.html di akses pada 24 januari 2012

Fadilla Zennifa Bp. 0910951006 Perancangan dan Implementasi Pengontrol Suhu Ruangan denganMenggunakan Sensor LM35 Berbasis Mikrokontroler Arduino Uno -31