Kali ini kita akan mencoba membandingkan rangkaian Traffic Light menggunakan Arduino dengan menggunakan rangkaian konvensional. Jika dibandingkan, rangkaian traffic light akan terlihat lebih sederhana dengan menggunakan Arduino dibandingkan dengan rangkain konvensional yang masih menggunakan komponen-komponen elektronik seperti transistor, kapasitor, IC, dioda, dan komponen lainya. Bisa terlihat perbandingannya pada gambar dibawah.
Dibandingkan rangkaian traffic light menggunakan Arduino, rangkaian konvensional terlihat lebih rumit dengan banyaknya komponen yang digunakan dan banyaknya sambungan-sambungan antar komponen. Pada rangkaian menggunakan Arduino mungkin akan dianggap lebih rumit pada kode programnya, namun jika kita sudah memahami prinsip kerja dari kode program tersebut akan jauh lebih mudah dibandingkan dengan menggunakan rangkaian konvensional.
Selanjutnya kita akan belajar membuat rangkaian traffic light menggunakan Arduino. Pertama-tama kita siapkan peralatan yang diperlukan, diantaranya :
2. Memasukan kode program (sketch).
int switchingDelay = 1000; //waktu delay untuk transisi perubahan LED
const int RED_LEFT = 11; //menginisialisasi pin LED
const int AMBER_LEFT = 10;
const int GREEN_LEFT = 9;
const int RED_RIGHT = 8;
const int AMBER_RIGHT = 7;
const int GREEN_RIGHT = 6;
void setup()
{
pinMode(RED_LEFT, OUTPUT); //mengatur pin LED sebagai output
pinMode(AMBER_LEFT, OUTPUT);
pinMode(GREEN_LEFT, OUTPUT);
pinMode(RED_RIGHT, OUTPUT);
pinMode(AMBER_RIGHT, OUTPUT);
pinMode(GREEN_RIGHT, OUTPUT);
digitalWrite(RED_LEFT, LOW); //perintah untuk mematikan LED
digitalWrite(AMBER_LEFT, LOW);
digitalWrite(GREEN_LEFT, LOW);
digitalWrite(RED_RIGHT, LOW);
digitalWrite(AMBER_RIGHT, LOW);
digitalWrite(GREEN_RIGHT, LOW);
}
void loop()
{
digitalWrite(RED_LEFT, HIGH); //perintah untuk menghidupkan LED
digitalWrite(GREEN_RIGHT, HIGH);
delay(switchingDelay); //menahan perintah selama switchingDelay = 1000 ms (1 detik)
digitalWrite(AMBER_RIGHT, HIGH);
digitalWrite(GREEN_RIGHT, LOW);
delay(switchingDelay);
digitalWrite(RED_RIGHT, HIGH);
digitalWrite(AMBER_RIGHT, LOW);
digitalWrite(AMBER_LEFT, HIGH);
delay(switchingDelay);
digitalWrite(RED_LEFT, LOW);
digitalWrite(AMBER_LEFT, LOW);
digitalWrite(GREEN_LEFT, HIGH);
digitalWrite(AMBER_RIGHT, LOW);
delay(switchingDelay);
delay(switchingDelay);
digitalWrite(AMBER_LEFT, HIGH);
digitalWrite(GREEN_LEFT, LOW);
delay(switchingDelay);
digitalWrite(RED_LEFT, HIGH);
digitalWrite(AMBER_LEFT, LOW);
digitalWrite(AMBER_RIGHT, HIGH);
delay(switchingDelay);
digitalWrite(RED_RIGHT, LOW);
digitalWrite(AMBER_RIGHT, LOW);
digitalWrite(GREEN_RIGHT, HIGH);
digitalWrite(RED_LEFT, HIGH);
digitalWrite(AMBER_LEFT, LOW);
delay(switchingDelay);
delay(switchingDelay);
}
3. Menghubungkan Arduino dengan komputer, kemudian upload sketch ke Arduino. Arduino akan menjalankan fungsi traffic light.
- Rangkaian traffic light menggunakan rangkaian konvensional.
- Rangkaian traffic light menggunakan Arduino.
Dibandingkan rangkaian traffic light menggunakan Arduino, rangkaian konvensional terlihat lebih rumit dengan banyaknya komponen yang digunakan dan banyaknya sambungan-sambungan antar komponen. Pada rangkaian menggunakan Arduino mungkin akan dianggap lebih rumit pada kode programnya, namun jika kita sudah memahami prinsip kerja dari kode program tersebut akan jauh lebih mudah dibandingkan dengan menggunakan rangkaian konvensional.
Selanjutnya kita akan belajar membuat rangkaian traffic light menggunakan Arduino. Pertama-tama kita siapkan peralatan yang diperlukan, diantaranya :
- Arduino
- Resistor 220 ohm 3 buah
- LED Merah 2 buah
- LED Kuning 2 buah
- LED Hijau 2 buah
- Breadboard/Protoboard
- Kabel Jumper
2. Memasukan kode program (sketch).
const int RED_LEFT = 11; //menginisialisasi pin LED
const int AMBER_LEFT = 10;
const int GREEN_LEFT = 9;
const int RED_RIGHT = 8;
const int AMBER_RIGHT = 7;
const int GREEN_RIGHT = 6;
void setup()
{
pinMode(RED_LEFT, OUTPUT); //mengatur pin LED sebagai output
pinMode(AMBER_LEFT, OUTPUT);
pinMode(GREEN_LEFT, OUTPUT);
pinMode(RED_RIGHT, OUTPUT);
pinMode(AMBER_RIGHT, OUTPUT);
pinMode(GREEN_RIGHT, OUTPUT);
digitalWrite(RED_LEFT, LOW); //perintah untuk mematikan LED
digitalWrite(AMBER_LEFT, LOW);
digitalWrite(GREEN_LEFT, LOW);
digitalWrite(RED_RIGHT, LOW);
digitalWrite(AMBER_RIGHT, LOW);
digitalWrite(GREEN_RIGHT, LOW);
}
void loop()
{
digitalWrite(RED_LEFT, HIGH); //perintah untuk menghidupkan LED
digitalWrite(GREEN_RIGHT, HIGH);
delay(switchingDelay); //menahan perintah selama switchingDelay = 1000 ms (1 detik)
digitalWrite(AMBER_RIGHT, HIGH);
digitalWrite(GREEN_RIGHT, LOW);
delay(switchingDelay);
digitalWrite(RED_RIGHT, HIGH);
digitalWrite(AMBER_RIGHT, LOW);
digitalWrite(AMBER_LEFT, HIGH);
delay(switchingDelay);
digitalWrite(RED_LEFT, LOW);
digitalWrite(AMBER_LEFT, LOW);
digitalWrite(GREEN_LEFT, HIGH);
digitalWrite(AMBER_RIGHT, LOW);
delay(switchingDelay);
delay(switchingDelay);
digitalWrite(AMBER_LEFT, HIGH);
digitalWrite(GREEN_LEFT, LOW);
delay(switchingDelay);
digitalWrite(RED_LEFT, HIGH);
digitalWrite(AMBER_LEFT, LOW);
digitalWrite(AMBER_RIGHT, HIGH);
delay(switchingDelay);
digitalWrite(RED_RIGHT, LOW);
digitalWrite(AMBER_RIGHT, LOW);
digitalWrite(GREEN_RIGHT, HIGH);
digitalWrite(RED_LEFT, HIGH);
digitalWrite(AMBER_LEFT, LOW);
delay(switchingDelay);
delay(switchingDelay);
}
3. Menghubungkan Arduino dengan komputer, kemudian upload sketch ke Arduino. Arduino akan menjalankan fungsi traffic light.