BAB II LANDASAN TEORI 2.1
Pengertian Sensor Sensor adalah alat untuk mendeteksi/mengukur sesuatu, yang digunakan
untuk mengubah variasi mekanis, magnetis, panas, sinar dan kimia menjadi tegangan dan arus listrik. Sensor sering digunakan untuk pendeteksian pada saat melakukan pengukuran atau pengendalian. Dalam lingkungan sistem pengendali dan robotika, sensor memberikan kesamaan yang menyerupai mata, pendengaran, hidung, lidah yang kemudian akan diolah oleh mikrokontroler sebagai otaknya.
2.2 PIR (Passive Infra Red) PIR (Passive Infra Red) sensor merupakan sebuah perangkat piranti elektrik yang mendeteksi gerakan dengan mengukur perubahan tingkat inframerah yang dipancarkan oleh benda-benda di sekitarnya. Gerakan ini dapat dideteksi dengan memeriksa tinggi sinyal pada I / O pin. Akan tetapi, tidak seperti sensor infrared kebanyakan yang terdiri dari IR LED dan fototransistor. PIR tidak memancarkan apapun seperti IR LED. Sesuai namanya “Passive”, sensor ini hanya merespon energi dari pancaran sinar inframerah pasif yang dimiliki oleh setiap benda yang terdeteksi olehnya. Benda yang dapat dideteksi oleh sensor ini biasanya adalah tubuh manusia. Modul ini bekerja dengan cara menyimpan suhu sebelumnya dan kemudian membandingkannya dengan suhu sekarang, jika ada perbedaan maka dianggap ada perbedaan. Ketika manusia berada di depan sensor PIR, maka sensor PIR akan menghitung panjang gelombang yang dihasilkan oleh tubuh manusia tersebut. Panjang gelombang yang konstan ini menyebabkan energi panas yang dihasilkan dapat digambarkan hampir sama pada kondisi lingkungan disekitarnya. Ketika manusia itu melakukan gerakan, maka tubuh manusia itu akan menghasilkan pancaran sinar inframerah pasif dengan panjang gelombang yang bervariasi sehingga menghasilkan panas berbeda. Modul ini menggunakan pasif
7
8
infrared sebagai sensornya. Pada umumnya sensor PIR memiliki jangkauan pembacaan efektif hingga 6 meter dan sensor ini sangat efektif digunakan sebagai human detector. Sensor PIR terdiri dari beberapa bagian yaitu: ¾ Lensa Fresnel ¾ Penyaring Infra Merah ¾ Sensor Pyroelektronik ¾ Penguat Amplifier ¾ Komparator Spesifikasi dari sensor PIR adalah sebagai berikut : • Grove compatible interface • 2.0cm x 4.0cm twig module • Type: Digital • Supply Voltage: 3-5V • Current: 50 A • Working temperature: 0-70 Degree • Output level(HIGH): 4V • Output level(LOW): 0.4V • Detect angle: 120 Degree • Detect distance: 6 meters • Size: 28mm×36mm • Weight: 25g • Adjustable detecting distance and holding time
Gambar 2.1 Bentuk Fisik Sensor PIR (Passive Infra Red)
9
Gambar 2.2 Rangkaian Sensor PIR (Passive Infra Red) Gambaran secara umum cara kerja Sensor PIR :
Gambar 2.3 Cara Kerja Sensor PIR (Passive Infra Red) Pancaran infra merah masuk melalui lensa Fresnel dan mengenai sensor pyroelektrik, karena sinar infra merah mengandung energi panas maka sensor pyroelektrik akan menghasilkan arus listrik. Sensor pyroelektrik terbuat dari bahan galium nitrida (GaN), cesium nitrat (CsNo3) dan litium tantalate (LiTaO3). Arus listrik inilah yang akan menimbulkan tegangan dan dibaca secara analog oleh sensor. Kemudian sinyal ini akan dikuatkan oleh penguat dan dibandingkan oleh komparator dengan tegangan referensi tertentu (keluaran berupa sinyal 1-bit). Jadi sensor PIR hanya akan mengeluarkan logika 0 dan 1, 0 saat sensor tidak mendeteksi adanya pancaran infra merah dan 1 saat sensor mendeteksi infra merah. Sensor PIR didesain dan dirancang hanya mendeteksi pancaran infra
10
merah dengan panjang gelombang 8-14 mikrometer. Diluar panjang gelombang tersebut sensor tidak akan mendeteksinya. Untuk manusia sendiri memiliki suhu badan yang dapat menghasilkan pancaran infra merah dengan panjang gelombang antara 9-10 mikrometer (nilai standar 9,4 mikrometer), panjang gelombang tersebut dapat terdeteksi oleh sensor PIR. (Secara umum sensor PIR memang dirancang untuk mendeteksi manusia).
2.3 Arduino Untuk memahami Arduino, terlebih dahulu kita harus memahami terlebih dahulu apa yang dimaksud dengan physical computing. Physical computing adalah membuat sebuah sistem atau perangkat fisik dengan menggunakan software dan hardware yang sifatnya interaktif yaitu dapat menerima rangsangan dari lingkungan dan merespon balik. Physical computing adalah sebuah konsep untuk memahami hubungan yang manusiawi antara lingkungan yang sifat alaminya adalah analog dengan dunia digital. Pada prakteknya konsep ini diaplikasikan dalam desain-desain alat atau projek-projek yang menggunakan sensor dan microcontroller untuk menerjemahkan input analog ke dalam sistem software untuk mengontrol gerakan alat-alat elektro mekanik seperti lampu, motor dan sebagainya. Pembuatan prototype atau prototyping adalah kegiatan yang sangat penting di dalam proses physical computing karena pada tahap inilah seorang perancang melakukan eksperimen dan uji coba dari berbagai jenis komponen, ukuran, parameter, program komputer dan sebagainya berulang-ulang kali sampai diperoleh kombinasi yang paling tepat. Dalam hal ini perhitungan angka-angka dan rumus yang akurat bukanlah satu-satunya faktor yang menjadi kunci sukses di dalam mendesain sebuah alat karena ada banyak faktor eksternal yang turut berperan, sehingga proses mencoba dan menemukan atau mengoreksi kesalahan perlu melibatkan hal-hal yang sifatnya non-eksakta. Prototyping adalah gabungan antara akurasi perhitungan dan seni. Proses prototyping bisa menjadi sebuah kegiatan yang menyenangkan atau menyebalkan, itu tergantung bagaimana kita melakukannya. Misalnya jika untuk mengganti sebuah komponen, merubah ukurannya atau merombak kerja sebuah prototype dibutuhkan usaha yang besar
11
dan waktu yang lama, mungkin prototyping akan sangat melelahkan karena pekerjaan ini dapat dilakukan berulang-ulang sampai puluhan kali. Idealnya sebuah prototype adalah sebuah sistem yang fleksibel dimana perancang bisa dengan mudah dan cepat melakukan perubahan-perubahan dan mencobanya lagi sehingga tenaga dan waktu tidak menjadi kendala berarti. Dengan demikian harus ada sebuah alat pengembangan yang membuat proses prototyping menjadi mudah. Pada masa lalu hingga saat ini bekerja dengan hardware berarti membuat rangkaian menggunakan berbagai komponen elektronik seperti resistor, kapasitor, transistor dan sebagainya. Setiap komponen disambungkan secara fisik dengan kabel atau jalur tembaga yang disebut dengan istilah “hard wired” sehingga untuk merubah rangkaian maka sambungan-sambungan itu harus diputuskan dan disambung kembali. Dengan hadirnya teknologi digital dan microprocessor fungsi yang sebelumnya dilakukan dengan hired wired digantikan dengan programprogram software. Ini adalah sebuah revolusi di dalam proses prototyping. Software lebih mudah diubah dibandingkan hardware, dengan beberapa penekanan tombol kita dapat merubah logika alat secara radikal dan mencoba versi ke-dua, ke-tiga dan seterusnya dengan cepat tanpa harus mengubah pengkabelan dari rangkaian. Arduino sendiri merujuk pada tiga buah tool yang dikemas menjadi satu kesatuan. Tiga buah tool tersebut ialah: 1.
Kontroler Arduino Board Kontroler Arduino hadir dengan berbagai macam pilihan dari yang kecil hingga yang besar. Tersedia pula skematik yang dapat digunakan untuk membuat sendiri kontroler Arduino tersebut bagi orang-orang yang memiliki pengalaman dan pengetahuan yang memadai.
2.
Bahasa pemrograman dan compiler Bahasa pemrograman dan compiler digunakan untuk menghasilkan kode untuk mikrokontroler yang berada pada kontroler. Bahasa pemrograman yang digunakan dekat dengan C++ sehingga tidak sama persis. Poin ini memiliki persamaan dengan Processing yang memang bertujuan untuk memudahkan pekerjaan desainer yang berkaitan dengan perangkat keras atau hardware dan interaksi fisik.
12
3.
IDE (Integrated Development Environment) IDE Arduino sama dengan IDE Processing yang dibuat dengan Java. Anda dapat langsung memasukkan kode atau bahasa pemrograman Arduino dan melakukan kompilasi atau compiling di IDE tersebut. Tujuan adanya Arduino ialah untuk menyederhanakan kreasi dari aplikasi
atau
obyek interaktif
dengan
mempermudah
bahasa
pemrograman yang digunakan untuk membuat instruksi dan menyediakan kontroler yang bertenaga namun dasar yang dengan mudah dapat digunakan untuk keperluan pemrograman umum dan tetap bisa digunakan untuk mendukung proyek yang lebih kompleks. Lalu, apa saja yang orang-orang hasilkan dengan menggunakan Arduino? Mereka membuat kontrol fisik yang orang-orang dapat berinteraksi dengannya seperti tombol dsb. Mereka membuat lingkungan kreatif yang menggunakan sensor berat, ultrasonik, temperatur, dan infra merah. Mereka membuat jalan untuk mengontrol peralatan mereka seperti lampu di rumah, kamera video, yang secara umum disebut dengan home automation. Mereka pun dapat membuat robot atau mainan mekanik. Selain itu, mereka dapat membuat program kecil yang dapat saling berkomunikasi satu sama lain yang saling memberi sinyal. Potensi yang banyak ini jika dimanfaatkan akan menghasilkan karya yang luar biasa. a. Memulai dengan Arduino Board Arduino baik asli maupun kloningan di Indonesia dapat dibeli melalui toko elektronik ataupun online shop. Pilih board yang umum digunakan seperti Uno, Duemilanove, atau HIJI.
Gambar 2.4 Tampilan Papan Arduino
13
Untuk menghubungkan board ini dengan komputer, anda akan membutuhkan kabel USB dengan satu kepala tipe A dan kepala lainnya tipe B.
Gambar 2.5 Tampilan Kabel USB (Universal Serial Bus) Board Arduino memiliki konektor USB tipe B dan komputer memiliki konektor USB tipe A. Jika anda memiliki board Arduino yang tidak ada LED terintegrasi di dalamnya, maka sebaiknya anda membeli LED dari toko elektronik untuk mengetes kontroler dengan bantuan program sederhana untuk memastikan apakah semuanya telah terverifikasi. LED ini juga dapat berfungsi sebagai fungsi debugging sederhana dengan sinyal blinking atau kedipkedip. b. Instalasi IDE Untuk mulai memprogram, anda akan membutuhkan IDE Arduino. Langsung saja download versi terbaru dari websiteArduino. Download sesuai dengan OS yang anda gunakan. Pada pembuatan proyek kali ini penulis menggunakan windows dan IDE versi 1.0.1. Ekstrak hasil download, dan ada akan mendapatkan folder “arduino-1.0.1″. Jika pada komputer telah terinstal JRE, maka langsung double-click “arduino.exe”. Berikut penampakan IDE Arduino:
14
Gambar 2.6 Tampilan Lembar Kerja IDE Arduino Tabel 2.1 Fungsi Tombol Pada IDE Arduino Tombol
Fungsi Verify: Cek error dan lakukan kompilasi kode Upload: Upload kode anda ke board/kontroler. Asumsi bahwa board dan serial port telah di setting dengan benar New: Membuat aplikasi baru Open: Buka proyek yang telah ada atau dari contohcontoh/examples Save: Simpan proyek anda
15
Serial Monitor: Membuka serial port monitor untuk melihat feedback/umpan balik dari board anda. Elemen utama dari kontroler Arduino ialah Input/Output atau I/O melalui pin-pin, port USB, mikrokontroler yang di dalamnya ada sejumlah kecil RAM. Tentu saja skalanya lebih kecil daripada sebuah komputer. Akibatnya dari segi power supply/catu daya pun akan memerlukan perlakuan khusus. Sebuah pin memberikan fungsi input atau output dimana kontroler dapat berkomunikasi dengan komponen melaluinya. Anda dapat melihat barisan pin dengan header warna hitam yang dapat dimasukkan kabel tembaga tunggal yang kecil ke dalamnya. Dengan begitu, anda dapat menghubungkan kontroler dengan breadboard/project board/prototyping board.
Gambar 2.7 Tampilan Board Arduino yang dihubungkan dengan Project Board Pin digital memiliki dua buah nilai yang dapat ditulis kepadanya yaitu High(1) dan Low(0). Logika high maksudnya ialah 5 Volt dikirim ke pin baik itu oleh mikrokontroler atau dari komponen. Low berarti pin tersebut bertegangan 0 Volt. Dari logika ini, anda dapat membayangkan perumpamaan: start/stop, siap/tidak siap, on/off, dsb.
16
Pada gambar 2.7 terlihat pin-pin digital berada pada bagian atas. Disinilah anda akan menghubungkan berbagai kontrol yang berkomunkasi dengan menggunakan nilai digital. Beberapa pin digital dapat digunakan sebagai Pulse Width Modulation (PWM). Secara umum pin PWM ini dapat digunakan untuk mengirim nilai atau informasi analog ke komponen. Tanda ~ pada pin 3, 5, 6, 9, 10, 11 menandakan fungsi PWM. Fungsi PWM ini merupakan tambahan dari fungsi digital. Artinya pin-pin tersebut selain fungsi digital, dapat dikonfigurasi menjadi PWM. Kemungkinan nilai dari dari pin-pin digital tersebut ialah IN (informasi masuk dari komponen ke kontrol) dan sebaliknya OUT (informasi keluar dari kontrol ke komponen). Pada bagian bawah, terdapat pin-pin power. Tersedia pin 5V, 3.3V, dua pin ground, Vin, dan reset. Di sebelah kanan bagian bawah, anda akan melihat pin-pin analog input. Pin-pin ini dapat menerima masukan informasi analog dari 0 hingga 5 Volt dengan kenaikan sebesar 0.005 V. Representasi 0 V ialah 0, dan 5V ialah 1023. Di atas pin-pin analog terdapat mikrokontroler AVR. Dan di atas AVR terdapat push button reset untuk merestart program. Terdapat konetor ISP di sebelah kanan push button reset yang dapat digunakan untuk memprogram kontroler Arduino dalam kondisi tertentu (chip erase akan mengakibatkan bootloader Arduino ikut terhapus. Jadi hati-hati dalam menggunakannya).
2.3.1 Arduino UNO Arduino Uno adalah papan mikrokontroler berdasarkan ATmega328 (datasheet). Dalam bahasa Itali "Uno" berarti satu, maka jangan heran jika peluncuran Arduino 1.0 diberi nama Uno. Arduino ini berisi semua yang diperlukan untuk mendukung mikrokontroler, untuk mengaktifkan cukup menghubungkannya ke komputer dengan kabel USB dengan adaptor ACDC atau baterai.
17
Gambar 2.8 Bentuk Fisik Arduino Uno Spesifikasi dari Arduino Uno adalah sebagai berikut : Mikrokontroler
ATmega328
Operating Voltage
5V
Input Voltage (disarankan)
7-12V
Input Voltage (batas)
6-20V
Digital I / O
Pins 14 (dimana 6 memberikan output PWM)
Analog Input
Pins 6
DC Current per I / O
Pin 40 mA
DC Current for 3.3V
Pin 50 mA
Flash Memory 32 KB (ATmega328) 0,5 KB digunakan oleh bootloader SRAM
2 KB (ATmega328)
EEPROM
1 KB (ATmega328)
Clock Speed
16 MHz
a.
Input Voltage Arduino Uno ini dapat beroperasi pada tegangan eksternal dari 6-20 volt. Jika diberikan tegangan kurang dari 7V, maka arduino ini mungkin akan menjadi tidak stabil. Jika menggunakan lebih dari 12V,
18
regulator voltage bisa panas dan merusak board. Rentang yang dianjurkan adalah 7-12 volt. b.
Memori ATmega328 ini memiliki memori sebesar 32 KB (0,5 KB dari memori tersebut digunakan untuk bootloader) dan juga memiliki memori sebesar 2 KB dari SRAM dan 1 KB dari EEPROM.
c.
Input dan Output Masing-masing dari 14 pin digital pada Uno dapat digunakan sebagai input atau output, dengan menggunakan fungsi pinMode (), digitalWrite (), dan digitalRead (). Setiap pin dapat memberikan atau menerima maksimum 40 mA dan memiliki resistor pull-up internal (terputus secara default) dari 20-50 kOhms.
2.4 LCD (Liquid Crystal Display) 16x2 LCD (Liquid Crystal Display) atau dapat di bahasa Indonesiakan sebagai tampilan Kristal Cair adalah suatu jenis media tampilan yang menggunakan kristal cair sebagai penampil utama. LCD bisa memunculkan gambar atau tulisan berwarna dikarenakan terdapat banyak sekali titik cahaya (piksel) yang terdiri dari satu buah kristal cair sebagai sebuah titik cahaya. Walau disebut sebagai titik cahaya, namun kristal cair ini tidak memancarkan cahaya sendiri. 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. Dalam menampilkan karakter untuk membantu menginformasikan proses dan control yang terjadi dalam suatu program robot kita sering menggunakan LCD juga. Yang sering digunakan dan paling murah adalah LCD dengan banyak karakter 16x2. Maksudnya semacam fungsi tabel di ms office. 16 menyatakan
19
kolom dan 2 menyatakan baris. Bila kita beli di pasaran, LCD 16x2 masih kosongan, maksudnya kosongan yaitu butuh driver lagi supaya bisa dikoneksikan dengan system minimum dalam suatu mikrokontroler. Driver yang disebutkan berisi rangkaian pengaman, pengatur tingkat kecerahan backligt maupun data, serta untuk mempermudah pemasangan di mikrokontroler (portable red).
Gambar 2.9 Bentuk Fisik LCD 16x2 Berikut adalah deskripsi dari pin – pin LCD: •
Ground (pin 1) adalah masukan tegangan power nol (0) volt dan sinyal ground.
•
Vcc (pin 2) adalah masukan tegangan +5 volt.
•
Vee (pin 3) adalah dihubungkan dengan level ground melalui trimpot.
•
RS (pin 4) adalah data dikirim ke LCD.
•
RW (pin 5) adalah merupakan read select, 1 = read, 0 = write.
•
Enable Clock LCD (pin 6) adalah merupakan masukan logika 1 setiap kali pengiriman atau pembacaan data.
•
D0-D7 (pin 7 – pin 14) adalah merupakan data bus 1-7 ke port.
•
Anoda (pin 15) merupakan masukan tegangan positif backlight.
•
Katoda (pin 16) merupakan masukan tegangan negative backlight.
20
Tabel 2.2 Fungsi Pin Pada LCD
Konfigurasi pin dari LCD ditunjukkan pada Gambar dibawah ini :
Gambar 2.10 Konfigurasi Pin LCD Modul LCD memiliki karakteristik sebagai berikut: •
Terdapat 16 x 2 karakter huruf yang bisa ditampilkan.
•
Setiap huruf terdiri dari 5x7 dot-matrix cursor.
•
Terdapat 192 macam karakter.
•
Terdapat 80 x 8 bit display RAM (maksimal 80 karakter).
•
Memiliki kemampuan penulisan dengan 8 bit maupun dengan 4 bit.
•
Dibangun dengan osilator lokal.
21
•
Satu sumber tegangan 5 volt.
•
Otomatis reset saat tegangan dihidupkan.
•
Bekerja pada suhu 0oC sampai 55oC.
2.5 LED (Light Emitting Diode) Diode pancaran cahaya atau lebih dikenal dengan sebutan LED (Light Emitting Diode) adalah suatu semikonduktor yang memancarkan cahaya monokromatik (cahaya yang hanya terdiri atas satu warna dan satu panjang gelombang) yang tidak koheren ketika diberi tegangan maju. Warna yang dihasilkan bergantung pada bahan semikonduktor yang dipakai dan bisa juga ultraviolet dekat atau inframerah dekat. Sirkuit LED dapat didesain dengan cara menyusun LED dalam posisi seri maupun paralel. Bila disusun secara seri maka yang perlu diperhatikan adalah jumlah tegangan yang diperlukan seluruh LED dalam rangkaian. Namun bila LED diletakkan dalam keadaan paralel, maka yang perlu diperhatikan menjadi jumlah arus yang diperlukan seluruh LED dalam rangkaian. Menyusun LED dalam rangkaian seri akan lebih sulit karena tiap LED mempunyai tegangan maju (Vf) yang berbeda. Perbedaan ini akan menyebabkan bila jumlah tegangan yang diberikan oleh sumber daya listrik tidak cukup untuk membangkitkan chip LED, maka beberapa LED akan tidak menyala. Sebaliknya, bila tegangan yang diberikan terlalu besar akan berakibat kerusakan pada LED yang mempunyai tegangan maju relative rendah. Pada umumnya, LED yang ingin disusun secara seri harus mempunyai tegangan maju yang sama atau paling tidak tak berbeda jauh supaya rangkaian LED ini dapat berkerja secara baik.
22
Gambar 2.11 Bentuk Fisik LED
Gambar 2.12 Simbol LED
2.6 Buzzer Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara. Buzzer pada umumnya digunakan untuk alarm, biasa digunakan sebagai indikator bahwa proses telah selesai atau terjadi suatu kesalahan pada sebuah alat (alarm). Karena penggunaanya cukup mudah yaitu dengan memberikan tegangan
23
input maka buzzer akan mengeluarkan bunyi. Frekuensi suara yang di keluarkan oleh buzzer yaitu antara 1-5 KHz.
Gambar 2.13 Bentuk Fisik Buzzer Shield
Gambar 2.14 Simbol Buzzer
2.7 Baterai / Adaptor Soket baterai atau adaptor digunakan untuk menyuplai Arduino dengan tegangan dari baterai / adaptor 9V pada saat Arduino sedang tidak disambungkan ke komputer. Kalau Arduino sedang disambungkan ke komputer melalui USB, Arduino mendapatkan suplai tegangan dari USB, jadi tidak perlu memasang baterai / adaptor saat memprogram Arduino.