Bab IV PERANCANGAN SISTEM KONTROL NUTRISI HIDROPONIK NFT TUMBUHAN TOMAT IV.1 Desain Sistem Disain sistem yang dibangun dibagi menjadi tiga proses yaitu pencampuran larutan di tabung pencampur, pemberian larutan menuju wadah penanaman, dan penampungan larutan di pembuangan sementara (temporary reservoir). Ketiga proses tersebut berjalan secara bergantian dan bersirkulasi secara terus menerus. Gambar 4.1 Disain sistem umum 24 Pada proses pertama, delapan tabung larutan nutrisi akan mengalirkan larutannya ke tabung pencampur dengan jumlah larutan yang telah ditentukan oleh pengguna. Proses pengaliran tiap-tiap tabung dilakukan secara bergantian dimulai dari pengaliran larutan oleh tabung pertama hingga diakhiri oleh tabung ke delapan. Setelah semua larutan dialirkan ke dalam tabung pencampur, kipas akan berputar untuk mengaduk seluruh larutan yang terlarut. Proses pencampuran dikendalikan oleh sistem logika fuzzi dan dimonitor secara periodik oleh pengguna. Proses kedua adalah pengaliran larutan nutrisi yang telah di satukan menuju wadah penanaman. Proses pengaliran ini dilakukan secara perlahan dengan kecepatan aliran yang rendah (sekitar 5-40 ml/detik) dan dalam jumlah yang sedikit. Posisi wadah penanaman diletakkan dengan sudut 15˚ terhadap bidang datar, hal tersebut bertujuan untuk menjaga agar larutan nutrisi yang mengalir dapat diterima dengan baik oleh tumbuhan. Gambar 4.2 Arsitektur sistem kontrol 25 Proses ketiga adalah proses penampungan larutan di pembuangan sementara (temporary reservoar). Pada bagian ini pompa akan mengalirkan nutrisi kembali menuju tabung pencampur (mixing tube) secara terus menerus. Proses kontrol secara keseluruhan pada sistem ini dapat dijabarkan oleh gambar 4.2. Arsitektur rancangan pada gambar diatas memperlihatkan bahwa pengguna (pengguna) memiliki kendali terhadap setting jumlah larutan nutrisi yang ingin dialirkan serta aturan fuzzi yang ingin dipakai. Input berupa volume larutan diakuisisi oleh sistem dan data yang diterima dimasukkan ke dalam sistem kontrol untuk dijadikan referensi sebagai data perbandingan terhadap setting volume yang diinginkan. Hasil keluaran dari sistem akan disampaikan ke blok aktuator untuk mengatur besarnya dan lamanya bukaan motor stepper di plant. Selain itu sistem kontrol akan menampilkan informasi kepada pengguna berupa grafik dan data mengenai proses yang terjadi selama sistem dijalankan. IV.2 Desain Sistem Kontrol Gambar 4.3 Diagram blok sistem Dalam desain sistem kontrol ini terdapat tiga bagian utama dari sistem kontrol nutrisi. Bagian pertama adalah bagian pengendalian yang ada di PC 26 (komputer). Pada bagian ini seluruh data akan diolah di dalam sistem pengontrolan logika fuzzi. Bagian yang kedua adalah bagian perangkat keras yang berisikan sistem instrumentasi dan elektronika dari sistem pengontrol keseluruhan. Bagian ini mencakup pengontrolan pada motor stepper dan juga kipas. Sedangkan bagian terakhir adalah blok akuisisi data yang berfungsi untuk mengumpan balikkan data volume ke proses pengontrolan di komputer. Proses kontrol dari sistem dibuat untuk n pengukuran. Tiap pengukurannnya delapan tabung akan mengalirkan sejumlah larutan sesuai dengan setting yang telah ditentukan oleh pengguna. Input untuk pengukuran berupa jumlah volume larutan yang berasal dari data konsentrasi kebutuhan nutrisi tumbuhan tomat (tabel 2.1 dan tabel 2.2). Jumlah konsentrasi diatur dalam volume zat pelarut (persamaan 2.1). Data jumlah konsentrasi dijadikan acuan untuk melakukan proses pengontrolan di komputer hingga pengiriman data menuju blok aktuator. Pada kasus ini tabung satu akan mengalirkan sejumlah larutannya dan data jumlah larutan yang masuk ke dalam tabung pencampur akan dideteksi oleh sensor ketinggian sebelum disimpan untuk dijadikan input masukan pada tabung satu untuk pengukuran selanjutnya (ke-2). Jika pada pengukuran pertama input volume di setting oleh pengguna maka pada pengukuran ke dua, input masukan berasal dari data ketinggian yang diterima oleh masing-masing sensor di siklus pertama. Input tersebut diolah dengan logika fuzzi di blok kontrol di komputer sebelum dikirimkan ke blok aktuator untuk menggerakkan motor stepper. Jumlah larutan yang masuk ke tabung pencampur kembali dideteksi oleh sensor ketinggian untuk disimpan datanya dalam suatu file. Data ketinggian yang dideteksi oleh sensor akan dijadikan input masukan terhadap proses fuzzi di pengukuran berikutnya. 27 IV.3 Desain Perangkat Keras IV.3.1 Blok akuisisi data Blok akuisisi data adalah blok yang mengumpulkan data fisis untuk dikirimkan ke komputer dalam bentuk data digital. Dalam sistem ini blok akuisisi data terbagi menjadi empat bagian, yaitu sensor, ADC, mikrokontroller dan PC. Gambar 4.4 Blok akuisis data Sensor berfungsi untuk mengubah besaran fisis menjadi besaran elektrik. Dalam sistem ini besaran fisis yang diukur adalah ketinggian dari air yang ada pada tabung pencampur. Bagian ADC berfungsi untuk mengkonversi data analog menjadi data digital sehingga data tersebut dapat diproses oleh komputer. Integrated Circuit (IC) ADC yang digunakan dalam sistem ini adalah ADC 0809 yang merupakan ADC 8 bit yang mengonversi data analog menjadi data digital dengan panjang data sebanyak 8 bilangan digital (1 byte). Data ADC tersebut diteruskan ke kaki-kaki mikrokontroller AT89S52 sebelum data tersebut dikirimkan ke bagian komputer. Data yang masuk ke mikrokontroller diatur agar selang waktu pengambilan datanya dapat sesuai dengan selang waktu pengiriman data ke komputer. Proses pengiriman data dari mikrokontroller ke komputer memakai media port serial dan berlangsung dua arah artinya komputer akan kembali 28 mengirimkan data ke mikrokontroller untuk memverifikasi kebenaran data tersebut. IV.3.2 IV.3.2.1 Sensor Ketinggian Disain dan dimensi Gambar 4.5 Sketsa desain sensor ketinggian Sensor ketinggian dibuat dari bahan kawat besi yang memiliki diameter 1 mm dengan panjang 14 cm yang ditempatkan di sebatang balok berukuran 16 × 1 × 4 cm. Kawat besi yang digunakan berjumlah dua buah dengan masing-masing ujungnya terhubung dengan dua buah kabel yang menuju catu daya. Salah satu kabel diberi tegangan sebesar 5 Volt dari catu daya sementara itu kabel lainnya terhubung dengan dua buah 29 resistor yang masing-masing memiliki hambatan sebesar 15Ω dan 330Ω. Masing-masing kaki resistor 330 Ω terhubung dengan ADC 0809 8 bit. IV.3.2.2 Prinsip kerja Prinsip kerja sensor ini dalam mendeteksi jumlah larutan yang terdapat pada tabung penampung dengan menggunakan hukum ohm, R = ρ l , dimana R (satuan: Ohm) adalah hambatan dari A arus yang mengalir pada kawat, l (meter) adalah panjang dari kawat besi yang dilewati oleh arus listrik dan A (meter2) adalah luas penampang dari kawat besi. Karena besarnya A dan ρ adalah konstan untuk masing-masing panjang kawat maka dari itu nilai dari hambatan (R) hanya akan tergantung dari panjang kawat besi yang dialiri oleh arus listrik. Mengingat nilai ρ untuk kawat besi berada pada rentang 4,579 - 909 nΩ·m [10] maka dari itu perubahan R pada kawat besi akan sangat kecil dan sulit untuk dideteksi. Untuk mengatasi hal ini dialirkan arus ke kawat besi dan diamati respon perubahan tegangan pada dua resistor yang dipasang pada salah satu kawat besi yang terhubung dengan ground di catu daya. Tanggapan variasi tegangan tersebut dijadikan acuan dalam mendeteksi perubahan panjang kawat yang dialiri oleh arus listrik. 30 Dalam kondisi tabung penampung kosong, artinya masingmasing kawat besi tidak terhubung antara satu sama lainnya, maka nilai tegangan akan menunjukkan angka 0 Volt. Pada saat tabung pencampur dialiri oleh larutan nutrisi, terdapat perubahan ketinggian larutan yang mengenai kawat besi. Larutan yang bersifat elektrolit berfungsi sebagai medium untuk mengalirkan arus antar masing-masing kawat. Jika ketinggian larutan yang ada pada tabung penampung berubah, maka resisitivitas pada kawat yang dialiri arus juga akan berubah sehingga tegangan yang masuk pada masing-masing resistor yang dipasangpun ikut berubah. Dengan kata lain, besarnya tegangan yang diterima oleh masing-masing resistor mewakilkankan jumlah aliran larutan yang masuk ke tabung penampang. Gambar 4.6 Mekanisme perubahan resistivitas pada sensor ketinggian ketika jumlah volume air yang berada pada sensor berbeda. (a) Arus mengalir pada lintasan kawat l1 pada jumlah volume larutan V1. (b) Arus mengalir pada lintasan kawat l2 pada jumlah volume larutan V2. 31 IV.3.3 Blok aktuator Blok aktuator adalah bagian yang berfungsi untuk mengubah data-data digital menjadi aksi mekanik. Aktuator yang digerakkan disini adalah motor stepper dan kipas. Gambar 4.7 Blok Aktuator Pada blok aktuator ini komputer memiliki dua fungsi utama yaitu untuk mengirim data ke mikrokontroller dan memrogram mikrokontroller. Proses pengiriman data dilakukan melalui port serial dan berlangsung dua arah. Sedangkan proses pemrograman mikrokontroller dilakukan melalui jalur komunikasi parallel. Pada sistem ini mikrokontroller yang digunakan berasal dari keluarga MCS51 dengan jenis AT89S52. Mikrokontroller ini mempunyai kemampuan serial downloading atau lebih dikenal dengan istilah In System Programming (ISP) sehingga mikrokontroller langsung dapat diprogram pada rangkaiannya tanpa harus mencabut IC untuk diprogram. Untuk menggerakkan motor stepper, mikrokontroller akan terlebih dahulu mengirimkan datanya ke driver motor stepper. Driver motor ini berfungsi sebagai antarmuka antara blok mikrokontroller dan blok 32 aktuator untuk meaktifkan motor stepper berapa yang akan diaktifkan. Komunikasi driver motor dan motor stepper melalui port parallel. Pengontrolan untuk kipas dilakukan secara on-off yang melibatkan relay dan penguat arus. Rangkaian on-off ini beroperasi sesuai instruksi yang diberikan oleh mikrokontroller. Instruksi itu disampaikan melalui bentuk tegangan logic (high atau low). Kipas yang digunakan pada sistem adalah kipas dc yang digerakkan dengan tegangan sebesar 12 Volt. Bentuk kipas mirip dengan mixer untuk mencampur makanan (baking mixer). Kipas ini juga berbahan dari stainless steal yang memiliki kapasitas sampai 10 liter larutan dengan kecepatan dapat diatur hingga mencapai 1100 rpm 33 TOMBOL 2 1 CONN-H2 R5 10k C7 1nF R2 10k DOWNLOADER 5 4 3 2 1 CONN-H5 C5 1nF C6 1nF 1 2 R1 10k 19 18 9 29 30 31 1 2 3 4 5 6 7 8 XTAL1 MIKRO XTAL2 RST PSEN ALE EA P1.0/T2 P1.1/T2EX P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 I/03 CONN-SIL8 I/O2 CONN-SIL8 R4 1 2 3 4 5 6 7 8 R3 1 2 3 4 5 6 7 8 9 D1 10k D2 LED 10k LED RP1 RESPACK-8 11 12 10 9 C3 1nF C1+ 1 T1OUT R1IN T2OUT R2IN C1- 3 C2+ 5 C2- VS+ VS- T1IN R1OUT T2IN R2OUT C2 4 1nF MAX232 14 13 7 8 2 6 MAX232 1nF C1 1nF C4 1 6 2 7 3 8 4 9 5 1 6 2 7 3 8 4 9 5 WRITE CONN-D9M READ CONN-D9F Gambar 4.8 Rangkaian blok kontrol [2] 34 POWER CRYSTAL X1 CONN-H2 I/01 5 4 3 2 1 CONN-H5 AT89C55 1 2 3 4 5 6 7 8 Gamb bar 4.9 Rangkaaian Driver Mootor Stepper [22] 35 IV.4 Desain Perangkat Lunak IV.4.1 Diagram konteks Diagram konteks pada gambar 4.11 memperlihatkan bahwa sistem kontrol nutrisi tumbuhan terhubung dengan dua entitas utama, yaitu pengguna dan plant (lingkungan). Entitas pertama, pengguna memilki kemampuan untuk memerintahkan aksi kepada sistem. Aksi tersebut berupa pengaturan domain dan aturan fuzzi serta setting jumlah volume larutan yang hendak dialirkan. Umpan balik sistem ke pengguna berupa tampilan data selama proses berlangsung. Entitas kedua adalah plant, dalam entitas ini terdapat dua bagian utama yaitu, bagian motor stepper dan bagian sensor. Sensor bertugas untuk memberikan data volume dari larutan yang masuk ke tabung pencampur sedangkan motor stepper berfungsi mengatur besar dan lamanya valve pada masing-masing tabung sesuai dengan hasil olahan yang diberikan oleh sistem. Gambar 4.10 Diagram konteks sistem 36 IV.4.2 Diagram Aliran Data Level 0 Diagram Aliran Data (DAD) level 0 adalah diagram aliran data yang mengalirkan data antar bagian yang satu dengan bagian yang lainnya. Gambar 4.11 Diagram Aliran Data Level 0 Input data adalah bagian dalam proses pengontrolan yang melakukan pembuatan domain dan aturan fuzzi, bagian untuk pengambilan data dari plant melalui sensor ketinggian dan bagian dalam menerima perintah langsung dari pengguna. Bagian ini juga memberikan perintah untuk mengalirkan volume larutan yang akan di lakukan proses pendahuluan terlebih dahulu untuk masuk ke proses fuzzi. Pada bagian pembuatan domain dan aturan fuzzi, semua data direkam dan sewaktu-waktu dapat dipanggil kembali jika diperlukan. Proses kedua adalah proses logika fuzzi. Proses ini berlangsung di komputer. Jumlah volume yang masuk dijadikan input untuk proses fuzzi. Hasil keluran dari proses fuzzi berupa berapa banyak langkah dari motor stepper membuka. Keluaran ini kemudian dikonversikan 37 nilainya ke dalam nilai yang dapat dikenali oleh aktuator di paska proses. Hasil dari paska proses akan dikirimkan nilai ke mikrokontroller. Output yang keluar dari paska proses akan masuk ke proses 3, yaitu mikrokontroller. Pada proses ini, mikrokontroller akan menunggu perintah dari komputer. Perintah yang dibaca oleh mikrokontroller akan dilanjutkan untuk menjalankan blok aktuator yang ada pada plant. Pada bagian proses 3 ini juga mikrokontroller menerima data dari plant berupa data banyaknya volume, data tersebut dikirimkan sebagai umpan balik ke proses 1. Tampilan merupakan indikator dari keberjalanan proses kontrol nutrisi. Tampilan berperan menampilkan keseluruhan proses. Proses yang ditampilkan diantaranya, domain, aturan rule(s) fuzzi, kumpulan data kebutuhan nutrisi, juga informasi dari data pengontrolan ketinggian nutrisi yang masuk ke dalam tabung pencampur. Semua informasi yang diberikan terekam dalam suatu data dan dapat dipanggil kapan saja oleh pengguna. IV.4.3 Diagram aliran data level 1 proses 1 (input data) DAD level 1 proses 1 merupakan penjabaran lebih detail untuk bagian input data pada proses 1 di DAD level 0. Proses input terdiri dari dua proses utama yaitu pengisian domain-aturan fuzzi, dan setting aliran volume oleh pengguna. 38 Semua data domain-aturan yang pengguna masukkan ke dalam sistem akan disimpan dalam suatu kumpulan data yang sewaktu-waktu dapat pengguna panggil kembali. Kumpulan data ini unik untuk jenis tumbuhan tertentu, oleh karenanya domain & aturan yang disetting perlu disesuaikan dengan kebutuhan nutrisi yang diperlukan oleh tumbuhan (tabel 2.1 dan tabel 2.2). Pada proses 1 ini pengguna dapat menentukan setting volume dari larutan yang masuk ke dalam tabung pencampur. Volume larutan yang masuk berasal dari proses 3, yaitu mikrokontroller. Data nilai dari domain dan aturan serta volume akan diolah di proses 2. Gambar 4.12 Diagram Alir Data Level 1 Proses 1 (Input Data) IV.4.4 Diagram aliran data level 1 proses 2 (logika fuzzi) Pada proses 2, logika fuzzi, proses dimulai dengan proses pendahuluan Pada proses ini volume yang masuk ke dalam tabung pencampur dijadikan sebagai input fuzzi. 39 Gambar 4.13 Diagram Alir Data Level 2 Proses 2 Proses selanjutnya adalah proses fuzzifikasi dari nilai jumlah volume yang masuk ke proses pada proses pendahuluan dan nilai dari domain input untuk menghitung nilai dari derajat keanggotaan masing-masing input pada variabel besar volume. Apabila nilai input volume tidak temasuk ke dalam himpunan tertentu, maka derajat keanggotaannya akan bernilai satu. Proses 2.2 implikasi menggunakan data aturan yang dibuat oleh pengguna, dari proses fuzzifikasi proses implikasi dapat menentukan batasan nilai yang harus diberikan pada output fuzzi. Proses ini 40 dilakukan sebanyak jumlah aturan yang dibuat. Dengan kata lain untuk satu aturan akan dihasilkan satu nilai. Proses implikasi akan mempunyai nilai apabila aturan yang dievaluasi cocok. Sebaliknya proses akan bernilai nol apabila aturan yang dievaluasi tidak cocok. Untuk proses 2.3 agregasi, referensi awal digunakan nilai dari domain output. Proses ini melakukan evaluasi terhadap setiap titik pada variabel output fuzzi dalam selang tertentu tergantung dari jangkauan domain output yang digunakan dan menyimpan derajat keanggotaan paling tinggi (maximum) dari setiap titik tersebut. Proses 2.4, defuzzifikasi menggunakan data keluaran hasil proses 2.3, untuk menentukan nilai tegas (crisp) dari komputasi logika fuzzi. Proses ini dilakukan dengan menggunakan metode pusat massa (centroid) secara diskrit. Nilai keluaran dari defuzzifikasi akan diberikan pada paska proses untuk disesuaikan nilainya dengan kebutuhan aktuator. IV.4.5 Diagram aliran data level 1 proses 3 (mikrokontroler) DAD level 1 proses 3 dimulai dengan pengiriman data dari sensor volume ke mikrokontroller. Bagian ADC yaitu proses 3.1 akan membaca nilai tegangan yang masuk dan akan mengkonversikannya ke dalam digit biner. Data digit biner kemudian masuk ke dalam proses 3.2 untuk dikirimkan ke komputer. 41 Gambar 4.14 Data Alir Diagram Level 1 Proses 3 (Mikrokontroler) Pada proses selanjutnya, data bertipe karakter yang diterika oleh komputer dan diolah untuk dikirimkan kembali ke mikrokontroller sebagai perintah menggerakkan motor stepper dan kipas. 42