Materi: Smart Trashbin: Percabangan (If-Else)
17%

Smart Trashbin: Percabangan (If-Else)

Micro:bit IoT

Percabangan memungkinkan program mengambil keputusan yang berbeda berdasarkan kondisi. Tanpa percabangan, program hanya bisa menjalankan instruksi secara lurus.


🎯 Tujuan Pembelajaran:



  • Memahami struktur if, if-else, dan if-else if

  • Menerapkan percabangan pada logika Smart Trashbin

  • Menggabungkan beberapa kondisi dengan operator logika


Bentuk-bentuk Percabangan



  • if tunggal: Jalankan kode hanya jika kondisi benar

  • if-else: Pilih antara dua jalur (benar atau salah)

  • if-else if-else: Pilih dari tiga atau lebih jalur


Penerapan pada Smart Trashbin


Sistem menggunakan 3 level kondisi berdasarkan nilai sensor:



  • Jarak < 10 cm → "SANGAT DEKAT" → buka lebih cepat

  • Jarak < 20 cm → "DEKAT" → buka normal

  • Jarak ≥ 20 cm → "JAUH" → tutup/standby

Kode Contoh
// Contoh Percabangan Multi-Level pada Smart Trashbin
basic.forever(function () {
    let jarak = sonar.ping(DigitalPin.P1, DigitalPin.P2, PingUnit.Centimeters)

    // Multi kondisi berdasarkan jarak
    if (jarak < 10) {
        basic.showString("!!!")     // Sangat dekat
        pins.servoWritePin(AnalogPin.P0, 90)
        pins.digitalWritePin(DigitalPin.P3, 1)
    } else if (jarak < 20) {
        basic.showString("OK")      // Dekat – buka normal
        pins.servoWritePin(AnalogPin.P0, 60)
    } else {
        basic.showString("-")       // Jauh – tutup
        pins.servoWritePin(AnalogPin.P0, 0)
        pins.digitalWritePin(DigitalPin.P3, 0)
    }

    basic.pause(200)
})
Tantangan Mandiri: Tarik blok program di sebelah kanan agar menyusun logika kode contoh di atas, lalu klik Play untuk melihat hasilnya pada simulator!
Blok Blockly
Kode JavaScript
// Kode JavaScript akan dihasilkan secara otomatis dari Blok...

Simulator BBC micro:bit

(1,0)(3,0)(0,1)(2,1)(4,1)(0,2)(4,2)(1,3)(3,3)(2,4)P0, ANALOG INP1, ANALOG INP2, ANALOG INP3, ANALOG IN, LED Col 1P4, ANALOG IN, LED Col 2P5, BUTTON AP6, LED Col 9P7, LED Col 8P8P9, LED Col 7P10, ANALOG IN, LED Col 3P11, BUTTON BP12, RESERVED ACCESSIBILITYP13, SPI - SCKP14, SPI - MISOP15, SPI - MOSIP16, SPI - Chip SelectP17, +3v3P18, +3v3P19, I2C - SCLP20, I2C - SDAGNDGND+3v3GNDAB
Sensor Virtual
Suhu Ambient: 25 °C
Tingkat Cahaya: 128
Kontrol Tombol:
Klik Tombol A Klik Tombol B Goyang Board (Shake)