BAB II LANDASAN TEORI Pada bab kedua ini akan dibahas mengenai landasan teori yang akan mendefinisikan seluruh hal-hal yang berkaitan dengan pelaksanaan tugas akhir ini. Berikut ini adalah beberapa point pengetahuan yang dianggap penting untuk diketahui sebelum melangkah ke bab-bab sebelumnya. 2.1 Pengertian Tanaman[1] Dalam pertanian, tanaman adalah beberapa jenis organisme yang dibudi dayakan pada suatu ruang atau media untuk dipanen pada masa ketika sudah mencapai tahap pertumbuhan tertentu. Pengertian ini dibedakan dari penggunaan secara awam bahwa tanaman sama dengan tumbuhan. Pada kenyataannya, hampir semua tanaman adalah tumbuhan, tetapi ke dalam pengertian tanaman tercakup pula beberapa fungi (jamur pangan, seperti jamur kancing dan jamur merang) dan alga (penghasil agar-agar dan nori) yang sengaja dibudidayakan untuk dimanfaatkan nilai ekonominya. Tanaman "sengaja" ditanam, sedangkan tumbuhan adalah sesuatu yang muncul atau tumbuh dari permukaan bumi. 2.1.1 Tanah [2] Tanah sangat vital peranannya bagi semua kehidupan di bumi karena tanah mendukung kehidupan tumbuhan dengan menyediakan hara dan air sekaligus sebagai penopang akar. Struktur tanah yang berongga-rongga juga menjadi tempat yang baik bagi akar untuk bernapas dan tumbuh. Tanah juga menjadi habitat hidup berbagai mikroorganisme. Bagi sebagian besar hewan darat, tanah menjadi lahan untuk hidup dan bergerak. Ilmu yang mempelajari berbagai aspek mengenai tanah dikenal sebagai ilmu tanah. II-1 II-2 2.1.2 Air [3] peranan air bagi tanaman sangat penting, maka penyiraman tak dabat diabaikan. Di dalam sel-sel tanaman, khususnya di dalam daun, air berfungsi menjaga ketegangan sel (turgor) agar tetap mengembang, tidak kerut, atau layu. Oleh karena itu, tanaman harus dijaga jangan sampai kekurangan air. Akan tetapi, tanaman yang berkelebihan air justru dapat membahayakan tanaman. Air yang berkelebihan itu akan mengusir udara ke luar dari dalam tanah, sehingga akar membusuk dan akhirnya tanaman pun mati. Gejala tanaman yang kelebihan air adalah sebagai berikut: a. Daun menguning pada bagian pada bagian dasar daun. b. Pada kejadian lebih berat, daun gugur tanpa terjadi perubahan warna. Keguguran yang mendadak biasanya disebabkan oleh kerusakan akar atau pembusukan akar. Tanaman yang akarnya busuk tidak dapat ditolong lagi. Sebaliknya, tanaman yang kekeringan akibat kekurangan air akan menimbulkan gejala-gejala sebagai berikut a. Kondisi tanaman merana, yang diawali dari daun-daun yang termuda. b. Daun-daun yang tua berubah warna menjadi kecokelatan. Jika terdapat gejala semacam itu, tanaman harus segera disiram. Walaupun dilakukan penyiraman secara intensif, warna daun yang sudah terlanjut berubah warna menjadi kecokelatan tidak akan bisa pulih kembali menjadi hijau seperti semula. Lebih baik daun tadi dipotong dengan gunting. 2.1.3 Kebutuhan Air Siraman Jumlah air siraman yang tepat memang tidak mudah karena kebutuhan air bagi setiap tanaman sangat bervariasi. Kebutuhan air bagi setiap tanaman dipengaruhi oleh faktor suhu lingkungan, umur, besar kecilnya ukuran tanaman, jenis media tanam, jenis tanaman itu sendiri, besar kecilnya pot, dan musim. Tanaman yang tidak pernah mendapatkan guyuran air hujan karena selalu berada II-3 dibawah atap membutuhkan air cukup banyak, terutama pada musim kemarau yang panas. Pada musim kemarau tanaman harus disiram dua kali sehari. Pemberian air siraman harus sampai batas kapasitas lapang. Artinya air siraman tersebut hanya mengisi pori mikro saja, sedangkan pori makro tetap berisi udara. Dengan demikian, proses pernapasan dan metabolism tanaman tetap berjalan lancer. Cara mengetahui bahwa air itu telah mencapai kapasitas lapang adalah jika air siraman itu telah membasahi seluruh media di dalam pot yang ditandai dengan keluarnya air siraman dari lubang pot. Sedangkan cara mengetahui kekeringan dan tingkat kelembapan media di dalam pot adalah dengan memasukkan jari ke dalam media kira-kira sedalam 1cm-1.5 cm. 2.2 Interfacing System [4] Komputer saat ini telah menjadi alat bantu utama bagi manusia dan digunakan bukan hanya untuk menyelesaikan permasalahan di temapat kerja, membuat program atau bermain game, tetapi dapat digunakan untuk mengontrol alat melalui berbagai port yang tersedia dan dikenal dengan istilah Interfacing komputer. Interfacing (antar muka) adalah bagian dari disiplin ilmu komputer yg mempelajari teknik-teknik menghubungkan komputer dengan peralatan elektronika lainnya. Sistem komputer yang berpusat pada pemroses utama (baik itu Mikroprosesor maupun Mikrokontroler) memiliki kemampuan yang besar dalam memecahkan masalah tetapi tidak ada manfaatnya tanpa menghubungkan dengan peralatan lainnya. Suatu teknik khusus diperlukan untuk dapat menghubungkan dengan peralatan-peralatan tersebut. Menghubungkan pemroses utama dengan peralatan elektronik lainnya bukanlah persoalan yang mudah. Kita tidak dapat langsung menghubungkan pemroses utama dengan peralatan tersebut, disebabkan oleh hal-hal berikut : 1. Terdapat beraneka ragam peralatan/ piranti yang memiliki metode operasi beragam. II-4 2. Laju transfer data dalam piranti seringkali lebih lambat dibandingkan dengan laju transfer data dengan pemroses utama (Mikroprosesor). 3. Piranti seringkali menggunakan format data yang berbeda dengan pemroses utama (Mikroprosesor). 2.2.1 Mikrokontroler Arduino[5] Arduino adalah alat untuk membuat komputer dapat merasakan dan mengontrol lebih dari dunia fisik daripada komputer desktop anda. Alat Ini adalah platform komputasi fisik open-source yang tertanam dalam papan mikrokontroler sederhana, dan pengembangan lingkungan untuk menulis program untuk papan mikrokontroller tersebut. Arduino dapat digunakan untuk mengembangkan objek interaktif, mengambil masukan dari berbagai switch atau sensor, dan mengendalikan berbagai lampu, motor, dan output fisik lainnya. Proyek Arduino dapat berdiri sendiri, atau mereka dapat berkomunikasi dengan perangkat lunak yang berjalan pada komputer Anda (misalnya Flash, Pengolahan, MaxMSP.) Papan dapat dirakit dengan tangan atau dibeli preassembled; IDE open-source dapat didownload secara gratis. Bahasa pemrograman Arduino merupakan implementasi dari Wiring, platform komputasi fisik yang sama, yang didasarkan pada Processing multimedia programming environment. 2.2.2 Rancangan Skematik Microcontroller Arduino Mega 2560 [6] Kontrol unit merupakan syarat utama yang sangat penting sebagai pengontrol utama sistem. Pembangunan sistem Smart Home penyiraman tanaman ini menggunakan kontrol unit dengan development board merk Arduino yang bersifat open source. Tipe board yang digunakan adalah Arduino Mega 2560, yang memiliki 54 pin digital input/output, 16 pin analog. Board ini menggunakan microcontroller ATmega2560 dengan kapasitas flash memory sebesar 256 KB. Berikut adalah gambar skematik dan tampilan fisik Arduino Mega 2560 . II-5 Gambar 2.1 Skematik Microcontroller Arduino Mega 2560 Gambar 2.2Tampilan Fisik Microcontroller Arduino Mega 2560 2.2.3 Rancangan Skematik Arduino WiFi Shield [7] Penggunaan Arduino Wifi Shield memungkinkan sebuah board Arduino dapat terhubung ke internet secara nirkabel dengan spesifikasi Wireless (WiFi) 802.11. Hal ini didukung oleh chip HDG104 Wireless LAN 802.11b/g yang tertanam didalamnya. Sebuah microcontroller Atmega 32UC3 yang ternanam didalamnya merupakan penyedia jaringan (IP) baik itu TCP dan UDP. Penggunaan library WiFi yang diprogram kedalam board Arduino memungkinkan kedua perangkat ini dapat berkomunikasi. Berikut adalah gambar skematik dan tampilan fisik Arduino Wifi Shield . II-6 Gambar 2.3 Skematik Arduino Wifi Shield Gambar 2.4Tampilan Fisik Arduino Wifi Shield II-7 2.2.4 Spesifikasi Soil Moisture Sensor [8] Seperti telah sebutkan sebelumnya, untuk membaca nilai kelembapan tanah pada tanaman akan menggunakan sensor kelembapan tanah atau Soil Moisture Sensor. Alat ini dibuat oleh vendor DFRobot dengan sketsa dan spesifikasi sebagai berikut Spesifikasi : Power supply: 3.3v or 5v Output voltage signal: 0~4.2v Current: 35mA Pin definition: 1-Analog output(Blue wire) 2-GND(Black wire) 3-Power(Red wire) Size: 60x20x5mm Value range: 1. 0 ~300 : dry soil 2. 300~700 : humid soil 3. 700~950 : in water Gambar 2.5 Sketsa dan Spesifikasi Soil Moisture Sensor 2.2.5 Sketsa Servo Aliran air yang disalurkan oleh pompa air akan melalui empat keran untuk dapat mengalirkan dan menyiram empat tanaman dalam pot yang berbeda. Tugas pemilik rumah saat membuka keran untuk menyiram tanamannya akan diambil alih oleh sebuah servo yang dapat diatur gerakaanya sesuai besar derajat yang diinginkan untuk menggerakkan keran. Di bawah ini adalah gambaran dari servo yang digunakan untuk menggerakkan keran. II-8 Gambar 2.6 Servo Hitec Standart Sebagai Penggerak Keran 2.2.5 Mini DC Compressor Alat ini adalah alat utama yang berfungsi sebagai alat pemompa air bertekanan kecil. Saat mikrokontroler menjalankan program untuk menyalakan pompa ini yang dikirim langsung oleh user, pompa ini akan menyedot air dari penampungan air berskala kecil. Kemudian dialirkan melalui selang akuarium yang menuju kea rah tanaman yang akan disiram. II-9 Gambar 2.7 Mini DC Compressor 2.2.7 Mobile Device [9] Mobile Device (juga dikenal dengan istilah cellphone, handheld device, handheld computer, ”Palmtop”, atau secara sederhana disebut dengan handheld) adalah alat penghitung (computing device) yang berukuran saku, ciri khasnya mempunyai layar tampilan (display screen) dengan layar sentuh atau keyboard mini. Dalam hal PDA (Personal Digital Assistant) masukan (input) dan keluaran (output) dikombinasi dalam interface layar sentuh. Untuk mendapatkan pelayanan dan kenyamanan dari sebuah komputer konvensional yang dapat dibawa-bawa dan praktis adalah Smartphone dan PDA. Kedua peralatan ini yang paling populer, selain itu ada Enterprise Digital Assistants yang dapat dikembangkan lebih jauh untuk kepentingan bisnis, yang menawarkan peralatan yang mampu mengambil data terintegrasi seperti Bar Code, RFID dan Smart Card. 2.2.8 Smartphone [10] Smartphone atau ponsel pintar merupakan ponsel yang dibangun dengan sistem operasi mobile, dengan keampuan komputasi dan II-10 konektifitas yang lebih maju. Smartphone awalnya mengkombinasikan fungsi yang terdapat pada Personal Digital Assistant (PDA), seperti fitur fungsi email, dengan perangkat ponsel. Perkembangan selanjutnya menambahkan beberapa fungsi yang bersifat portable seperti media players, kamera digital low-end, poket kamera video, dan navigasi GPS (Global Position Unit) yang menjadi dalam satu perangkat multi guna. Banyak smartphone modern juga memiliki layar sentuh resolusi tinggi dan web browser yang dapat menampilkan halaman standar web dengan situs mobile yang dioptimalkan. Kecepatan akses data yang tinggi dapat tersedia melalui koneksi Wi-Fi, mobile broadband, NFC dan Bluetooth. Dalam beberapa tahun terakhir perkembangan pasar aplikasi mobile dan komersialisasi mobile telah dikemudikan oleh smartphone. Sistem operasi mobile yang digunakan oleh smartphone modern diantaranya adalah Android, Apple’s iOS, Symbian, Blackberry, Samsung’s Bada, Microsoft Windows Phone, Hewlett-Packard’s webOS, dan distribusi embedded Linux seperti Maemo dan Meego. Sistem operasi tersebut dapat dipasangkan ke beragam model telepon genggam yang berbeda, dan biasanya setiap perangkat dapat diperbaharui dengan banyak Sistem Operasi terkini sesuai dengan spesifikasi yang memungkinkan. Beberapa sistem operasi lainnya yang akan datang adalah Mozilla Firefox OS, Canonical Ltd’s, Ubuntu Phone, dan Tizen. Berdasarkan hasil penjualan smartphone di seluruh dunia, menyebutkan bahwa Smartphone Android dan iPhone telah mendominasi sebanyak 90 persen dari seluruh penjualan ponsel global di awal tahun 2013 hingga bulan juli 2013. 2.2.9 Android [11] Android adalah sistem operasi yang berbasis Linux untuk telepon seluler seperti telepon pintar dan komputer tablet. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang II-11 membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD). 2.2.10 Versi Android yang Diterapkan Versi android yang diterapkan dalam penelitian tugas akhir ini adalah menggunakan versi Ice Cream Sandwich. Lebih jelasnya adalah sebagai berikut a. Android versi 4.0 (ICS: Ice Cream Sandwich) Diumumkan pada tanggal 19 Oktober 2011, membawa fitur Honeycomb untuk smartphone dan menambahkan fitur baru termasuk membuka kunci dengan pengenalan wajah, jaringan data pemantauan penggunaan dan kontrol, terpadu kontak jaringan sosial, perangkat tambahan fotografi, mencari email secara offline, dan berbagi informasi dengan menggunakan NFC. Ponsel pertama menggunakan sistem operasi ini adalah Samsung Galaxy Nexus. . yang II-12 2.3 Elektrikal Pada implementasi penelitian prototype sistem kontrol penyiraman tanaman otomatis smarthome berbasasis mikrokontroller arduino dan android, tak akan lepas dari dunia elektronika. Dalam penerapannya banyak sekali komponen kecil yang akan mendukung pembangunan sistem ini. Berikut adalah beberapa komponen elektronika kecil yang digunakan dalam pembangunan Smarthome sistem penyiraman tanaman. 2.3.1 Led [12] LED adalah singkatan dari "Light Emitting Diode". Yang berarti LED adalah perangkat semi-konduktor yang menghasilkan cahaya ketika arus listrik melewati celah antara katoda dan anoda didalam sistem perangkat tsb. LED juga disebut "Solid State Lighting" karena chip LED disolder ke Printed Circuit Board (PCB) dan oleh karena itu tidak memiliki artikel-artikel yang longgar / filamen seperti bola lampu pijar, atau zat beracun seperti gas merkuri pada Lampu Hemat Energy (LHE). LED telah beredar cukup lama, tetapi baru akhir-akhir ini produsenprodusen LED telah mulai memperluas lini produk mereka dari lampu dioda sederhana, yang digunakan terutama untuk lampu indikator, ke versi yang lebih canggih, lebih efisien dan lebih terang. Dalam dekade terakhir ini, kemajuan teknologi LED telah berhasil membuat LED yang lebih terang dan berdaya lebih tinggi untuk diaplikasikan ke dalam senter, lampu outdoor, lampu mobil, dan sebagainya. Dan hanya baru-baru ini, LED mulai digunakan secara luas untuk keperluan penerangan umum (penerangan dalam/luar ruangan, penerangan komersial, lampu dekorasi, lampu sorot, lampu panggung, dll). 2.4 Jaringan Komputer (Computer Networking) [13] Jaringan komputer (jaringan) adalah sebuah sistem yang terdiri atas komputer-komputer yang didesain untuk dapat berbagi sumber daya (printer, II-13 CPU), berkomunikasi (surel, pesan instan), dan dapat mengakses informasi(peramban web).Tujuan dari jaringan komputer adalah agar dapat mencapai tujuannya, setiap bagian dari jaringan komputer dapat meminta dan memberikan layanan (service). Pihak yang meminta/menerima layanan disebut klien (client) dan yang memberikan/mengirim layanan disebut peladen (server). Desain ini disebut dengan sistem client-server, dan digunakan pada hampir seluruh aplikasi jaringan komputer. Dua buah komputer yang masing-masing memiliki sebuah kartu jaringan, kemudian dihubungkan melalui kabel maupun nirkabel sebagai medium transmisi data, dan terdapat perangkat lunak sistem operasi jaringan akan membentuk sebuah jaringan komputer yang sederhana. Apabila ingin membuat jaringan komputer yang lebih luas lagi jangkauannya, maka diperlukan peralatan tambahan seperti Hub, Bridge, Switch, Router, Gateway sebagai peralatan interkoneksinya. 2.5 Software PC Pendukung Pembangunan Sistem Membangun sebuah perangkat lunak takkan lepas dari software pendukung yang digunakannya, khususnya untuk memangun aplikasi Smarthome yang berbasiskan Android, dan Arduino ini. Pembangunan sistem Smarthome yang terintegrasi ini didukung oleh beberapa software pendukung yaitu : 2.5.1 MySQL[14] MySQL adalah sebuah implementasi dari sistem manajemen basisdata relasional (RDBMS) yang didistribusikan secara gratis dibawahlisensi GPL (General Public License). Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. II-14 Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata non-transaksional. Pada modus operasi nontransaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basisdata kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus nontransaksional. 2.5.2 XAMPP Xampp merupakan tool yang menyediakan paket perangkat lunak ke dalam satu buah paket. Dengan menginstall XAMPP maka tidak perlu lagi melakukan instalasi dan konfigurasi web server Apache, PHP dan MySQL secara manual. XAMPP akan menginstalasi dan mengkonfigurasikannya secara otomatis untuk anda atau auto konfigurasi. Software XAMPP versi ini terdiri atas: a. APACHE Apache sudah berkembang sejak versi pertamanya. Sampai saat ditulisnya artikel ini versi terakhirnya yang ada yaitu Apache ver 2.0.54. Apache bersifat open source, artinya setiap orang boleh menggunakannya, mengambil dan bahkan mengubah kode programnya. II-15 Tugas utama apache adalah menghasilkan halaman web yang benar kepada peminta, berdasarkan kode PHP yang dituliskan oleh pembuat halaman web. Jika diperlukan juga berdasarkan kode PHP yang dituliskan, maka dapat saja suatu database diakses terlebih dahulu (misalnya dalam MySQL) untuk mendukung halaman web yang dihasilkan. b. PhpMyAdmin Pengelolaan database dengan MYSQL harus dilakukan dengan mengetikkan baris-baris perintah yang sesuai (command line) untuk setiap maksud tertentu. Jika ingin membuat database, ketikkan baris perintah yang sesuai untuk membuat database. Jika ingin menghapus tabel, ketikkan baris perintah yang sesuai untuk menghapus tabel. Hal tersebut tentu cukup menyulitkan karena kita harus hafal dan mengetikkan perintahnya satu persatu. Banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola data base dalam MySQL, salah satunya adalah phpMyAdmin. Dengan phpMyAdmin kita dapat membuat tabel, mengisi data dan lain-lain dengan mudah tanpa harus hafal perintahnya. Untuk mengaktifkan phpMyAdmin langkah-langkahnya adalah : yang pertama setelah XAMPP kita terinstall, kita harus mengaktifkan web server Apache dan MySQL dari control panel XAMPP. Yang kedua, jalankan browser (IE, Mozilla Firefox atau Opera) lalu mengetikkan alamat web berikut : http://localhost/phpmyadmin/ pada address bar lalu tekan Enter. Langkah ketiga apabila telah nampak interface (tampilan antar muka) phpMyAdmin, kita bisa memulainya dengan mengetikkan nama database, nama tabel dan seterusnya. II-16 2.5.3 Arduino SDK dan Eclipse Pada pembangunan perangkat Smart Home ini akan membutuhkan Software yang berfungsi sebagai proses pengkodean. Pengkodean itu pertama terdiri dari pengkodean microcontroller yang terdapat dalam development board Arduino. Proses pengkodean dan upload program dilakukan dengan menggunakan SDK Arduino. Sedangkan yang kedua adalah pengkodean yang dirancang untuk membangun antarmuka mobile smartphone android. Tugas pengkodean kedua ini dapat dilakukan dengan menggunakan Eclipse ID ( Integrated Development Environment ) versi Juno. Lebih jelasnya berikut adalah contoh screenshot dari kedua software tersebut. Gambar 2.8 Screenshot SDK Arduino (kiri), Eclipse IDE (kanan)