5
BAB 2 LANDASAN TEORI
2.1
Arduino Nano Arduino merupakan sebuah platform dari physical computing yang bersifat
open source. Pertama-tama perlu dipahami bahwa kata “platform” di sini adalah sebuah pilihan kata yang tepat. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi ia adalah kombinasi dari hardware, bahasa pemrograman dan Integrated Development Environment (IDE) yang canggih. IDE adalah sebuah software yang sangat berperan untuk menulis program, meng-compile menjadi kode biner dan meng-upload ke dalam memory microcontroller Arduino Nano adalah salah satu papan pengembangan mikrokontroler yang berukuran kecil, lengkap dan mendukung penggunaan breadboard.Arduino Nano diciptakan dengan basis mikrokontroler ATmega328 (untuk Arduino Nano versi 3.x) atau ATmega 168 (untuk Arduino versi 2.x). Arduino Nano kurang lebih memiliki fungsi yang sama dengan Arduino Duemilanove, tetapi dalam paket yang berbeda. Arduino Nano tidak menyertakan colokan DC berjenis Barrel Jack, dan dihubungkan ke komputer menggunakan port USB Mini-B. Arduino Nano dirancang dan diproduksi oleh perusahaan Gravitech.
Gambar 2.1 Bagian Depan Arduino Nano
Universitas Sumatera Utara
6
Gambar 2.2 Bagian Belakang Arduino Nano 2.1.1
Konfigurasi Pin Arduino Nano Konfigurasi pin Arduino Nano.Arduino Nano memiliki 30 Pin. Berikut
Konfigurasi pin Arduino Nano. 1.
VCC merupakan pin yang berfungsi sebagai pin masukan catu daya digital.
2.
GND merupakan pin ground untuk catu daya digital.
3.
AREF merupakan Referensi tegangan untuk input analog. Digunakan dengan fungsi analogReference().
4.
RESET merupakan Jalur LOW ini digunakan untuk me-reset (menghidupkan ulang) mikrokontroler. Biasanya digunakan untuk menambahkan tombol reset pada shield yang menghalangi papan utama Arduino
5.
Serial RX (0) merupakan pin yang berfungsi sebagai penerima TTL data serial.
6.
Serial TX (1) merupakan pin yang berfungsi sebagai pengirim TT data serial.
7.
External Interrupt (Interupsi Eksternal) merupakan pin yang dapat dikonfigurasi untuk memicu sebuah interupsi pada nilai yang rendah, meningkat atau menurun, atau perubahan nilai.
8. Output PWM 8-Bitmerupakan pin yang berfungsi untuk analogWrite( ).
Universitas Sumatera Utara
7
9. SPI merupakan pin yang berfungsi sebagai pendukung komunikasi. 10. LED merupakan pin yang berfungsi sebagai pin yag diset bernilai HIGH, maka LED akan menyala, ketika pin diset bernilai LOW maka LED padam. LED Tersedia secara built-in pada papan Arduino Nano. 11. Input Analog (A0-A7) merupakan pin yang berfungsi sebagi pin yang dapat diukur/diatur dari mulai Ground sampai dengan 5 Volt, juga memungkinkan untuk mengubah titik jangkauan tertinggi atau terendah mereka menggunakan fungsi analogReference(). Tabel 2.1 Konfigurasi Pin Arduino Nano Nomor Pin Arduino Nano
Nama Pin Arduino Nano
1
Digital Pin 1 (TX)
2
Digital Pin 0 (RX)
3 & 28
Reset
4 & 29
GND
5
Digital Pin 2
6
Digital Pin 3 (PWM)
7
Digital Pin 4
8
Digital Pin 5 (PWM)
9
Digital Pin 6 (PWM)
10
Digital Pin 7
11
Digital Pin 8
12
Digital Pin 9 (PWM)
13
Digital Pin 10 (PWM-SS)
Universitas Sumatera Utara
8
Nomor Pin Arduino Nano
Nama Pin Arduino Nano
14
Digitl Pin 11 (PWM-MOSI)
15
Digital Pin 12 (MISO)
16
Digital Pin 13 (SCK)
18
AREF
19
Analog Input 0
20
Analog Input 1
21
Analog Input 2
22
Analog Input 3
23
Analog Input 4
24
Analog Input 5
25
Analog Input 6
26
Analog Input 7
27
VCC
30
Vin
Gambar 2.3 Konfigurasi Pin Layout Arduino Nano
Universitas Sumatera Utara
9
2.1.2
Spesifikasi Arduino Nano
Berikut ini adalah Spesifikasi yang dimiliki oleh Arduino Nano: 1.
MikrokontrolerAtmel ATmega168 atau ATmega328
2.
5 V Tegangan Operasi
3.
7-12VInput Voltage (disarankan)
4.
6-20VInput Voltage (limit)
5.
Pin Digital I/O14 (6 pin digunakan sebagai output PWM)
6.
8 Pin Input Analog
7.
40 mA Arus DC per pin I/O
8.
Flash Memory16KB (ATmega168) atau 32KB (ATmega328) 2KB digunakan oleh Bootloader
9.
1 KbyteSRAM (ATmega168) atau 2 Kbyte(ATmega328)
10.
512 ByteEEPROM (ATmega168) atau 1Kbyte (ATmega328)
11.
16 MHz Clock Speed
12.
Ukuran1.85cm x 4.3cm
2.1.3
Sumber Daya Arduino Nano Arduino Nano dapat diaktifkan melalui koneksi USB Mini-B, atau melalui
catu daya eksternal dengan tegangan belum teregulasi antara 6-20 Volt yang dihubungkan melalui pin 30 atau pin VIN, atau melalui catu daya eksternal dengan tegangan teregulasi 5 volt melalui pin 27 atau pin 5V. Sumber daya akan secara otomatis dipilih dari sumber tegangan yang lebih tinggi. Chip FTDI FT232L pada Arduino Nano akan aktif apabila memperoleh daya melalui USB, ketika Arduino Nano diberikan daya dari luar (Non-USB) maka Chip FTDI tidak aktif dan pin 3.3V pun tidak tersedia (tidak mengeluarkan tegangan), sedangkan
Universitas Sumatera Utara
10
LED TX dan RX pun berkedip apabila pin digital 0 dan 1 berada pada posisi HIGH. 2.2
Bluetooth HC-05 Modul bluetooth seri HC memiliki banyak jenis atau varian, yang secara
garis besar terbagi menjadi dua yaitu jenis „industrial series‟ yaitu HC-03 dan HC04 serta „civil series‟ yaitu HC-05 dan HC-06. Modul Bluetooth serial, yang selanjutnya disebut dengan modul BT saja digunakan untuk mengirimkan data serial TTL via bluetooth.Modul BT ini terdiri dari dua jenis yaitu Master dan Slave.
Gambar 2.4 Bluetooth HC-05 Seri modul BT HC bisa dikenali dari nomor serinya, jika nomer serinya genap maka modul BT tersebut sudah diset oleh pabrik, bekerja sebagai slave atau master dan tidak dapat diubah mode kerjanya, contoh adalah HC-06-S. Modul BT ini akan bekerja sebagai BT Slave dan tidak bisa diubah menjadi Master, demikian juga sebaliknya misalnya HC-04M. Default mode kerja untuk modul BT HC dengan seri genap adalah sebagai Slave.Sedangkan modul BT HC dengan nomer seri ganjil, misalkan HC-05, kondisi default biasanya diset sebagai Slave mode, tetapi pengguna bisa mengubahnya menjadi mode Master dengan AT Command tertentu.
Universitas Sumatera Utara
11
Modul BT yang banyak beredar di sini adalah modul HC-06 atau sejenisnya dan modul HC-05 dan sejenisnya. Perbedaan utama adalah modul HC06 tidak bisa mengganti mode karena sudah diset oleh pabrik, selain itu tidak banyak AT Command dan fungsi yang bisa dilakukan pada modul tersebut. Diantaranya hanya bisa mengganti nama, baud rate dan password saja. Sedangkan untuk modul HC-05 memiliki kemampuan lebih yaitu bisa diubah mode kerjanya menjadi Master atau Slave serta diakses dengan lebih banyak AT Command, modul ini sangat direkomendasikan, terutama dengan flexibilitasnya dalam pemilihan mode kerjanya.
2.3
Sensor MQ-138 Sensor gas MQ138 adalah SnO2,yang dengan konduktivitas rendah di
udara bersih. Kapantarget Uap Organik ada, konduktivitas Sensor ini lebih tinggi bersama dengan gaskonsentrasi meningkat. Silakan gunakan electrocircuit sederhana, Mengkonversi perubahan konduktivitas untuk sesuaisinyal output konsentrasi gas.MQ138 sensor gas memiliki sensitity tinggi untuk Toluene, Aseton, Ethanol dan Formaldehyde, juga untuk lainnyauap organik. Sensor dapat digunakan untuk mendeteksi uap organik yang berbeda, itu adalah dengan biaya rendah dancocok untuk aplikasi yang berbeda
2.3.1 Karakter Sensor MQ-138 Berikut ini adalah Karakter yang dimiliki oleh Sensor MQ-138: 1. Sensitivitas yang baik untuk Steam Organik 2. Sensitivitas tinggi untuk Toluene, Aseton dan Etanol
Universitas Sumatera Utara
12
3. Panjang hidup dan biaya rendah 4. Drive sirkuit Sederhana
2.3.2 Aplikasi Sensor MQ-138 Berikut ini adalah Aplikasi yang dimiliki oleh Sensor MQ-138: 1 Domestik detektor uap Organik 2 Detektor uap Industri Organik 3 Detektor gas portabel
Gambar 2.5 Konfigurasi Sensor MQ-138
2.3.3 Rangkaian Tes Dasar Sensor MQ-138
Gambar 2.6 Rangkaian Dasar Sensor MQ-138
Universitas Sumatera Utara
13
Di atas adalah rangkaian tes dasar sensor.Sensor perlu menempatkan 2 tegangan,tegangan heater (VH) dan tegangan uji
(VC).VH digunakan
untukmemasok kerja bersertifikatsuhu sensor, sedangkan VC digunakanuntuk mendeteksi tegangan (VRL) dari tahanan beban(RL) yang merupakan seri dengan sensor. Itusensor memiliki polaritas cahaya, Vc perlu DCkekuasaan. VC dan VH bisa menggunakan kekuatan yang samasirkuit dengan prasyarat untuk menjaminkinerja sensor. Dalam rangka untuk membuatsensor dengan kinerja yang lebih baik,nilai RL cocok diperlukan: Kekuatan Sensitivitas tubuh (Ps): Ps = Vc2× Rs / (Rs + RL)2 Tabel 2.2 Data Teknis Sensor MQ-138 Model Nomor. Type Sensor Standard Encapsulation Deteksi Gas Konsentrasi Tegangan Lingkaran Rangkaian Tegangan Pemanas Beban Resistance Pemanasan Resistance Pemanasan Consumption Sensing Resistance Karakter Kepekaan Slope Kelembaban Kondisi
Rangkaian Tes Standart Kondisi Waktu
Vc VH RL RH PH RS S α
MQ-138 Semikonduktor Bakelite (Black Bakelite) Toluena, Aseton, Etanol, H2 5 – 500 ppm ≤ 24 V DC 5.0V ± 0.2V AC atau DC Adjustable 31Ω ± 3Ω (Room Tem.) ≤900mW 2KΩ-20KΩ (di 50ppm Toluene) Rs (di udara) / Rs (50ppm Toluene) ≥3 ≤0.6≤0.6 (R100ppm/ R50ppm toluene) 20 ℃ ± 2 ℃; 65% ± 5% RH Vc: 5.0V ± 0.1V; VH: 5.0V ± 0.1V Lebih dari 48 Jam
Universitas Sumatera Utara
14
2.3.4 Karakteristik sensitivitas MQ – 138
Gambar 2.7 Karakteristik Sensitivitas MQ-138 Gambar 2.7
menunjukkankarakteristik sensitivitas khasyang MQ138,
ordinat berarti rasio resistensi dari sensor(Rs / Ro),absis adalah konsentrasi gas. Rs berartisensor (Rs / Ro), Rs berarti resistansi sensorresistensi dalam gas yang berbeda, Ro berarti ketahanandi 100ppm Toluene.Semua tes berada di bawah standar kondisi pengujian.100ppm Toluene, 20 ℃ / 65% RH
2.3.5
Pengaruh Suhu / Kelembaban
Gambar 2.8 Pengaruh Suhu dan Kelembaban
Universitas Sumatera Utara
15
Gambar
2.8
menunjukkan
suhu
yang
khas
dan
kelembaban
karakteristik. Ordinat berarti rasio resistensi (Rs / Ro),. Rs berarti resistansi sensor di 100ppm Toluenebawah tem berbeda. dan kelembaban.Ro berarti perlawanan dari sensor di lingkungan100ppm Toluene, 20 ℃ / 65% RH
2.3.6 Struktur dan konfigurasi MQ-138 Struktur dan konfigurasi sensor gas MQ138 ditampilkan sebagai Gambar 2.9 sensor disusun oleh mikro Al2O3 tabung keramik, TinDioksida (SnO2) lapisan sensitif, mengukur elektroda dan pemanas tetap menjadi kerak yang dibuatoleh plastik dan stainless steelbersih. Pemanas menyediakan kondisi kerja yang diperlukan untuk pekerjaan komponen sensitif. The terbungkus MQ-4 memiliki 6 pin, 4dari mereka yang digunakan untuk mengambil sinyal, dan lainnya 2 digunakan untuk memberikan pemanasan saat ini
Gambar 2.9 Struktur Dan Konfigurasi Sensor Gas MQ138
2.4
LCD (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
Universitas Sumatera Utara
16
pun layar komputer.Pada postingan aplikasi LCD yangdugunakan ialah LCD dot matrik dengan jumlah karakter 2 x 16. LCDsangat berfungsi sebagai penampil yang nantinya akan digunakan untukmenampilkan status kerja alat.
Gambar 2.10 LCD 2×16 Teknologi LCD memberikan keuntungan dibandingkan dengan teknologi CRT, kaena pada dasarnya, CRT adalah tabung triode yang digunakan sebelum transistor ditemukan.LCD memanfaatkan silicon atau gallium dalam bentuk Kristal cair sebagai pemendar cahaya.Pada layar LCD, setiap matrik adalah susunan dua dimensi piksel yang dibagi dalam baris dan kolom.Dengan demikian, setiap pertemuan baris dan kolom adalah sebuah LED terdapat sebuah bidang latar (backplane), yang merupakan lempengan kaca bagian belakang dengan sisi dalam yang ditutupi oleh lapisan elektroda trasparan.Dalam keadaan normal, cairan yang digunakan memiliki warna cerah. Beberapa keuntungan LCD dibandingkan dengan CRT adalah konsumsi daya yang relative kecil, lebih ringan, tampilan yang lebih bagus, dan ketika berlama-lama di depan monitor, monitor CRT lebih cepat memberikan kejenuhan pada mata dibandingkan dengan LCD. Keuntungan dari LCD ini adalah :
Universitas Sumatera Utara
17
1. Dapat menampilkan karakter ASCII, sehingga dapat memudahkan untuk membuat program tampilan. 2. Mudah dihubungkan dengan port I/O karena hanya mengunakan 8 bit data dan 3 bit control. 3. Ukuran modul yang proporsional. 4. Daya yang digunakan relative sangat kecil. Operasi dasar pada LCD terdiri dari empat, yaitu instruksi mengakses proses internal, instruksi menulis data, instruksi membaca kondisi sibuk, dan instruksi membaca data. ROM pembangkit sebanyak 192 tipe karakter, tiap karakter dengan huruf 5x7 dot matrik.Kapasitas pembangkit RAM 8 tipe karakter (membaca program), maksimum pembacaan 80x8 bit tampilan data.Perintah utama LCD adalah Display Clear, Cursor Home, Display ON/OFF, Display Character Blink, Cursor Shift, dan Display Shift. Tabel 2.3 menunjukkan konfigurasi pin LCD Tabel 2.3 Konfigurasi Pin LCD Pin No.
Keterangan
Konfigurasi Hubung
1
GND
Ground
2
VCC
Tegangan +5VDC
3
VEE
Ground
4
RS
Kendali RS
5
RW
Ground
6
E
Kendali E/Enable
7
D0
Bit 0
8
D1
Bit 1
9
D2
Bit 2
Universitas Sumatera Utara
18
10
D3
Bit 3
11
D4
Bit 4
12
D5
Bit 5
13
D6
Bit 6
14
D7
Bit 7
15
A
Anoda (+5VDC)
16
K
Katoda (Ground)
Saat ini telah dikembangkan berbagai jenis LCD, mulai jenis LCD biasa, Passive Matrix LCD (PMLCD), hingga Thin-Film Transistor Active Matrix (TFT-AMLCD). Kemampuan LCD juga telah ditingkatkan daru yang monokrom hingga yang mampu menampilkan ribuan warna.
2.5
Bahasa Pemrograman Arduino Berbasis Bahasa C 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 paraprogramer profesional masih tetap memilih bahasa C sebagai bahasa yang lebih unggul, berikut alasan-alasannya: 1.
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.
Universitas Sumatera Utara
19
2.
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.
3.
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. 4.
Bahasa C merupakan bahasa yang bersifat modular, yaitu tersusun atas rutin-rutin tertentu yang dinamakan dengan fungsi (function) dan fungsifungsi tersebut dapat digunakan kembali untuk pembuatan programprogram lainnya tanpa harus menulis ulang implementasinya.
5.
Bahasa C merupakan bahasa tingkat menengah (middle level language) sehingga mudah untuk melakukan interface (pembuatan program antar muka) ke perangkat keras.
6.
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 lain selain 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
Universitas Sumatera Utara
20
dimaksudkan untuk mengenalkan terlebih dahulu kepada kompiler daftar fungsi yang akan digunakan di dalam program. Namun apabila kita menuliskan fungsifungsi lain tersebut diatas atau sebelum fungsi utama, maka kita tidak perlu lagi untuk menuliskan bagian prototipe diatas. Selain itu juga dalam bahasa C kita akan mengenal file header, biasa ditulis dengan ekstensi h(*.h), adalah file bantuan yang yang digunakan untuk menyimpan daftar-daftar fungsi yang akan digunakan dalam program. Bagi anda yang sebelumnya pernah mempelajari bahasa pascal, file header ini serupa dengan unit. Dalam bahasa C, file header standar yang untuk prosesinput/output adalah <stdio.h>. Perlu sekali untuk diperhatikan bahwa apabila kita menggunakan file header yang telah disediakan oleh kompilator, maka kita harus menuliskannya didalam tanda„<‟ dan „>‟ (misalnya <stdio.h>). Namun apabila menggunakan file header yang kita buat sendiri, maka file tersebut ditulis diantara tanda “ dan ” (misalnya “cobaheader.h”). perbedaan antara keduanya terletakpada saat pencerian file tersebut. Apabila kita menggunakan tanda < >, maka file tersebut dianggap
berada
pada
direktori
deafault
yang
telah
ditentukan
oleh
kompilator.Sedangkan apabila kita menggunakan tanda “”, maka file header dapat kita dapat tentukan sendiri lokasinya. File header yang akan kita gunakan harus kita daftarkan dengan menggunakan directive#include. Directive #include ini berfungsi untuk memberi tahu kepada kompilator bahwa program yang kita buat akan menggunakan filefile yang didaftarkan. Berikut ini contoh penggunaan directive #include. #include<stdio.h> #include<stdlib.h> #include”myheader.h”
Universitas Sumatera Utara
21
Setiap kita akan menggunakan fungsi tertentu yang disimpan dalam sebuah file header, maka kita juga harus mendaftarkan file headernya dengan menggunakan directive #include. Sebagai contoh, kita akan menggunakan fungsi getch(
) dalam
program,
maka
kita
harus
mendaftarkan file
header
. 2.6 Aseton Aseton, juga dikenal sebagai propanon, dimetil keton, 2-propanon, propan-2on, dimetilformaldehida, dan β-ketopropana, adalah senyawa berbentuk cairan yang tidak berwarna dan mudah terbakar. Ia merupakan keton yang paling sederhana. Aseton larut dalam berbagai perbandingan dengan air, etanol, dietil eter,dan lain-lain. Ia sendiri juga merupakan pelarut yang penting. Aseton digunakan untuk membuat plastik, serat, obat-obatan, dan senyawa-senyawa kimia lainnya. Selain dimanufaktur secara industri, aseton juga dapat ditemukan secara alami, termasuk pada tubuh manusia dalam kandungan kecil. Gas aseton dapat terdeteksi dalam pernafasan manusia sebagai aibat dari peningkatan kadar glukosa dalam darah yang disebabkan adanya defisiensi insulin atau menurunnya kemampuan tubuh untuk menggunakan insulin. Aseton terdeteksi melalui kadar di hati dan paru-paru sehingga dapat dideteksi melalui pernafasan manusia
Universitas Sumatera Utara