Kembali ke portofolio

Studi Kasus Proyek

Smart Garden

Proyek ini berfokus pada pembuatan sistem Smart Garden yang mampu memantau dan mengatur kelembaban tanah secara otomatis untuk menjaga kondisi ideal bagi pertumbuhan tanaman. Sistem memanfaatkan ESP32 sebagai mikrokontroler, sensor kelembaban tanah untuk memperoleh data kondisi media tanam, serta pompa air sebagai aktuator penyiraman. Data sensor dikirim ke database melalui layanan berbasis PHP, kemudian diintegrasikan dengan platform Blynk dan aplikasi Android untuk memungkinkan pemantauan serta pengaturan sistem secara jarak jauh. Berdasarkan nilai kelembaban yang terdeteksi, sistem dapat mengaktifkan atau menonaktifkan pompa air secara otomatis sehingga kelembaban tanah tetap terjaga sesuai kebutuhan tanaman.

[App Inventor] [Ardunino IDE] [PHP] [ESP 8266]

Konteks & masalah

Penyiraman tanaman secara manual sering kali bergantung pada jadwal atau perkiraan pengguna tanpa mengetahui kondisi kelembaban tanah yang sebenarnya. Hal tersebut dapat menyebabkan tanaman mengalami kekurangan air (underwatering) atau kelebihan air (overwatering) yang berdampak pada pertumbuhan dan kesehatannya. Permasalahan ini semakin terasa ketika pemilik tanaman memiliki keterbatasan waktu atau tidak berada di lokasi untuk melakukan penyiraman secara rutin. Oleh karena itu, proyek Smart Garden dikembangkan sebagai sistem monitoring dan penyiraman otomatis yang mampu memantau kelembaban tanah secara real-time serta mengendalikan proses penyiraman sesuai kondisi tanah, sehingga perawatan tanaman menjadi lebih efisien, praktis, dan tepat sasaran.

Peran saya

Arsitektur & pendekatan

Sistem Smart Garden dirancang menggunakan pendekatan Internet of Things (IoT) dengan ESP32 sebagai pusat pengendali yang menghubungkan sensor, aktuator, database, dan aplikasi mobile. Sensor kelembaban tanah secara berkala membaca kondisi media tanam, kemudian data diproses oleh ESP32 untuk menentukan apakah penyiraman perlu dilakukan. Apabila nilai kelembaban berada di bawah batas yang telah ditentukan, ESP32 akan secara otomatis mengaktifkan pompa air hingga kelembaban kembali mencapai nilai yang diinginkan. Selain mode otomatis, sistem juga menyediakan mode kontrol manual melalui aplikasi mobile yang terhubung menggunakan Blynk, sehingga pengguna dapat menyalakan atau mematikan pompa air dari jarak jauh sesuai kebutuhan. Pendekatan ini memungkinkan sistem bekerja secara otomatis maupun dikendalikan secara real-time melalui perangkat mobile.

Diagram alur Diagram Alur
Dokumentasi akhir Dokumentasi Akhir
Ilustrasi Alat Ilustrasi Alat

Cuplikan kode

Potongan kode ini merupakan inti dari mekanisme komunikasi antara perangkat IoT dan server. ESP32 secara berkala mengirimkan permintaan HTTP ke server untuk memperoleh status terbaru sistem, kemudian memproses respons yang diterima sebagai perintah untuk mengendalikan aktuator. Bagian ini menarik karena menghubungkan perangkat keras dengan layanan berbasis web melalui protokol HTTP, sehingga sistem dapat dikontrol dari aplikasi mobile secara real-time. Tantangan utama pada implementasi ini adalah memastikan komunikasi jaringan tetap stabil, menangani kemungkinan kegagalan koneksi, serta menerjemahkan respons dari server menjadi aksi yang tepat pada perangkat.

[smartGarden.ino]
if (WiFi.status() == WL_CONNECTED)
{
    HTTPClient http;

    String serverPath = serverName + "?temperature=24.37";
    http.begin(serverPath.c_str());

    int httpResponseCode = http.GET();

    if (httpResponseCode > 0)
    {
        String payload = http.getString();

        if (payload == "Nyala")
        {
            digitalWrite(LED_BUILTIN, HIGH);
        }
        else if (payload == "Mati")
        {
            digitalWrite(LED_BUILTIN, LOW);
        }
    }

    http.end();
}
Lihat kode lengkap di GitHub
← Kembali ke semua proyek