Thursday, September 11, 2025

🚦 Soal Latihan Arduino — Lampu Lalu Lintas 4 Arah (Job 3)

🚦 Soal Latihan Arduino — Lampu Lalu Lintas 4 Arah

(Soal cerita, panduan Wokwi, kode Arduino, dan tugas lanjutan — level lebih tinggi, 4 arah penuh)

📝 Soal Cerita

Kota Besar mulai menggunakan sistem lampu lalu lintas 4 arah (Utara, Selatan, Timur, Barat). Setiap arah memiliki tiga lampu: merah, kuning, hijau. Tantangan: Anda diminta membuat sistem lampu lalu lintas dengan aturan berikut:

  1. Urutan lampu setiap arah: Hijau → Kuning → Merah.
  2. Yang hijau hanya 1 arah dalam satu waktu (arah berlawanan tidak boleh sama-sama hijau).
  3. Durasi default: Hijau = 5 detik, Kuning = 2 detik, Merah = sesuai siklus.
  4. Urutan jalan: Utara → Timur → Selatan → Barat → kembali ke Utara.

Tugas Anda: Buat rangkaian di Wokwi (atau breadboard nyata), tulis program Arduino yang menjalankan aturan di atas, lalu screenshot hasil simulasi beserta penjelasan (10–15 baris).

📦 Komponen

  • 1 × Arduino Uno
  • 12 × LED (4 arah × 3 warna: merah, kuning, hijau)
  • 12 × Resistor 220Ω
  • Breadboard & kabel jumper
  • USB kabel / power supply 5V

🔌 Skema Singkat (teks)

Utara: Hijau → Pin 2, Kuning → Pin 3, Merah → Pin 4
Timur: Hijau → Pin 5, Kuning → Pin 6, Merah → Pin 7
Selatan: Hijau → Pin 8, Kuning → Pin 9, Merah → Pin 10
Barat: Hijau → Pin 11, Kuning → Pin 12, Merah → Pin 13

Semua katoda LED → GND Arduino.



💻 Kode Arduino (Copy → Paste ke Wokwi / Arduino IDE)

// Lampu Lalu Lintas 4 Arah (Utara, Timur, Selatan, Barat)

int merahu = 2;
int kuningu = 3;
int hijauu = 4;
int meraht = 5;
int kuningt = 6;
int hijaut = 7;
int merahs = 8;
int kunings = 9;
int hijaus = 10;
int merahb = 11;
int kuningb = 12;
int hijaub = 13;

void setup() {
  pinMode(merahu, OUTPUT);
  pinMode(kuningu, OUTPUT);
  pinMode(hijauu, OUTPUT);
  pinMode(meraht, OUTPUT);
  pinMode(kuningt, OUTPUT);
  pinMode(hijaut, OUTPUT);
  pinMode(merahs, OUTPUT);
  pinMode(kunings, OUTPUT);
  pinMode(hijaus, OUTPUT);
  pinMode(merahb, OUTPUT);
  pinMode(kuningb, OUTPUT);
  pinMode(hijaub, OUTPUT);


}

void loop() {
  digitalWrite(hijauu, HIGH);
  digitalWrite(meraht, HIGH);
  digitalWrite(merahs, HIGH);
  digitalWrite(merahb, HIGH);
  delay(5000);

  digitalWrite(hijauu, LOW);
  digitalWrite(kuningu, HIGH);
  delay(2000);

  digitalWrite(kuningu, LOW);
  digitalWrite(merahu, HIGH);
  digitalWrite(hijaut, HIGH);
  digitalWrite(meraht, LOW);
  delay(5000);

  digitalWrite(hijaut, LOW);
  digitalWrite(kuningt, HIGH);
  delay(2000);

  digitalWrite(kuningt, LOW);
  digitalWrite(meraht, HIGH);
  digitalWrite(hijaus, HIGH);
  digitalWrite(merahs, LOW);
  delay(5000);

  digitalWrite(hijaus, LOW);
  digitalWrite(kunings, HIGH);
  delay(2000);

  digitalWrite(kunings, LOW);
  digitalWrite(hijaub, HIGH);
  digitalWrite(merahs, HIGH);
  digitalWrite(merahb, LOW);
  delay(5000);

  digitalWrite(hijaub, LOW);
  digitalWrite(kuningb, HIGH);
  delay(2000);

  digitalWrite(kuningb, LOW);
  digitalWrite(merahb, HIGH);
  digitalWrite(merahu, LOW);
}  


    

Catatan: Semua arah dimulai merah, lalu bergantian 1 arah hijau → kuning → merah.

🧭 Langkah Pengerjaan di Wokwi

  1. Buka wokwi.comNew Project → Arduino Uno.
  2. Tambahkan 12 LED dan 12 resistor (3 per arah × 4 arah).
  3. Hubungkan LED sesuai skema pin di atas.
  4. Salin kode Arduino ke file sketch.ino.
  5. Klik Start Simulation → amati siklus: Utara (5s hijau) → kuning (2s) → merah → lalu Timur → Selatan → Barat → kembali Utara.
  6. Screenshot hasil simulasi dan beri penjelasan singkat.

🔎 Tugas Lanjutan (Level HOTS)

  1. Tambahkan fase all-red 1 detik sebelum setiap arah hijau (transisi aman).
  2. Tambahkan 4 tombol (masing-masing arah) sebagai tombol darurat polisi, yang bila ditekan memaksa arah itu hijau lebih cepat.
  3. Gunakan Serial Monitor untuk menampilkan arah mana yang hijau sekarang, dan hitungan mundur sisa detik.
  4. Modifikasi menjadi sistem 2 arah berlawanan boleh hijau bersamaan (Utara–Selatan & Timur–Barat), lalu bandingkan logikanya.

No comments:

Post a Comment