PENGONTROLAN SUHU DAPUR MENGGUNAKAN SENSOR DHT11 BERBASIS ARDUINO UNO
TUGAS AKHIR
MAYMUNAH 142408046
PROGRAM STUDI D-3 FISIKA DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN
2017
PENGONTROLAN SUHU DAPUR MENGGUNAKAN SENSOR DHT11 BERBASIS ARDUINO UNO
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli Madya
MAYMUNAH 142408046
PROGRAM STUDI D-3 FISIKA DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2017
PERSETUJUAN
Judul : Pengontrolan suhu dapur menggunakan sensor DHT11 Berbasis Arduino Uno
Kategori : Tugas Akhir
Nama : Maymunah
Nmor Induk Mahasiswa :142408046
Program Studi : Diploma (D-3) Fisika
Departemen : Fisika
Fakultas : Matematika Dan Ilmu Pengetahuan Alam
Universitas Sumatera Utara
Disetujui di Medan, 14 Juli 2017
Ketua Program Studi D-3 Fisika Dosen Pembimbing
Drs.Takdir Tamba, M.Eng.Sc Dr. Kerista Tarigan M.Eng.Sc
NIP: 1960060311986011002 NIP. 196002031986011001
PERNYATAAN
PENGONTROLAN SUHU DAPUR MENGGUNAKAN SENSOR MQ7 BERBASIS ARDUINO UNO
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil karya sendiri. Kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 14 Juli 2017
Maymunah 142408046
PENGONTROLAN SUHU DAPUR MENGGUNAKAN SENSOR DHT11 BERBASIS ARDUINO UNO
ABSTRAK
Arduino adalah papan mikrokontroler berdasarkan Atmega328 (datasheet) ini mempunyai 14 digital pin input/ output , dimana 6 digunakan untuk sebagai output (PWM), 6 inputan analog, resonator keramik 16 MHz, koneksi USB, jack listrik header ICPS dan tombol reset.pada pembahasan kali ini akan di bahas mengenai aplikasi arduino yaitu deteksi suhu dengan menggunakan sensor DHT11, dimana sensor suhu digunakan sebagai inputan dan lcd 16x sebagai tampilan atau
output.seiring dengan perkembangan teknologi dan ilmu pengetahuan, akhir akhir ini bidang elektronika mengalami kemajuan yang pesat , dengan kemajuan tersebut membuat manusia selalu berusaha memanfaatkan teknologi yang ada untuk mempermudah kehidupan misalnya dalam pengaturan suhu ruangan biasa
menggunakan kipas angin atau AC. oleh karena itu jika pengukuran suhu dilakukan secara manual maka hasil yang di dapat yaitu pengukuran yang kurang tepat ,
pengukuran suhu secara otomatis akan memudahkan pembacaan dan keakuratan yang tepat.dengan tampilan LCD 16x2 untuk menampilkan suhu dan jenis sensor serta adanya pembandingan yakni termometer sebagai akurat data. Sehingga jika sensor suhu menunjukkan suhu yang tertentu maka LCD 16x2 akan tampil sesuai masukan sensor dan suhu akan mengaktifkan kipas sesuai dengan kondisi.
Kata kunci : LCD , Mikrokontroler Arduino Uno, Sensor DHT11, kipas angin,Relay
PENGHARGAAN
Puji dan syukur penulis ucapkan kepada Allah swt atas segala keberkahan dan rahmat yang dikaruniakan-Nya kepada penulis sehingga mampu menyelesaikan Laporan Proyek ini.
Terima kasih penulis sampaikan kepada semua pihak yang sangat membantu penulis dalam penyusunan laporan proyek ini sehingga dapat selesai. Terima kasih kepada: Ayah dan Mama tercinta yang senantiasa memberikan dukungan do’a, moril dan material serta bimbingan yang sangat membantu penulis.Bapak Dr. Kerista Sebayang, MS selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Ibu Dr. Nursahara Paribu, M.Sc selaku Pembantu Dekan I Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
Bapak Drs. Takdir Tamba, M.Eng, Sc selaku Ketua Program Studi D-3 Fisika
Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.Bapak Dr. Kerista Tarigan M.Eng, Sc selaku Dosen Pembimbing penulis, yang telah banyak memberikan pengarahan dan bimbingan kepada penulis.Seluruh Staff Pengajar / Pegawai program studi D-III Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Doni sihotang yang telah memberikan bantuan berupa ilmu dalam menyelesaikan Tugas Akhir.Teman-teman seperjuangan D-3 Fisika yang memberikan bantuan .
Medan, 14 Juli 2017
Maymunah
DAFTAR ISI
Halaman
PERSETUJUAN i
PERNYATAAN ii
PENGHARGAAN iii
ABSTRAK vi
KATA PENGANTAR v
DAFTAR ISI vi
DAFTAR GAMBAR vii
DAFTAR TABEL viii
DAFTAR LAMPIRAN ix
BAB I: PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Tujuan Penulisan 2
1.4 Batasan Masalah 3
1.5 Metodologi Penulisan 3
1.6 Sistematika Penulisan 3
BAB II: LANDASAN TEORI 5
2.1 Mikrokontroler 5
2.21 Mikrokontroller Arduino Uno 5
2.1.2 Daya (Power) 9
2.1.3 Memori 10
2.1.4 Input dan Output 10
2.1.5 Komunikasi 11
2.1.6 Programming 12
2.1.7Bahasa Pemrograman Arduino 13
2.1.8Reset Otomatis (Software) 15
2.1.9 Proteksi Arus Lebih USB 16
2.2 Sensor 16
2.2.1Sensor DHT11 17
2.3 Relay 18
2.3.1 Dasar-Dasar Relay 20
2.3.2 Prinsip kerja 21
2.3.3 Cara kerja 21
2.3.4 Fungsi Relay 23
2.3.5 Aplikasi 25
2.4 Liquid Crystal Display (LCD) 26
2.4.1Konfigurasi LCD 2 16 27
2.4.2 Prinsip KerjaLCD 27
2.5 Resistor 28
2.6 Adaptor 30
2.7 Kipas Angin 31
BAB III: PERANCANGAN DAN PEMBUATAN 33
3.1 Metode Penelitian 33
3.1.1 Waktu dan Tempat 33
3.1.2 Alat dan Bahan 33
3.1.2.1 Alat yang di gunakan Dalam Penelitian 33
3.1.2.2 Bahan Yang dihunakan 33
3.2 Flowchart System 35
3.3 Spesifikasi System 36
3.4 Rangkaian Arduino Uno 37
3.5 Rangkaian Sensor DHT11 38
3.6 Rangkaian Relay 39
3.7 Rangkaian LCD 40
BAB IV: HASIL DAN PEMBAHASAN 41
4.1 PENGUJIAN 41
4.1.1Pengujian Rangkaian Mikrokontroler Arduino Uno 41
4.1.2Pengujian Sensor DHT11 42
4.1.3Pengujian Rangkaian Relay 43
4.1.4Pengujian Rangkaian LCD 43
4.1.5Pengujian Kipas Angin 44
4.2 ANALISA DATA 45
4.2.1 Pengujian Perbandingan sensor suhu 45
4.2.2 Grafik perbandingan sensor suhu 46
BAB V: KESIMPULAN DAN SARAN 47
5.1 Kesimpulan 47
5.2 Saran 48
DAFTAR PUSTAKA 49 LAMPIRAN
DAFTAR GAMBAR
Halaman
2.1 Skematik Arduino Uno 8
2.2 Sensor DHT11 18
2.3 Relay 19
2.4 LCD 2x16 26
2.5 Resistor 29
2.6 Kipas Angin 32
3.2 Diagram flowchat 35
3.3 Diagram Spesifikasi System 36
3.1 Rangkaian Arduino Uno 37
3.2 Rangkaian Sensor DHT11 38
3.3 Rangkaian Relay 39
3.4 Rangkaian LCD 41
DAFTAR TABEL
Halaman 2.1 Deskripsi Arduino 7
2.2 Konfigurasi LCD 27 4.2.1 Pengujian sensor suhu 45
LAMPIRAN 1. Program Pengontrolan suhu ruangan 2. Lembar Ekspedisi Perbaikan Tugas Akhir
BAB I PENDAHULUAN
1.1 Latar Belakang
pada pembahasan kali ini akan di bahas mengenai aplikasi arduino yaitu deteksi suhu dengan menggunakan sensor DHT11, dimana sensor suhu digunakan sebagai inputan dan ld 16x sebagai tampilan atau output.seiring dengan perkembangan teknologi dan ilmu pengetahuan, akhir akhir ini bidang elektronika mengalami kemajuan yang pesat , dengan kemajuan tersebut membuat manusia selalu berusaha memanfaatkan
teknologi yang ada untuk mempermudah kehidupan misalnya dalam pengaturan suhu ruangan biasa menggunakan kipas angin atau AC. oleh karena itu jika pengukuran suhu dilakukan secara manual maka hasil yang di dapat yaitu pengukuran yang kurang tepat , pengukuran suhu secara otomatis akan memudahkan pembacaan dan
keakuratan yang tepat.dengan tampilan LCD 16x2 untuk menampilkan suhu dan jenis sensor serta adanya pembandingan yakni termometer sebagai akurat data. Sehingga jika sensor suhu menunjukkan suhu yang tertentu maka LCD 16x2 akan tampil sesuai masukan sensor dan suhu akan mengaktifkan kipas sesuai dengan kondisi.Berdasarkan permasalahan tersebut maka di rancang suatu alat dengan sensor suhu di lengkapi dengan LCD 16x2 agar memudahkan pengguna dalam pembacaan.
Berdasarkan penjabaran diatas, maka penulis tertarik membuat sebuah tugas akhir dengan judul “Pengontrolan Suhu Dapur Menggunakan Sensor DHT11 Berbasis Arduino Uno
1.2 Rumusan Masalah
Permasalahan utama pada penelitian ini antara lain bagaimana kerja sensor DHT11 sebagai sensor pendeteksi asap pada ruangan.. Ruang lingkup dari penelitian ini untuk mengetahui sensitivitas DHT11 sebagai sensor pendeteksi kadar panas dan asap pada ruangan. Berdasarkan dari permasalahan yang ada, untuk mengetahui besar kadar asap pada ruangan tersebut, maka dibuatlah alat untuk mengontrol ruangan dengan menggunakan arduino uno sebagai pusat pengendalian program dalam berkerja, yang akan menampilkan hasil pendeteksian suhu dan asap dari sensor DHT11 ke dalam LCD untuk menampilkan suhu .
1.3 Tujuan Penelitian
Tujuan dari penelitan dalam tugas akhir ini adalah sebagai berikut:
1. Dapat mengontrol suhu ruangan secara otomatis menggunakan arduino uno yang berfungsi untuk menjalankan kipas angin saat suhu tinggi atau saat asap masuk.
2. Dapat mengetahui suhu yang terbaca oleh sensor yang ditampilkan pada LCD
1.4 Batasan Masalah
Agar perancangan yang dibahas dalam tugas akhir ini tidak terlalu luas dan menyimpang dari topik yang telah ditentukan, maka penulis perlu membatasi permasalahan sebagai berikut:
1. Pembahasan tentang mikrokontroler Arduino Uno R3 hanya sebatas yang berkaitan dengan perancangan ini.
2. Pembahasan mengenai komponen pendukung yang meliputi: sensor DHT11, LCD, kipas angin , Resistor, Adaptor dan komponen lainnya hanya sebatas teori umum dan yang berkaitan dengan perancangan alat.
3. Menggunakan sensor DHT11
1.5 Manfaat Penelitian
Dengan pembuatan tugas akhir ini diharapkan dapat memberikan manfaat sebagai berikut:
1. Dapat membantu masyarakat dalam proses kehidupan sehari hari khususnya di daerah pedesaan yang memiliki kekurangan elektronika
2. Dapat membantu oramg yg kurang mampu(cacat ) bila dalam kepanasan dalam ruangan karna dia otomatis.
1.6 Sistematika Penulisan
Untuk mempermudah penyusunan laporan, maka dalam hal ini penulis membagi dalam beberapa bab, serta memberikan gambaran secara garis besar isi dari tiap-tiap bab.
BAB I : PENDAHULUAN
Bab ini berisikan latar belakang masalah, tujuan dan manfaaat penelitian, identifikasi masalah, pembatasan masalah, rumusan masalah, metode penelitian, serta sistematika penulisan.
BAB II : LANDASAN TEORI
Bab ini merupakan landasan teori yang membahas tentang teoriteori yang mendukung dalam penyelesaian masalah.
BAB III : METODOLOGI PENELITIAN
Meliputi metode, bahan alat, perancangan dan pengambilan data penelitian.
BAB IV : HASIL dan ANALISA
Meliputi hasil penelitian dan pembahasan.
BAB V : KESIMPULAN dan SARAN
Berisikan kesimpulan tentang hasil rancangan yang telah dibuat serta saran dalam pengembangan rancangan tersebut.
BAB II LANDASAN TEORI
2.1 Mikrokontroler
Mikrokontroler atau kadang dinamakan Pengontrolan tertanam(Embedded controller) adalah suatu sistem yang mengandung masukan/keluaran, memori, dan
processor, yang digunakan pada suatu mesin seperti mesin cuci, pemutar video, mobil, dan telepon. Pada prinsipnya, mikrokontroler adalah sebuah komputer berukuran kecil yang dapat digunakan untuk mengambil keputusan, melakukan hal-hal yang bersifat berulang, dan dapat berinteraksi dengan peranti eksternal, seperti sensor ultrasonic untuk mengukur jarak terhadap suatu objek, penerima GPS untuk memperoleh data posisi kebumian dari satelit, dan motor untuk mengontrol gerakan pada robot. Sebagai komputer yang berukuran kecil,
mikrokontroler cocok diaplikasikan pada benda-benda berukuran kecil, misalnya sebagai pengendali pada QuadCopter ataupun robot.
Perusahan yang terkenal sebagai pembuat mikrokontroler antara lain adalah Atmel,Cypress Semiconductor, Microchip Teknologi, dan Silicon Laboratories.
2.1.1 Mikrokontroler Arduino Uno
Arduino UNO adalah sebuah board mikrokontroler yang didasarkan pada ATmega328 (datasheet). Arduino UNO mempunyai 14 pin digital input/output (6 di antaranya dapat digunakan sebagai output PWM), 6 input analog, sebuah osilator Kristal 16 MHz, sebuah koneksi USB, sebuah power jack, sebuah ICSP header, dan
sebuat tombol reset. Arduino UNO memuat semua yang dibutuhkan untuk menunjang mikrokontroler, mudah menghubungkannya ke sebuah computer dengan sebuah kabel USB atau mensuplainya dengan sebuah adaptor AC ke DC atau menggunakan baterai untuk memulainya. Arduino Uno berbeda dari semua board Arduino sebelumnya, Arduino UNO tidak menggunakan chip driver FTDI USB-to-serial. Sebaliknya, fitur- fitur Atmega16U2 (Atmega8U2 sampai ke versi R2) diprogram sebagai sebuah pengubah USB ke serial. Revisi 2 dari board Arduino Uno mempunyai sebuah resistor yang menarik garis 8U2 HWB ke ground, yang membuatnya lebih mudah untuk diletakkan ke dalam DFU mode. Revisi 3 dari board Arduino UNO memiliki fitur- fitur baru sebagai berikut: Pinout 1.0: ditambah pin SDA dan SCL yang dekat dengan pin AREF dan dua pin baru lainnya yang diletakkan dekat dengan pin RESET, IOREF yang memungkinkan shield-shield untuk menyesuaikan tegangan yang disediakan dari board. Untuk ke depannya, shield akan dijadikan kompatibel/cocok dengan board yang menggunakan AVR yang beroperasi dengan tegangan 5V dan dengan Arduino Due yang beroperasi dengan tegangan 3.3V. Yang ke-dua ini merupakan sebuah pin yang tak terhubung, yang disediakan untuk tujuan kedepannya Sirkit RESET yang lebih kuatAtmega 16U2 menggantikan 8U2
“Uno” berarti satu dalam bahasa Italia dan dinamai untuk menandakan keluaran (produk) Arduino 1.0 selanjutnya. Arduino UNO dan versi 1.0 akan menjadi referensi untuk versi-versi Arduino selanjutnya. Arduino UNO adalah sebuah seri terakhir dari board Arduino USB dan model referensi untuk papan Arduino, untuk suatu
perbandingan dengan versi sebelumnya, lihat index board Ringkasan
Mikrokontroler ATmega328
Tegangan pengoperasian 5V
Tegangan input yang disarankan
7-12V
Batas tegangan input 6-20V
Jumlah pin I/O digital 14 (6 di antaranya menyediakan keluaran PWM)
Jumlah pin input analog 6
Arus DC tiap pin I/O 40 mA
Arus DC untuk pin 3.3V 50 mA
Memori Flash
32 KB (ATmega328), sekitar 0.5 KB digunakan oleh bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHz
2.1 Konfigurasi Gambar Arduino Uno
KETERANGAN GAMBAR
1. USB Connector : Untuk menguhubungkan Arduino dengan komputer,
melakukan komunikasi serial seperti mengirimkan dan menerima data sensor
melalui serial terminal pada Arduino IDE.
2. Power Jack: Tegangan input untuk menghidupkan Arduino
3. IC ATMEGA328p: IC Microcontroler keluaran ATMEL dengan boothloader
Arduino UNO.
4. I/O Digital : Header yang dipergunakan untuk inpit dan output digital,
pada pin 3,5,6,9,10,11 memiliki tanda (~) menunjukan bahwa pin tersebut
selain memiliki fasilitas I/O Digital juga memiliki PWM ( Pulse Width Modulation)
dengan rentang nilai output sebesar 8 bit atau setara dengan nilai antara 0-255.
5. Input Analog : digunakan untuk input data sensor, potensiometer dan perangkat
analog input lainya.
6. Power : digunakan untuk mengambil power 5V, 3.3V, GND.
2.1.2Daya (Power)
Arduino UNO dapat disuplai melalui koneksi USB atau dengan sebuah power suplai eksternal. Sumber daya dipilih secara otomatis. Suplai eksternal (non-USB) dapat diperoleh dari sebuah adaptor AC ke DC atau battery. Adaptor dapat dihubungkan dengan mencolokkan sebuah center-positive plug yang panjangnya 2,1 mm ke power jack dari board. Kabel lead dari sebuah battery dapat dimasukkan dalam header/kepala pin Ground (Gnd) dan pin Vin dari konektor POWER. Board Arduino UNO dapat beroperasi pada sebuah suplai eksternal 6 sampai 20 Volt. Jika disuplai dengan yang lebih kecil dari 7 V, kiranya pin 5 Volt mungkin mensuplai kecil dari 5 Volt dan board Arduino UNO bisa menjadi tidak stabil. Jika menggunakan suplai yang lebih dari besar 12 Volt, voltage regulator bisa kelebihan panas dan membahayakan board Arduino UNO. Range yang direkomendasikan adalah 7 sampai 12 Volt. Pin-pin dayanya adalah sebagai berikut:
 VIN. Tegangan input ke Arduino board ketika board sedang menggunakan sumber
suplai eksternal (seperti 5 Volt dari koneksi USB atau sumber tenaga lainnya yang diatur). Kita dapat menyuplai tegangan melalui pin ini, atau jika penyuplaian tegangan melalui power jack, aksesnya melalui pin ini.
 5V. Pin output ini merupakan tegangan 5 Volt yang diatur dari regulator pada
board. Board dapat disuplai dengan salah satu suplai dari DC power jack (7-12V), USB connector (5V), atau pin VIN dari board (7-12). Penyuplaian tegangan melalui pin 5V atau 3,3V membypass regulator, dan dapat membahayakan board.
Hal itu tidak dianjurkan.
 3V3. Sebuah suplai 3,3 Volt dihasilkan oleh regulator pada board. Arus maksimum yang dapat dilalui adalah 50 mA.
 GND. Pin ground.
2.1.3 Memori
ATmega328 mempunyai 32 KB (dengan 0,5 KB digunakan untuk bootloader).
ATmega 328 juga mempunyai 2 KB SRAM dan 1 KB EEPROM (yang dapat dibaca dan ditulis (RW/read and written) dengan EEPROM library).
2.1.4 Input dan Output
Setiap 14 pin digital pada Arduino Uno dapat digunakan sebagai input dan output, menggunakan fungsi pinMode(),digitalWrite(), dan digitalRead(). Fungsi- fungsi tersebut beroperasi di tegangan 5 Volt. Setiap pin dapat memberikan atau menerima suatu arus maksimum 40 mA dan mempunyai sebuah resistor pull-up (terputus secara default) 20-50 kOhm. Selain itu, beberapa pin mempunyai fungsi- fungsi spesial:
 Serial: 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan memancarkan
(TX) serial data TTL (Transistor-Transistor Logic). Kedua pin ini dihubungkan ke pin-pin yang sesuai dari chip Serial Atmega8U2 USB-ke-TTL.
 External Interrupts: 2 dan 3. Pin-pin ini dapat dikonfigurasikan untuk dipicu sebuah
interrupt (gangguan) pada sebuah nilai rendah, suatu kenaikan atau penurunan yang besar, atau suatu perubahan nilai. Lihat fungsi attachInterrupt() untuk lebih jelasnya.
 PWM: 3, 5, 6, 9, 10, dan 11. Memberikan 8-bit PWM output dengan fungsi analogWrite().
 SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin-pin ini mensupport komunikasi SPI menggunakan SPI library.
 LED: 13. Ada sebuah LED yang terpasang, terhubung ke pin digital 13. Ketika pin
bernilai HIGH LED menyala, ketika pin bernilai LOW LED mati.
Arduino UNO mempunyai 6 input analog, diberi label A0 sampai A5, setiapnya memberikan 10 bit resolusi (contohnya 1024 nilai yang berbeda). Secara default, 6 input analog tersebut mengukur dari ground sampai tegangan 5 Volt, dengan itu mungkin untuk mengganti batas atas dari rangenya dengan menggunakan pin AREF dan fungsi analogReference(). Di sisi lain, beberapa pin mempunyai fungsi spesial:
 TWI: pin A4 atau SDA dan pin A5 atau SCL. Mensupport komunikasi TWI dengan menggunakan Wire library
Ada sepasang pin lainnya pada board:
 AREF. Referensi tegangan untuk input analog. Digunakan dengan analogReference().
 Reset. Membawa saluran ini LOW untuk mereset mikrokontroler. Secara khusus,
digunakan untuk menambahkan sebuah tombol reset untuk melindungi yang memblock sesuatu pada board.
2.1.5 Komunikasi
Arduino UNO mempunyai sejumlah fasilitas untuk komunikasi dengan sebuah komputer, Arduino lainnya atau mikrokontroler lainnya. Atmega 328 menyediakan serial komunikasi UART TTL (5V), yang tersedia pada pin digital 0 (RX) dan 1 (TX).
Sebuah Atmega 16U2 pada channel board serial komunikasinya melalui USB dan muncul sebagai sebuah port virtual ke software pada komputer. Firmware 16U2 menggunakan driver USB COM standar, dan tidak ada driver eksternal yang dibutuhkan. Bagaimanapun, pada Windows, sebuah file inf pasti dibutuhkan. Software Arduino mencakup sebuah serial monitor yang memungkinkan data tekstual terkirim ke dan dari board Arduino. LED RX dan TX pada board akan menyala ketika data sedang ditransmit melalui chip USB-to-serial dan koneksi USB pada komputer (tapi tidak untuk komunikasi serial pada pin 0 dan 1). Sebuah Software Serial library memungkinkan untuk komunikasi serial pada beberapa pin digital UNO. Atmega328 juga mensupport komunikasi I2C (TWI) dan SPI.
2.1.6 Programming
Arduino UNO dapat diprogram dengan software Arduino (download). Pilih
“Arduino Uno dari menu Tools > Board(termasuk mikrokontroler pada board). Untuk lebih jelas, lihat referensi dan tutorial. ATmega328 pada Arduino Uno hadir dengan sebuah bootloader yang memungkinkan kita untuk mengupload kode baru ke ATmega328 tanpa menggunakan pemrogram hardware eksternal. ATmega328 berkomunikasi menggunakan protokol STK500 asli (referensi, file C header).
Kita juga dapat membypass bootloader dan program mikrokontroler melalui kepala/header ICSP (In-Circuit Serial Programming); lihat instruksi untuk lebih jelas.
Sumber kode firmware ATmega16U2 (atau 8U2 pada board revisi 1 dan revisi 2) tersedia. ATmega16U2/8U2 diload dengan sebuah bootloader DFU, yang dapat diaktifkan dengan:
 Pada board Revisi 1: Dengan menghubungkan jumper solder pada belakang board (dekat peta Italy) dan kemudian mereset 8U2
 Pada board Revisi 2 atau setelahnya: Ada sebuah resistor yang menarik garis HWB 8U2/16U2 ke ground, dengan itu dapat lebih mudah untuk meletakkan ke dalam mode DFU. Kita dapat menggunakan software Atmel’s FLIP (Windows) atau pemrogram DFU (Mac OS X dan Linux) untuk meload sebuah firmware baru. Atau kita dapat menggunakan header ISP dengan sebuah pemrogram eksternal (mengoverwrite bootloader DFU). Lihat tutorial user-contributed ini untuk informasi selengkapnya.
2.1.7 Bahasa Pemograman Arduino
Seperti yang telah dijelaskan diatas program Arduino sendiri menggunakan bahasa C. walaupun banyak sekali terdapat bahasa pemrograman tingkat tinggi (high level language) seperti pascal, basic, cobol, dan lainnya. Walaupun demikian, sebagian besar dari para programer profesional masih tetap memilih bahasa C sebagai bahasa yang lebih unggul, berikut alasan-alasannya:
 Bahasa C merupakan bahasa yang powerful dan fleksibel yang telah terbukti dapat
menyelesaikan program-program besar seperti pembuatan sistem operasi, pengolah gambar (seperti pembuatan game) dan juga pembuatan kompilator bahasa pemrograman baru.
 Bahasa C merupakan bahasa yang portabel sehingga dapat dijalankan di beberapa
sistem operasi yang berbeda. Sebagai contoh program yang kita tulis dalam sistem operasi windows dapat kita kompilasi didalam sistem operasi linux dengan sedikit ataupun tanpa perubahan sama sekali.
 Bahasa C merupakan bahasa yang sangat populer dan banyak digunakan oleh
programer berpengalaman sehingga kemungkinan besar library pemrograman telah banyak disediakan oelh pihak luar/lain dan dapat diperoleh dengan mudah.
 Bahasa C merupakan bahasa yang bersifat modular, yaitu tersusun atas rutin-rutin
tertentu yang dinamakan dengan fungsi (function) dan fungsi-fungsi tersebut dapat digunakan kembali untuk pembuatan program-program lainnya tanpa harus menulis ulang implementasinya.
 Bahasa C merupakan bahasa tingkat menengah (middle level language) sehingga mudah untuk melakukan interface (pembuatan program antar muka) ke perangkat keras.
 Struktur penulisan program dalam bahasa C harus memiliki fungsi utama, yang
bernama main(). Fungsi inilah yang akan dipanggil pertama kali pada saat proses eksekusi program. Artinya apabila kita mempunyai fungsi lainselain fungsi utama, maka fungsi lain tersebut baru akan dipanggil pada saat digunakan. Oleh karena itu bahasa C merupakan bahasa prosedural yang menerapakan konsep runtutan (program dieksekusi per baris dari atas ke bawah secara berurutan), maka apabila kita menuliskan fungsi-fungsi lain tersebut dibawah fungsi utama, maka kita harus menuliskan bagian prototipe (prototype), hal ini dimaksudkan untuk mengenalkan terlebih dahulu kepada kompiler daftar fungsi yang akan digunakan di dalam program. Namun apabila kita menuliskan fungsi-fungsi lain tersebut diatas atau sebelum fungsi utama, maka kita tidak perlu lagi untuk menuliskan bagian prototipe diatas.
2.1.8 Reset Otomatis (Software)
Dari pada mengharuskan sebuah penekanan fisik dari tombol reset sebelum sebuah penguploadan, Arduino Uno didesain pada sebuah cara yang memungkinkannya untuk direset dengan software yang sedang berjalan pada pada komputer yang sedang terhubung. Salah satu garis kontrol aliran hardware (DTR) dari ATmega8U2/16U2 dihubungkan ke garis reset dari ATmega328 melalui sebuah kapasitor 100 nanofarad. Ketika saluran ini dipaksakan (diambil rendah), garis reset jatuh cukup panjang untuk mereset chip. Software Arduino menggunakan kemampuan ini untuk memungkinkan kita untuk mengupload kode dengan mudah menekan tombol upload di software Arduino. Ini berarti bahwa bootloader dapat mempunyai
sebuah batas waktu yang lebih singkat, sebagai penurunan dari DTR yang dapat menjadi koordinasi yang baik dengan memulai penguploadan.
Pengaturan ini mempunyai implikasi. Ketika Arduino Uno dihubungkan ke sebuah komputer lain yang sedang running menggunakan OS Mac X atau Linux, Arduino Uno mereset setiap kali sebuah koneksi dibuat dari software (melalui USB).
Untuk berikutnya, setengah-detik atau lebih, bootloader sedang berjalan pada Arduino UNO.
Ketika Arduino UNO diprogram untuk mengabaikan data yang cacat/salah (contohnya apa saja selain sebuah penguploadan kode baru) untuk menahan beberapa bit pertama dari data yang dikirim ke board setelah sebuah koneksi dibuka. Jika sebuah sketch sedang berjalan pada board menerima satu kali konfigurasi atau data lain ketika sketch pertama mulai, memastikan bahwa software yang berkomunikasi menunggu satu detik setelah membuka koneksi dan sebelum mengirim data ini.
Arduino Uno berisikan sebuah jejak yang dapat dihapus untuk mencegah reset otomatis. Pad pada salah satu sisi dari jejak dapat disolder bersama untuk mengaktifkan kembali. Pad itu diberi label “RESET-RN” Kita juga dapat menonaktifkan reset otomatis dengan menghubungkan sebuah resistor 110 ohm dari tegangan 5V ke garis reset; lihat thread forum ini untuk lebih jelasnya.
2.1.9 Proteksi Arus lebih USB
Arduino UNO mempunyai sebuah sebuah sekring reset yang memproteksi port USB komputer dari hubungan pendek dan arus lebih. Walaupun sebagian besar komputer menyediakan proteksi internal sendiri, sekring menyediakan sebuah proteksi tambahan. Jika lebih dari 500 mA diterima port USB, sekring secara otomatis akan
memutuskan koneksi sampai hubungan pendek atau kelebihan beban hilang. Panjang dan lebar maksimum dari PCB Arduino UNO masing-masingnya adalah 2.7 dan 2.1 inci, dengan konektor USB dan power jack yang memperluas dimensinya. Empat lubang sekrup memungkinkan board untuk dipasangkan ke sebuah permukaan atau kotak. Sebagai catatan, bahwa jarak antara pin digital 7 dan 8 adalah 160 mil. (0.16"), bukan sebuah kelipatan genap dari jarak 100 mil dari pin lainnya.
2.2 SENSOR
Sensor adalah suatu peranti yang diguanakan untuk melakukan suatu pengamatan
terhadap ransangan dan mengubahnya kedalam bentuk isyarat sehinggan bisa diukur.
Rangsangan dapat berupa akustik, elektrik, magnetik, optikk, termal, mapun mekanik.
Ada dua jenis sensor, yaitu sensor digital dan sensor analog. Hal itu didasarkan pada jenis isyarat yang dihasilkan. Sensor analog berarti bahwa sensor yang menghasilkan isyarat analog, sedangkan sensor digital membangkitkan isyarat digital. Pada sensor digital, keluaran hanya berupa salah satu dari dua keadaan, yakni HIGH (1) atau LOW (0). Pada sensor
analog, nilai keluarannya lebih bervariasi. Pada penggunaan sensor, hal penting yang perlu dilakukan tegangan maksimun yang dikeluarkan oleh sensor. Sebagai contoh, pin Arduino hanya dapat menerima tegangan maksimum sebesar 5V. Maka, harus diperhatikan bahwa keluaran sensor tidak lebih daripada 5V. Jika tegangan maksimum keluaran sensor sebesar 5V, sensor dapat dihubungkan secara langsung ke pin-pin Arduino. Akan tetapi, jika tegangan maksimum yang dihasilkan sensor melebihi 5V,
harus ada amtarmuka yang perlu dilakukan supaya tegangan maksimum yang masuk ke pin Arduino adalah 5V. Solusi sederhana yang bisa dilakukan adalah dengan menggunakan pembagi tegangan.
2.2.1 Sensor DHT11
SensorDHT11 adalah sensor yang berguna untuk mengukur suhu sekaligus
kelembaban udara. Sensor ini memerlukan catu daya sebesar 3V hingga 5V DC.
Pengukuran suhu adalah antara 0oC dan 50oC, dengan tingkat presisi ±2oC. Adapun kelembaban udara yang dapat diukur berkisar antara 20 hingga 90% dengan tingkat presisi ± 5%. Supaya bisa diperoleh hasil yang stabil, jarak antaradua pembacaan perlu dilakukan paling tidak adalah satu detik. Sensor DHT11 memiliki tiga pin.
GAMBAR 2.2 DHT11
1. VCC dihubungkan ke sumber tegangan tegangan 5V.
2. DATA dihubungkan ke pin analog.
3. GND dihubungkan ke ground.
2.3 RELAY
Relay adalah komponen listrik yang bekerja berdasarkan prinsip induksi medan
elektromagnetis. Jika penghantar di aliri oleh arus listrik, maka disekitar penghantar tersebut timbul medan magnet. Medan magnet tersebut kemudian di induksikan ke logam. Relay relatif merupakan alat elektromagnetik yang sederhana, dapat terdiri dari sebuah kumparan atau selenoida, sebuah inti ferromagnetic dan armatur atau saklar yang dapat berfungsi sebagai penyambung atau pemutus arus.
Gambar 2.3 Relay
Relay yang paling sederhana ialah relay elektromekanis yang memberikan pergerakan mekanis saat mendapatkan energi listrik. Secara sederhana relay elektromekanis ini didefinisikan sebagai berikut.
 Alat yang menggunakan gaya elektromagnetik untuk menutup atau membuka kontak saklar.
 Saklar yang digerakkan secara mekanis oleh daya atau energi listrik.
Sebagai komponen elektronika, relay mempunyai peran penting dalam sebuah sistem rangkaian elektronika dan rangkaian listrik untuk menggerakan sebuah perangkat yang memerlukan arus besar tanpa terhubung langsung dengan perangakat pengendali yang mempunyai arus kecil. Dengan demikian relay dapat berfungsi sebagai pengaman.
Relay terdiri dari 3 bagian utama, yaitu:
1. Common, merupakan bagian yang tersambung dengan Normally Close (dalam keadaan normal).
2. Koil (kumparan), merupakan komponen utama relay yang digunakan untuk menciptakan medan magnet.
3. Kontak, yang terdiri dari Normally Close dan Normally Open.
2.3.1 DASAR-DASAR RELAY
Penemu relay pertama kali adalah Joseph Henry pada tahun 1835. Dalam
pemakaiannya biasanya relay yang digerakkan dengan arus DC dilengkapi dengan sebuah dioda yang diparalel dengan lilitannya dan dipasang terbalik yaitu anoda pada tegangan () dan katoda pada tegangan (+). Ini bertujuan untuk mengantisipasi
sentakan listrik yang terjadi pada saat relay berganti posisi dari on ke off agar tidak merusak komponen di sekitarnya.
Penggunaan relay perlu memperhatikan tegangan pengontrolnya serta kekuatan relay men-switch arus/tegangan. Biasanya ukurannya tertera pada body relay. Misalnya relay 12VDC/4 A 220V, artinya tegangan yang diperlukan sebagai pengontrolnya adalah 12Volt DC dan mampu men-switch arus listrik (maksimal) sebesar 4 ampere pada tegangan 220 Volt. Sebaiknya relay difungsikan 80% saja dari kemampuan maksimalnya agar aman, lebih rendah lagi lebih aman. Relay jenis lain ada yang namanya reedswitch atau relay lidi. Relay jenis ini berupa batang kontak terbuat dari besi pada tabung kaca kecil yang dililitin kawat. Pada saat lilitan kawat dialiri arus, kontak besi tersebut akan menjadi magnet dan saling menempel sehingga menjadi
saklar yang on. Ketika arus pada lilitan dihentikan medan magnet hilang dan kontak kembali terbuka (off).
2.3.2 PRINSIP KERJA
Relay merupakan komponen listrik yang memiliki prinsip kerja magnet dengan induksi listrik. Relay terdiri atas bagian-bagian utama sebagai berikut.
1. Coil atau Kumparan, merupakan gulungan kawat yang mendapat arus listrik.
adalah sejenis saklar yang pergerakannya tergantung dari ada tidaknya arus listrik di coil.
2. Contact atau Penghubung, adalah sejenis saklar yang pergerakannya
tergantung dari ada tidaknya arus listrik di coil. Contact ada 2 jenis : Normally Open (kondisi awal sebelum diaktifkan open), dan Normally Closed (kondisi awal sebelum diaktifkan close).
2.3.3 CARA KERJA
Cara kerja relay sangat sederhana. Di sini kita akan membahas relay pada
umumnya.Relay terdiri dari 2 terminal trigger, 1 terminal input dan 1 terminal output.
1. Terminal trigger : yaitu terminal yang akan mengaktifkan relay..seperti alat electronic lainya relay akan aktif apabila di aliri arus + dan arus -. Pada contoh relay yang kita gunakan terminal trigger ini adalah 85 dan 86.
2. Terminal input : yaitu terminal tempat kita memberikan masukan..pada contoh adalah terminal 30
3. Terminal output : yaitu tempat keluarnya output pada contoh adalah terminal 87
Ada beberapa jenis relay berdasarkan cara kerjanya yaitu:
1. Normaly On
Kondisi awal kontaktor tertutup (On) dan akan terbuka (Off) jika relay diaktifkan dengan cara memberi arus yang sesuai pada kumparan atau koil relay. Istilah lain kondisi ini adalah Normaly Close (NC).
2. Normaly Off
Kondisi awal kontaktor terbuka (Off) dan akan tertutup jika relay diaktifkan dengan cara memberi arus yang sesuai pada kumparan atau koil relay. Istilah lain kondisi ini adalah Normaly Open (NO).
3. Change-Over (CO) atau Double-Throw (DT)
Relay jenis ini memiliki dua pasang terminal dengan dua kondisi yaitu Normaly Open (NO) dan Normaly Close (NC).
Selain itu, seperti saklar, relay juga dibedakan berdasar pole dan throw yang
dimilikinya. Pole adalah banyaknya kontak yang dimiliki oleh relay. Sedangkan throw adalah banyaknya kondisi (state) yang mungkin dimiliki kontak. Berikut ini
penggolongan relay berdasar jumlah pole dan throw atau disebut juga sebagai simbol relay.
2.3.4 FUNGSI RELAY
Fungi atau kegunaan relay dalam dunia elektronika sebenarnya juga sama seperti dalam teknik listrik. Hanya saja kebanyakan relay yang digunakan dalam teknik elektronik adalah relay dengan voltase kecil seperti 6 Volt, 12 Volt, 24 Volt berbeda dengan teknik listrik yang memakai relay 220 Volt dan 110 Volt. Namun ada juga dalam teknik elektronik yang memakai relay dengan voltase tinggi. Walau ada perbedaan pemakaian voltase pada relay, sebenarnya relay memiliki fungsi atau kegunaan yang sama yakni sebagai alat pengganti saklar yang bekerja untuk
mengontrol atau membagi arus listrik ataupun sinyal lain ke sirkuit rangkaian lainnya.
Secara garis besar, fungsi relay adalah sebagai berikut.
 Kontrol tegangan tinggi rangkaian dengan sinyal bertegangan rendah, seperti dalam beberapa jenis modem atau audio amplifier.
 Kontrol sebuah rangkaian arus tinggi dengan sinyal arus rendah, seperti pada solenoid starter dari sebuah mobil.
 Mendeteksi dan mengisolasi kesalahan pada jalur transmisi dan distribusi dengan membuka dan menutup pemutus rangkaian (perlindungan relay).
Sebuah kumparan relay DPDT AC dengan kemasan “ice cube”.
 Isolasi mengendalikan rangkaian dari rangkaian yang dikontrol ketika kedua berada pada potensi yang berbeda, misalnya ketika mengendalikan sebuah perangkat bertenaga utama dari tegangan rendah switch. Yang terakhir ini sering digunakan untuk mengontrol pencahayaan kantor sebagai kawat tegangan rendah dapat dengan mudah diinstal di partisi, yang dapat dipindahkan sesuai kebutuhan sering berubah. Mereka mungkin juga akan
dikendalikan oleh hunian kamar detektor dalam upaya untuk menghemat energi.
 Logika fungsi. Sebagai contoh, DAN fungsi boolean direalisasikan dengan menghubungkan relay normal kontak terbuka secara seri, maka fungsi ATAU dengan menghubungkan normal kontak terbuka secara paralel. Perubahan atas atau Formulir C kontak melakukan XOR fungsi. Fungsi yang sama untuk NAND dan NOR yang dicapai dengan menggunakan kontak normal tertutup.
Tangga bahasa pemrograman yang sering digunakan untuk merancang jaringan logika relay.
 Awal komputasi. Sebelum tabung vakum dan transistor, relay digunakan sebagai unsur-unsur logis dalam komputer digital.
 Safety logika kritis. Karena relay jauh lebih tahan daripada semikonduktor radiasi nuklir, mereka banyak digunakan dalam keselamatan logika kritis, seperti panel kontrol penanganan limbah radioaktif mesin.
 Waktu tunda fungsi. Relay dapat dimodifikasi untuk menunda pembukaan atau penutupan menunda satu set kontak. Yang sangat singkat (sepersekian detik) penundaan ini akan menggunakan tembaga disk antara angker dan bergerak blade perakitan. Arus yang mengalir dalam disk mempertahankan medan magnet untuk waktu yang singkat, memperpanjang waktu rilis. Untuk sedikit lebih lama (sampai satu menit) keterlambatan, sebuah dashpot digunakan.
Sebuah dashpot adalah sebuah piston diisi dengan cairan yang diperbolehkan untuk melarikan diri perlahanlahan. Jangka waktu dapat divariasikan dengan meningkatkan atau menurunkan laju aliran. Untuk jangka waktu lebih lama, mesin jam mekanik timer diinstal.
2.3.5 APLIKASI RELAY
Relay umumnya digunakan untuk hal-hal di bawah ini, yaitu :
1. Untuk mengendalikan rangkaian tegangan tinggi melalui sinyal tegangan rendah.
2. Untuk mengendalikan rangkaian dengan arus yang tinggi melalui sinyal arus kecil.
3. Untuk mendeteksi dan mengisolasi kegagalan pada jalur transmisi dan distribusi dengan membuka atau menutup circuit breaker.
4. Untuk mengisolasi rangkaian pengendali dari rangkaian yang dikendalikan jika potensial yang digunakan berbeda. Misalnya untuk mengendalikan rangkaian daya tegangan tinggi melalui switch tegangan rendah.
2.4 Liquid Crystal Display (LCD)
Liquid crystal display adalah suatu jenis media tampil yang menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang misalnya alal–alat elektronik seperti televisi, kalkulator, atau pun layar komputer.
Gambar 2.5 LCD 2x16
LCD sangat berfungsi sebagai penampil yang nantinya akan digunakan untuk menampilkan status kerja alat. Adapun fitur yang disajikan dalam LCD ini adalah:
 Terdiri dari 16 karakter dan 2 baris.
 Mempunyai 192 karakter tersimpan.
 Terdapat karakter generator terprogram.
 Dapat dialamati dengan mode 4-bit dan 8-bit.
 Dilengkapi dengan back light.
2.4.1 Konfigurasi LCD 2 x 16
Tabel 2.2 Konfigurasi LCD
2.4.2 Prinsip Kerja LCD
Cara kerja LCD adalah Pada aplikasi umumnya RW diberi logika rendah “0”.
Bus data terdiri dari 4-bit atau 8-bit. Jika jalur data 4-bit maka yang digunakan ialah DB4 sampai dengan DB7. Sebagaimana terlihat pada table diskripsi, interface LCD merupakan sebuah parallel bus, dimana hal ini sangat memudahkan dan sangat cepat dalam pembacaan dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang 8-bit dikirim ke LCD secara 4-bit atau 8 bit pada satu waktu.
Jika mode 4-bit yang digunakan, maka 2 nibble data dikirim untuk membuat sepenuhnya 8-bit (pertama dikirim 4-bit MSB lalu 4-bit LSB dengan pulsa clock EN setiap nibblenya). Jalur kontrol EN digunakan untuk memberitahu LCD bahwa mikrokontroller mengirimkan data ke LCD. Untuk mengirim data ke LCD program harus menset EN ke kondisi high “1” dan kemudian menset dua jalur kontrol lainnya (RS dan R/W) atau juga mengirimkan data ke jalur data bus.
Mode 8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk kontrol, 8 pin untuk data). Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit (3 pin untuk kontrol, 4 pin untuk data). Bit RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di set (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca.
2.5 Resistor
Konsep resistansi sebagai suatu yang melawan arus. Bentuk-bentuk resistor konvensional mengikuti suatu hukum garis lurus ketika tegangan diplot terhadap arus dan ini memungkinkan kita untuk menggunakan resistor sebagai suatu sarana untuk mengkonveksi arus menjadi jatuh tegangan dan sebaliknya. Karena itu resistor merupakan sarana untuk mengkontrol arus dan tegangan yang bekerja dalam rangkaian-rangkaian elektronika. Resisor juga dapat berperan sebagai beban untuk mensimulasi keberadaan suatu rangkaian selama pengujian.
Gambar 2.4 Resistor
Spesifikasi-spesifikasi untuk suatu resistor umumnya meliputi nilai resistansi (dinyatakan dalam ohm (Ω), kilohm (kΩ) atau megaohm (MΩ)), nilai ketepatan atau tolerasnsi (dinyatakan sebagai penyimpangan maksimum yang diizinkan dari nilai yang tertera), dan rating daya (yang harus sama dengan atau lebih besar daripada disipasi daya maksimumnya).
Nilai yang tertera pada susatu resistor bukanlah resistansi eksaknya.
Penyimpangan-penyimpangan kecil dalam nilai resistansi pasti selalu terjadi akibat adanya toleransi produksi. Resistor tersedia dalam beberapa seri yang nilai-nilainya merupakan kelipatan sepuluh, dimana jumlah nilai yang diberikan setiap seri ditentukan oleh toleransinya. Untuk mencakup kisaran nilai resistansi yang sepenuhnya menggunakan resistor yang bertoleransi ±20%, kita harus menyediakan enam nilai dasar.
Rating daya resistor berkaitan dengan suhu operasi dan resistor akan mengalami penurunan rating pada suhu yang tinggi. Jika keandalan merupakan hal yang penting, resistor harus dioperasikan jauh dibawah nilai normal disipasi daya maksimumnya.
Resistor karbon dan resistor oksida logam umumnya ditera dengan kode-kode warna yang menunjukkan nilai dan toleransinya. Ada dua metode pengkodean warna
yang umumnya digunakan. Yang satu adalah dengan menggunakan empat cincin warna dan yang lain menggunakan lima cincin warna.
2.6 Adaptor
Adaptor merupakan alat atau jembatan untuk menyambungkan sumber tegangan DC. Tegangan DC ini dibutuhkan oleh berbagai macam rangkaian elektronik untuk dapat dioperasikan. Seperti halnya adaptor/ power supply yang digunakan pada hiasan lampu akrilik. Rangkaian inti dari adaptor/ power supply adalah suatu rangkaian penyearah yaitu rangkaian yang mengubah sinyal bolak-balik (AC) menjadi sinyal searah (DC). Proses pengubahan dimulai dari penye-arah oleh diode, penghalusan tegangan kerut (Ripple Viltage Filter) dengan menggunakan condensator dan pengaturan (regulasi) oleh rangkaian regulator. Pengaturan meliputi pengubahan tingkat tegangan atau arus. Pada teknik regulasi pada pembuatan adaptor, kita mengenal teknik regulasi daya linier dan teknik regulasi switching. Sistem rangkaian penyearah ada 4 fungsi dasar yaitu:
 Tranformasi (travo) tegangan yang diperlukan untuk menurunkan tegangan yang diinginkan.
 Rangkaian penyearah, rangkaian ini untuk mengubah tingkat tegangan arus bolak balik ke arus searah.
 Filter (Condesator), merupakan rangkaian untuk memproses fluktuasi penyearah yang menghasilkan keluaran tegangan DC yang lebih rata.
 Regulasi adalah parameter yang sangat penting pada adaptor dan regulator tegangan dengan bahan bervariasi.
Pada teknologi modern saat ini adaptor/ power supply rata-rata sudah tidak lagi menggunakan transformator step down, dimana tegangan AC diturunkan terlebih dahulu melalui sebuah transformator step down keluaran trafo diserahkan dengan diode dan diratakan dengan kapasitor elekronik (elco).
Adaptor/ power supply sekarang umumnya menggunakan sistem switching, sinyal AC dari tegangan jala-jala listrik 220V disearahkan lebih dahulu ketegangan DC melalui sebuah rangkaian diode penyearah dan elco. Tegangan DC hasil penyearah ini kemudian disaklar on-off secara terus menerus dengan frekuensi tertentu sehingga memungkinkan nilai indikator dari trafo menjadi kecil. Hal ini khususnya untuk memperkecil ukuran power supply.
2.7 Kipas Angin
Kipas merupakan alat pendingin, pada penelitian ini , kipas angin merupakan salah satu alat yg terpenting dalam penelitian ini,dan merupakan salah satu alat yang di gunakan untuk pembentuk faktor suhu yang di inginkan
BAB III
PERANCANGAN DAN PEMBUATAN
3.1 Metodologi Penelitian 3.1.1 Waktu dan Tempat
Perancangan ini telah dilakukan pada bulan mei sampai juni 2017 di Sikonek, rumah tinggal ,dan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
3.1.2 Alat dan Bahan
3.1.2.1 Alat yang Digunakan Dalam Penelitian Ini
1. Satu set komputer berfungsi untuk pengelolaan data dan pemrograman 2. Bor listrik berfungsi untuk melubangi material
3. Solder berfungsi untuk mencairakan timah dan menyambung beberapa komponen elektronik
4. Obeng berfungsi untuk memasang baut dan mur
5. Mesin potong triplek berfungsi untuk memotong triplek dan akrilik 6. Attractor berfungsi sebagai alat penyedot timah pada PCB
3.1.2.2 Bahan yang Digunakan
 Komponen Mekanik
1. Mur dan baut berfungsi sebagai penyambung komponen 2. Akrilik berfungsi sebagai pelindung komponen pada alat
3. Spacer berfungsi sebagai penyanggah akrilik dengan triplek 4. Triplek berfungsi sebagai tempat meletakkan alat
 Komponen Elektronik
1. Arduino berfungsi sebagai mikrokontroler
2. Sensor DHT11 berfungsi untuk mendeteksi asap dan sensor
3. LCD (Liquid Crystal Display) berfungsi untuk menampilkan status kerja alat 4. Relay Berfungsi Untuk menggerakkan stop kontak
5. Resistor berfungsi untuk menghambat tegangan yang masuk pada LED 6. Adaptor berfungsi sebagai supply tegangan
7. Kipas angin sebagai pendingin ruangan
3.2 Flowchart System
Start
Inisialisasi
Tampilkan ke LCD (suhu)
Suhu >setting point
Kipas On Kipas Off
End
3.3Spesifikasi Sistem
Dalam perancangan alat pengontrolan suhu ini , mikrokontroler Arduino Uno digunakan sebagai komponen utama yang mengatur komponen lainnya seperti: Sensor DHT11, Relay LCD dan kipas angin . Hardware ini dirancang agar mikrokontroler Arduino dapat menerima masukan dari sensor MQ7, sehingga fungsi alat untuk mengatur suhu ruangan. Hardware pengontrolan suhu ruangan dirancang sesuai diagram blok yang terdapat pada gambar berkut.
Gambar 3.1 Diagram Blok System
Berikut keterangan singkat dari gambar blok di atas:
1.Sensor DHT11 untuk mendeteksi suhu dan asap
2. Arduino Uno untuk menjalankan alat sesuai perintah setelah data dari sensor di terima
Arduino Uno Sensor DHT11
Kipas Angin LCD
3. LCD 16x2 untuk menampilkan suhu ruangan yang di baca oleh sensor dan di proses oleh arduino uno
4. Kipas untuk mendinginkan ruangan saat sensor membaca suhu ruang yang dianggap terlalu tinggi maka kipas akan bergerak sendirinya untuk mendinginkan ruangan.
3.4 Rangkaian Mikrokontroler Arduino Uno
Skema rangkaian sistem minimum mikrokontroller dapat dilihat pada gambar berikut
3.5 .Rangkaian Sensor DHT11
Pada sensor suhu DHT11 dapt mengukur suhu pada ruangan atau inkubator , dan bisa mngukur kelembaan udara di sekitarnya, sensor suhu merupakan komponen yang di pakai untuk mengubah besaran panas ke listrik cara kerja sensor suhu DHT11 ini juga
sering digunakan untuk rumah kaca berfungsi untuk mengatur kelembapan udara , dan cara kerjanya jika udara terlalu kering , dia akan mengaktifkan hujan buatan untuk menurunkan tingkat kelembapan udara jika terlalu kering, begitu juga dengan menagtur suhu ruangan, jka dalam ruangan tersebut sudah terlalu panas , sensor DHT11 akan bekerja untuk menurunkan suhu di dalam ruangan tersebut.
3.6.Rangkaian Relay
Gambar 3.5. Rangkaian Relay
Pada alat ini, relay digunakan untuk menggerakkan kontak saklar, Untuk blok ini memiliki 3 komponen yang saling berinergi, dimana terdapat relay, transistor c945 dan resistor 1k. Cara kerjanyapun sama seperti biasa, relay akan membutuhkan
tegangan 5v, untuk menyala, jika kita menggunakan transistor c945 yang akan kita gunakan untuk penghubung saklar dan memberi asupan tegangan 5v ke relay, transistor c945 akan stabil jika kita menggunakan resistansi 1k. Dan jika ke 3 komponen tersebut sudah kita gabungkan makan ke 3 komponen tersebut akan saling bersinergi satu sama lain.
mikrokontroler ini data diperintahkan atau di jalankan, setelah semua diolah di arduino kemudian, akan mendapatkan data ,kemudian data akan di lanjutkan ke RELAY , karena relay mempunyai tugas untuk menggerakkan kontak saklar dan memerintahkan lampu untuk hidup ataupun mati. Melalui data data yang di kirim oleh arduino ke relay.
3.6 Rangkaian LCD
Pada alat ini, display yang digunakan adalah LCD (Liquid Crystal Display) 16 x 2. Untuk blok ini tidak ada komponen tambahan karena arduino dapat memberi data langsung ke LCD, pada LCD Hitachi - M1632 sudah terdapat driver untuk mengubah data ASCII output mikrokontroler menjadi tampilan karakter. Pemasangan potensio sebesar 5 KΩ untuk mengatur kontras karakter yang tampil.
Dari gambar 3.4, rangkaian ini terhubung ke PB.1 - PB.7, yang merupakan pin I/O dua arah dan pin fungsi khusus, yaitu sebagai Timer/Counter, komperator analog dan SPI mempunyai fungsi khusus sebagai pengiriman data secara serial. Sehingga
nilai yang akan tampil pada LCD display akan dapat dikendalikan oleh Mikrokontroller Atmega8.
BAB IV
PENGUJIAN DAN HASIL
4.1 PENGUJIAN
4.1.1 Pengujian Rangkaian Mikrokontroler Arduino Uno
Pemrograman menggunakan mode ISP (In System Programming) mikrokontroler harus dapat diprogram langsung pada papan rangkaian dan rangkaian mikrokontroler harus dapat dikenali oleh program Arduino.cc. Pada pengujian ini berhasil dilakukan dengan dikenalinya jenis mikrokontroler oleh program downloader yaitu Arduino Uno.
Gambar 4.1. Informasi Signature Mikrokontroler Arduino Uno R3
Apabila Chip Signature sudah dikenali dengan baik dan dalam waktu singkat, bisa dikatakan rangkaian mikrokontroler Arduino Uno menjalankan pekerjaan dengan baik dengan mode ArduinoISP-nya.
4.1.2 Pengujian Rangkaian Sensor DHT11
Pada sensor suhu DHT11 dapt mengukur suhu pada ruangan atau inkubator , dan bisa mngukur suhu dan kelembaan udara di sekitarnya, pada percobaan ini sensor DHT 11 dapat mengatur suhu ruangan , dan dalam perobaan ini juga sensor DHT11 bisa mendeteksi asap yg masuk kedalam ruangan, sensor suhu merupakan komponen yang di pakai untuk mengubah besaran panas ke listrik cara kerja sensor suhu DHT11 ini juga sering digunakan untuk rumah kaca berfungsi untuk mengatur kelembapan udara , dan cara kerjanya jika udara terlalu kering , dia akan mengaktifkan hujan buatan untuk menurunkan tingkat kelembapan udara jika terlalu kering, begitu juga dengan menagtur suhu ruangan, jka dalam ruangan tersebut sudah terlalu panas , sensor DHT11 akan bekerja untuk mendeteksi suhu di dalam ruangan tersebut.
4.1.3 Pengujian Rangkaian Relay
Pada alat ini, relay digunakan untuk menggerakkan kontak saklar, Untuk blok ini memiliki 3 komponen yang saling berinergi, dimana terdapat relay, transistor c945 dan resistor 1k. Cara kerjanyapun sama seperti biasa, relay akan membutuhkan tegangan 5v, untuk menyala, jika kita menggunakan transistor c945 yang akan kita gunakan untuk penghubung saklar dan memberi asupan tegangan 5v ke relay, transistor c945 akan stabil jika kita menggunakan resistansi 1k. Dan jika ke 3 komponen tersebut sudah kita gabungkan makan ke 3 komponen tersebut akan saling bersinergi satu sama lain.
mikrokontroler ini data diperintahkan atau di jalankan, setelah semua diolah di arduino kemudian, akan mendapatkan data ,kemudian data akan di lanjutkan ke RELAY , karena relay mempunyai tugas untuk menggerakkan kontak saklar dan
memerintahkan untuk kipas bergerak atau tidak karna ada nya asap yang masu ke dalam ruangan. Melalui data data yang di kirim oleh arduino ke relay. Pengujian pada alat ini Relay cukup bekerja dengan baik .
4.1.4 Pengujian Rangkaian LCD
Bagian ini hanya terdiri dari sebuah LCD dot matriks 2 x 16 karakter yang berfungsi sebagai tampilan hasil pengukuran dan tampilan dari beberapa keterangan.
LCD dihubungkan langsung ke pin 12, 11, 10, 7, 6, 5 dan 4 dari Arduino yang berfungsi mengirimkan data hasil pengolahan untuk ditampilkan dalam bentuk alfabet dan numerik pada LCD.Display karakter pada LCD diatur oleh pin EN, RS dan RW:
Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa anda sedang mengirimkan sebuah data. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low “0” dan set ( high ) pada dua jalur kontrol yang lain RS dan RW. Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika high ”1”, maka program akan melakukan pembacaan memori dari LCD.
Sedangkan pada aplikasi umum pin RW selalu diberi logika low (0).
Berdasarkan keterangan di atas maka kita sudah dapat membuat progam untuk menampilkan karaker pada display LCD. Adapun program yang diisikan ke mikrokontroller untuk menampilkan karakter pada display LCD adalah sebagai berikut:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 9, 8, 7, );
void setup() {
lcd.begin(16, 2);
void loop(){
lcd.setCursor(0,0);
lcd.print("Penetas Telur");
lcd.setCursor(12,0);
lcd.print("Berbasis Arduino");
}
4.1.5 Pengujian kipas Angin
Pada kipas angin dilakukan pengujian bergerak atau tidaknya. Pada pengujian ini , kipas angin bekerja dengan baik, dimana kipas bergerak karna sensor DHT11 mendeteksi adanya asap yang masuk dalam ruangan , kemudian kipas bergerak sesuai dengan asap yang masuk, apakah asap itu banyak atau sedikit, jika banyak kipas aan bergerak kencang dan apabila sedikit maka kipas akan bergerak pelan saja.asap yg masuk akan di keluarkan kipas dari ruangan demi menjaga kestabilan suhu ruangan yang bebas dari asap .
4.2 ANALISA DATA
4.2.1 Pengujian Sensor Suhu
Pengujian sensor suhu ini dilakukan oleh sensor Dht11 dengan termometer digital dengan membandingkan hasil pengukuran dari sensor DHT11 dengan
termometer ruangan digital. Pengambilan suhu dilakukan sebanyak 5x dengan interval 1 detik untuk setiap percobaan , kemudian data pengujian suhu dicari rata ratanya untuk di bandingkan dengan hasil pengukuran dari termometer digital.
Berikut ini adalah hasil pengujian sensor suhu dan termometer digital
NO DHT11 Rata rata Termometer Digital
1 27 27 27 27 27 27 27,2
2 28 28 28 28 28 28 28,5
3 28 28 28 28 28 28 28
4 28 27 28 28 28 27,8 28,5
5 26 27 27 26 26 26,4 26,2
4.2.2 Grafik perbandingan DHT11 dan Termometer Digital
24.5 25 25.5 26 26.5 27 27.5 28 28.5 29 29.5
1 2 3 4 5
Grafik Perbandingan DHT11 dengan Termometer digital
DHT11
Termometer Digital
BAB V
PENUTUP
5.1.Kesimpulan
Berdasarkan penelitian yang telah di lakukan, maka dapat di simbulkan bahwa :
1.Pada pengujian perbandingan antara sensor suhu DHT11 dan termometer digital dapat di simpulkan hasil, bahwa perbandingan rata rata ±0,7. Dan bisa di simpulkan bahwa antara sensor suhu DHT11 dan termometer digital dapat mengukur suhu dengan baik.
2 . pada pengujian pengontrolan suhu otomatis ini, semua alat bekerja dengan baik arduino sebagai otak dalam alat ini bekerja dengan baik,daat mengontrol semua nya, dimana sensor DHT11 juga bekerja dengan baik dalam mengontrol suhu ruangan daln mendeteksi adanya asap pada ruangan, kemudian kipas anginjuga bekerja dengan baik , karna bisa menghilangkan asap yg masuk dalam ruangan tersebut .dan kipas bisa membuang asap dengan baik.
3 . Pada pengontrolan suhu ini juga LCD bekerja dengan baik karna bisa membaca berapa suhu ruangan tersebut dan kelembapannya dan kemudian di tamppilkannya nilai darisuhu dan kelembapan ruangan tersebut.
5.2 saran
Dari hasil Proyek ini masih terdapat beberapa kekurangan dan dimungkinkan untuk pengembangan lebih lanjut. Oleh karenanya penulis merasa perlu untuk memberi saran sebagai berikut
1.Untuk pengembangan selanjutnya penulis mengajukan pengembangan menggunakan sensor MQ7 sebagai pendeteksi asap yg keluar dari ruangan tersebut.
2. Untuk kedepannya menggunkan sensor sensor yg lebih baik dan lebih sensitif lagi.
DAFTAR PUSTAKA
http://belajar-dasar-pemrograman.blogspot.co.id/2013/03/arduino-uno.html
Diakses pada Tanggal : 07/06/2017, Pukul : 20:10
http://cahaya14design.wordpress.com/2014/05/07/pengertian-fungsi-adaptor/
Diakses pada Tanggal : 07/06/2017, Pukul : 20:37
http://www.geraicerdas.com/sensor/analog-gas-sensor-DHT11-detail
Diakses pada Tanggal : 08/06/2017, Pukul : 14:00
http://www.leselektronika.com/2012/06/liguid-crystal-display-lcd-16-x-2.html
Diakses pada Tanggal : 08/04/2017, Pukul : 14:47
Woollard, Barry. 2003. Elektronika Praktis. Jakarta: Pradnya Paramita
PROGRAM PENGONTROLAN SUHU DAPUR
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
#include <dht11.h>
dht11 DHT;
#define DHT11_PIN 2
int kalibrasi=0,hkalibrasi=0,sawal=0,psuhu=0,ssiram=0;
int chk;
int kipas=4;
void setup(){
pinMode(kipas,OUTPUT);
lcd.begin(16, 2);
Serial.begin(9600);
lcd.clear();
lcd.setCursor(4, 0);
lcd.print("MAYMUNAH");
lcd.setCursor(3, 1);
lcd.print("142408046");
delay(5000);
Serial.println("DHT TEST PROGRAM ");
Serial.print("LIBRARY VERSION: ");
Serial.println(DHT11LIB_VERSION);
Serial.println();
Serial.println("Type,\tstatus,\tHumidity (%),\tTemperature (C)");
digitalWrite(4, 0);
}
void nsuhu(){
Serial.print("DHT11, \t");
chk = DHT.read(DHT11_PIN); // READ DATA switch (chk){
case DHTLIB_OK:
Serial.print("OK,\t");
break;
case DHTLIB_ERROR_CHECKSUM:
Serial.print("Checksum error,\t");
break;
case DHTLIB_ERROR_TIMEOUT:
Serial.print("Time out error,\t");
break;
default:
Serial.print("Unknown error,\t");
break;
} }
void loop(){
nsuhu();
int lembab=DHT.humidity,suhu=DHT.temperature;
if(kalibrasi==0||suhu<sawal||hkalibrasi>=25){
sawal=suhu;
psuhu=suhu;
kalibrasi=1;
hkalibrasi=0;
}
// DISPLAT DATA Serial.print(lembab);
Serial.print(",\t");
Serial.print(suhu);
lcd.setCursor(6, 0);
lcd.print(suhu,1);
lcd.setCursor(9, 0);
lcd.print(" 'C");
Serial.print(" || S: ");
Serial.print(suhu);
Serial.print(" P: ");
Serial.print(psuhu);
Serial.print(" | ");
Serial.print("K: ");
Serial.println(sawal);
delay(1000);
//////////////////////////////////////////
if(sawal<suhu){
if(psuhu<suhu){
Serial.println("++++++++++++++++++++++++++++++++++++++++");
psuhu=suhu;
ssiram=0;
digitalWrite(kipas,1);
lcd.setCursor(3, 1);
lcd.print("KIPAS HIDUP ");
delay(200);
}
else if(psuhu>suhu){
Serial.println("---");
ssiram=1;
psuhu=suhu;
digitalWrite(kipas,0);
lcd.setCursor(3, 1);
lcd.print("KIPAS HIDUP ");
delay(200);
}
else if(psuhu==suhu & ssiram==1){
Serial.println("==========================================");
psuhu=suhu;
hkalibrasi+=1;
digitalWrite(kipas,0);
lcd.setCursor(3, 1);
lcd.print("KIPAS MATI ");
delay(200);
} else{
Serial.println("||||||||||||||||||||||||||||||||||||||||||||");
ssiram=0;
hkalibrasi+=1;
digitalWrite(kipas,1);
lcd.setCursor(3, 1);
lcd.print("KIPAS HIDUP ");
delay(200);
} } else{
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Suhu: ");
lcd.setCursor(6, 0);
lcd.print(suhu,1);
lcd.setCursor(9, 0);
lcd.print(" 'C");
digitalWrite(kipas,0);
lcd.setCursor(3, 1);
lcd.print("KIPAS MATI ");
delay(200);
}
}