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 -55ºC hingga +150ºC dengan akurasi ±0.5ºC. 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 semi-


lingkar 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
3×3, 3×4 atau 4×4, 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 (self-
heating) 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 fungsi-
fungsi. 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).

LCD
Keypad

fan
sensor
Arduino

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 Jumlah (buah)


1. Arduino UNO 1
2. Sensor Suhu LM35DZ 1
3. LCD 1
4. FAN (Motor 5V) 2

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-lcd-
display/ di akses pada 24 januari 2012
Anoname. -. “Apa itu Arduino?”. http://blog.indorobotika.com/arduino/apa-itu-
arduino.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-dan-
lm35.html di akses pada 24 januari 2012
Anoname.2008.”bread board”. http://elektro-smekro.blogspot.com/2008/11/bread-
board.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-and-
lcd.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

Anda mungkin juga menyukai