Pada kelembaban tanah range yang digunakan sensor adalah 0 sampai 10. Nilai 0 menandakan tanah sangat kering atau sensor tidak menyentuh tanah jika nilai terus naik,
maka tanah akan semakin basah seperti pada gambar 4.14. Kondisi awal pada kelembaban tanah adalah 1 yaitu kondisi tanah kering. Saat sistem dijalankan pompa air akan langsung
menyala dan air akan disemprotkan melalui nozzle. Pada gambar 4.20 nilai kelembaban tanah saat pompa dinyalakan dapat menyampai nilai 6 setelah itu pompa mati karena telah
melewati set point atas. Setelah beberapa detik nilai turun pada kondisi 5. Kondisi kelembaban tanah akan cukup lama mencapai kondisi kering dikarenakan tidak terdapat
tanaman padan uji coba ini. Pada gambar 4.21 terlihat grafik kondisi pompa saat sistem berjalan. Daya yang digunakan pada sistem ini adalah sekitar 450 W dari penggunaan
humidifier 20 W, pompa air 356 W dan air cooler 60 W sementara untuk control box sekitar 14 W.
Gambar 4. 21 Grafik kondisi pompa air terhadap waktu
4.4 Analisa Software
Analisa software bertujuan apakah program pada mikrokontroler sudah sesuai dengan diagram alir pada perancangan bab 3. Analisa ini untuk mengetahui beberapa Error
pada program yang membuat sistem berjalan tidak sesuai dengan perancangan sistem.
4.4.1 Program Mikrokontroler
Pada program mikrokontroler terbagi menjadi beberapa bagian, yaitu inisialisasi, Void Setup, lalu yang terakhir adalah void loop. Pada looping terbagi atas beberapa bagian
lagi yaitu proses pengambilan data yang terdiri dari data RTC, data sensor, sistem kendali, pengiriman ke sistem interface lalu penyimpanan pada SD card.Proses selanjutnya adalah
memeriksa apakah tombol push button ditekan atau tidak oleh user untuk mengetahui PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
beberapa informasi yang ada. Setelah kedua proses itu selesai, looping akan kembali mengulang proses setelah 10 detik.
Inisialisasi berfungsi untuk mendefinisikan library serta variabel yang digunakan oleh sistem. Library yang digunakan seperti LCD, sht11, RTC, SD card dan seterusnya.
Sementara variabel yang digunakan adalah variabel yang digunakan untuk menggerakkan sistem kendali, push button serta pengambilan data sensor. Inisialisasi juga berfungsi
sebagai inisialisasi port input dan output pada arduino seperti yang di jelaskan pada tabel 3.1.
Pada Void Setup dilakukan beberapa perintah untuk memulai program. Perintah ini hanya akan berjalan 1 kali. Program yang dijalankan disini adalah menjalankan RTC dan
SD card serta mendeteksi apakah RTC dan SD card sudah dapat berjalan dengan baik apabila ada kesalahan akan terdapat indikasi pada LCD. Selanjutnya pada void Setup
dilakukan setting untuk timer. Settingan ini dilakukan agar nantinya pada pada void loop dijalankan setiap 10 detik. Settingan timer dapat dilihat pada gambar 4.22.
Gambar 4. 22 Setting Timer
Gambar 4. 23 List program loop subrutin pengambilan data sensor PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Pada bagian selanjutnya terdapat subrutin-subrutin yang dijelaskan pada perancangan serta tampilan utama pada sistem. Untuk memulai looping, kondisi button
state yaitu inisialisai tombol startstop harus LOW atau dalam kondisi di tekan seperti yang di tunjukkan pada gambar 4.23. Setelah tombol start di tekan akan muncul tampilan utama
program seperti yang ditunjukka pada gambar 4.11. Pada saat itu juga looping dimulai. Pada gambar 4.24
ditunjukkan “if a= =1” berarti saat timer = 1 program looping akan dimulai
Pada looping yang pertama dilakukan adalah subrutin pengambilan data sensor. Pada gambar 4.23 diperlihatkan prosesnya. Untuk kelembaban tanah data sensor akan di
mapping ke nilai 0 sampai 10 sesuai dengan alat ukur. Kemudian setelah semua nilai sensor didapatkan, program berlanjut pada subrutin kendali yaitu program membandingkan
nilai sensor dengan nilai referensi yang ada lalu menggerakkan output yang ada yaitu relay dan LED. Setelah dilakukan subrutin tersebut dilanjutkan dengan mengambil data dari
hasil output kendali untuk mengetahui kondisi output dalam kondisi menyala atau dimatikan. Program subrutin kendali dapat dilihat pada gambar 4.25.
Gambar 4. 24 List program loop pengiriman ke sistem interface PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4. 25 List Program loop Subrutin kendali PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4. 26 List program loop penyimpanan data pada SD card
Gambar 4. 27 List program loop saat tombol stop ditekan Kemudian setelah subrutin pengambilan data sensor dan kendali, dilanjutkan dengan
pengiriman data ke sistem interface pada gambar 4.24 serta penyimpanan data pada SD PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
card pada gambar 4.23. Setelah data disimpan pada SD card dan nilai a dibuat kembali menjadi 0 kemudia jika timer sudah menghitung selama 10 detik sistem akan mengulang
semua proses diatas. Pada saat yang sama saat timer menghitung selama 10 detik selain menjalankan looping program juga mengecek apakah tombol-tombol informasi pada LCD
di tekan.
Gambar 4. 28 List Program loop cek kondisi tombol Jika tombol ditekan maka program akan menampilkan informasi seusai dengan
tombol yang tekan. Proses akan terus berjalan sampai tombol startstop ditekan lagi. Saat tombol startstop ditekan maka saat itu kondisi button state = 0. Pada saat itu sistem akan
menampilkan informasi LCD seperti pada gambar 4.11, kemudian seluruh output kendali akan dibuat 0 atau dimatikan.
4.5 Analisa Error Pada Program