Membuat sistem yang merespons kondisi sensor secara otomatis menggunakan logika if-else.
Pernahkah kalian memperhatikan lampu jalan yang tiba-tiba menyala sendiri saat hari mulai gelap? Atau AC di ruang guru yang otomatis mengecilkan suhunya saat ruangan terasa panas? Itulah yang disebut Otomatisasi.
Otomatisasi berarti membuat sistem yang bisa mengambil keputusan dan bertindak sendiri tanpa perlu bantuan manusia secara terus-menerus. Sistem ini layaknya tubuh kita: punya mata atau kulit (sensor) untuk merasakan keadaan sekitar, otak (Arduino) untuk memikirkan kondisi tersebut, dan otot (aktuator/output) untuk bertindak.
Untuk membuat sistem kita bisa melihat cahaya, kita butuh komponen khusus bernama LDR (Light Dependent Resistor). Sesuai namanya, LDR adalah resistor (penghambat arus listrik) yang nilai hambatannya berubah-ubah tergantung seberapa terang cahaya yang diterimanya.
LDR bersifat analog, artinya ia tidak hanya merespons "terang" atau "gelap" (1 atau 0) saja, melainkan bisa mengukur gradasi cahaya—misalnya agak terang, redup, mendung, dsb. Karena itu, LDR dibaca menggunakan pin analog (A0-A5) dengan fungsi analogRead().
Ketika Arduino membaca sensor LDR menggunakan analogRead(), nilai yang masuk adalah rentang angka antara 0 hingga 1023. Masalahnya, darimana Arduino tahu bahwa nilai 400 itu "gelap" dan nilai 800 itu "terang"?
Jawabannya adalah: Kita harus mengajarinya!
Kita perlu menentukan sebuah nilai batas atau Threshold. Nilai ini menjadi titik pemisah antara satu kondisi dengan kondisi lainnya.
Mari kita mulai dengan sistem dasar: sebuah lampu otomatis. Jika kondisi ruangan di atas nilai threshold (terang), lampu mati. Jika di bawah threshold (gelap), lampu menyala.
Sistem yang cerdas seringkali butuh perlakuan berbeda, tak sekadar mati atau menyala penuh. Bagaimana kalau kita tambahkan tingkat "redup"?
Kita akan menggunakan PWM (Pulse Width Modulation) pada pin 9 untuk mengatur kecerahan LED berdasarkan 3 tingkat kondisi yang dibaca oleh LDR.
Solusi:Gunakan delay() agar nilai yang terbaca stabil, dan pastikan perkabelan sensor LDR tidak kendor.
Solusi:Cek konfigurasi pembagi tegangan (voltage divider) dengan resistor 10k Ohm. Pastikan satu kaki LDR ke 5V dan satu lagi ke A0 yang juga ditarik ke GND melalui resistor 10k.
Solusi:Pastikan LED terhubung ke pin PWM (pin dengan tanda ~, seperti 3, 5, 6, 9, 10, 11). Pin 13 bukan PWM di board Uno biasa.
Kepala Sekolah meminta kalian membuat sistem pencahayaan hemat energi untuk ruang kelas.
Tugas:
tone(pin, frekuensi, durasi) di dalam blok if (cahaya < GELAP) untuk membunyikan buzzer. Pastikan tidak lupa men-setup pin buzzer sebagai OUTPUT di setup()!Luangkan 2–3 menit untuk menjawab pertanyaan di bawah secara jujur.
Apa yang paling mengejutkan atau menarik hari ini?
Inspirasi proyek apa yang terlintas di pikiranmu setelah belajar otomatisasi dengan sensor LDR?
Apa yang masih membingungkan atau ingin kamu pahami lebih dalam?
Bagian manakah dari menentukan nilai 'threshold' yang paling membingungkan saat kalian coba sendiri?
Apa yang ingin kamu coba atau pelajari minggu depan?
Hal baru apa yang ingin kalian tambahkan ke sistem lampu cerdas ini di masa depan?
Refleksi tidak dinilai — ini adalah ruang jujurmu untuk berpikir.