Lampu Lalu Lintas Otomatis Menggunakan Arduino Uno

Sistem lampu lalu lintas adalah bagian penting dalam pengaturan lalu lintas kendaraan, terutama di persimpangan jalan. Dengan prinsip kerja otomatis berdasarkan waktu, lampu lalu lintas berfungsi untuk mengatur giliran kendaraan berjalan dan berhenti guna menghindari kecelakaan serta kemacetan. Teknologi ini bisa disimulasikan dalam bentuk miniatur menggunakan mikrokontroler seperti Arduino.

Proyek ini merupakan simulasi lampu lalu lintas sederhana yang menggunakan Arduino Uno dan 12 buah LED sebagai indikator lampu merah, kuning, dan hijau untuk empat jalur. Sistem ini bekerja secara otomatis berdasarkan urutan yang telah diprogram, sehingga setiap jalur akan mendapat giliran untuk menyala hijau, lalu kuning, dan kembali ke merah, layaknya sistem di dunia nyata.

Simulasi ini sangat cocok untuk pemula yang ingin belajar logika pemrograman Arduino, penggunaan array untuk banyak output, serta pengaturan waktu menggunakan delay(). Selain sebagai latihan dasar, proyek ini juga bisa dikembangkan lebih lanjut menjadi sistem lalu lintas pintar dengan penambahan sensor kendaraan atau modul komunikasi

Skema Rangkaian
Daftar Komponen
  • 1x Arduino Uno
  • 12x LED (misal: Merah, Kuning, Hijau)
  • 12x Resistor 220 ohm
  • Kabel jumper
  • Breadboard

Catatan: Pastikan setiap LED dipasang dengan resistor sebagai pembatas arus.

Source Code Arduino

//PROGRAM INI DI BUAT OLEH  : MANFAHBOT INDUSTRIAL AUTOMATION
//HAK CIPTA PROGRAM/CODING : Lutfi Muhammad Irfansyach
//WEBSITE : http://manfahbot.cc

const int lights[] = {1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13};
const int numLights = sizeof(lights) / sizeof(lights[0]);

const int o = OUTPUT;
const int d1 = 5000; // delay utama (Nyala lampu)
const int d2 = 1000; // unused (cadangan)
const int d3 = 500; // delay pendek (lampu kuning dan efek berkedip)

void setup() {
for (int i = 0; i < numLights; i++) {
pinMode(lights[i], o); // set semua pin sebagai output
}
}

void flashLight(int light, int times, int delayTime) {
for (int i = 0; i < times; i++) {
digitalWrite(light, 1);
delay(delayTime);
digitalWrite(light, 0);
delay(delayTime);
}
}

void loop() {
// Lampu merah menyala di awal untuk semua jalur
digitalWrite(lights[1], 1);
digitalWrite(lights[3], 1);
digitalWrite(lights[6], 1);
digitalWrite(lights[9], 1);

// Proses pengendalian lampu lalu lintas per jalur
for (int i = 0; i < numLights; i += 3) {
digitalWrite(lights[i], 1); // lampu merah tetap menyala
delay(d3);
digitalWrite(lights[i], 0); // matikan merah sementara

flashLight(lights[i + 1], 3, d3); // nyalakan kuning berkedip

digitalWrite(lights[i + 2], 1); // nyalakan hijau
delay(d1); // waktu lampu hijau
digitalWrite(lights[i + 2], 0); // matikan hijau

flashLight(lights[i + 1], 3, d3); // kuning berkedip saat transisi

digitalWrite(lights[i], 1); // nyalakan kembali lampu merah
delay(d3);
}
}
Penjelasan Struktur Kode
  1. Deklarasi Array LED:
    Terdapat 12 pin output yang digunakan, dimasukkan ke dalam array lights[]. LED diatur dalam kelompok 3 (merah, kuning, hijau) untuk setiap jalur.
  2. setup() Function:
    Semua pin LED diset sebagai OUTPUT.
  3. flashLight() Function:
    Fungsi ini membuat efek kedipan pada lampu kuning, digunakan saat transisi dari merah ke hijau atau sebaliknya.
  4. loop() Function:
    Fungsi utama program ini adalah menyalakan LED sesuai urutan: merah → kuning berkedip → hijau → kuning berkedip → merah. Proses ini berulang untuk setiap kelompok LED.
Kelebihan Proyek Ini:
  • Tidak menggunakan library eksternal → lebih ringan dan cepat dipahami pemula.
  • Menggunakan struktur array → memudahkan manajemen banyak pin LED.
  • Bisa dikembangkan lebih lanjut menjadi sistem lalu lintas 4 arah otomatis.
  • Cocok untuk praktek pelatihan SMK atau mahasiswa teknik elektro.

Kesimpulan

Program ini merupakan contoh simulasi lampu lalu lintas sederhana menggunakan Arduino. Dengan memanfaatkan array, fungsi, dan kontrol dasar pin digital, proyek ini bisa menjadi dasar untuk memahami sistem otomasi pada pengaturan lalu lintas. Kamu juga bisa mengembangkan sistem ini lebih lanjut, misalnya dengan penambahan push button pedestrian, sensor kendaraan, atau bahkan modul Bluetooth/WiFi untuk remote control.

manfah.industri@gmail.com
manfah.industri@gmail.com
Articles: 26

Leave a Reply

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *