//mendefinisikan lampu merah , kuning , dan hijau
#include <Servo.h>
Servo servoku;

byte led1=2;
byte led2=3;
byte led3=4;
byte led4=5;
byte led5=6;
byte led6=7;
byte led7=8;
byte led8=9;
byte led9=10;
int buzzer=11;
int pos=0;



void setup() {
  // Mengatur pin sebagai output
  pinMode(led1,OUTPUT);
  pinMode(led2,OUTPUT);
  pinMode(led3,OUTPUT);
  pinMode(led4,OUTPUT);
  pinMode(led5,OUTPUT);
  pinMode(led6,OUTPUT);
  pinMode(led7,OUTPUT);
  pinMode(led8,OUTPUT);
  pinMode(led9,OUTPUT);
  pinMode(buzzer,OUTPUT);
  servoku.attach(12);
  
  
}

void loop() {

  // Mengatur lampu jalur 1
  digitalWrite(led1,LOW);
  digitalWrite(led2,LOW);
  digitalWrite(led3,HIGH);
 
  servoku.write(90); 
  tone(buzzer,500.1000);
  delay(500);
  tone(buzzer,500,100);
  delay(500);
  tone(buzzer,500,100);
  delay(500);
  tone(buzzer,300,100);
  delay(500);
  tone(buzzer,200,100);
  delay(500);
  servoku.write (0);


  // Mengatur lampu jalur 2
  digitalWrite(led4,HIGH);
  digitalWrite(led5,LOW);
  digitalWrite(led6,LOW);

  // Mengatur lampu jalur 3
  digitalWrite(led7,HIGH);
  digitalWrite(led8,LOW);
  digitalWrite(led9,LOW);

   //waktu tunggu 5 detik

  // Mengatur lampu jalur 1
  digitalWrite(led1,LOW);
  digitalWrite(led2,HIGH);
  digitalWrite(led3,LOW);

  //Mengatur lampu jalur 2
  digitalWrite(led4,LOW);
  digitalWrite(led5,HIGH);
  digitalWrite(led6,LOW);

  delay(2000); // waktu tunggu 2 detik

  // Mengatur lampu jalur 1
  digitalWrite(led1,HIGH);
  digitalWrite(led2,LOW);
  digitalWrite(led3,LOW);

  // Mengatur lampu jalur 2
  digitalWrite(led4,LOW);
  digitalWrite(led5,LOW);
  digitalWrite(led6,HIGH);

  // Mengatur lampu jalur 3
  digitalWrite(led7,HIGH);
  digitalWrite(led8,LOW);
  digitalWrite(led9,LOW);
  servoku.write(90); 
  tone(buzzer,500.1000);
  delay(500);
  tone(buzzer,500,100);
  delay(500);
  tone(buzzer,500,100);
  delay(500);
  tone(buzzer,300,100);
  delay(500);
  tone(buzzer,200,100);
  delay(500);
  servoku.write (0);

   //waktu tunggu 5 detik

  // Mengatur lampu jalur 2
  digitalWrite(led4,LOW);
  digitalWrite(led5,HIGH);
  digitalWrite(led6,LOW);

  // Mengatur lampu jalur 3
  digitalWrite(led7,LOW);
  digitalWrite(led8,HIGH);
  digitalWrite(led9,LOW);

  delay(2000); // waktu tunggu 2 detik
 // Mengatur lampu jalur 1
  digitalWrite(led1,HIGH);
  digitalWrite(led2,LOW);
  digitalWrite(led3,LOW);

 // Mengatur lampu jalur 2 
  digitalWrite(led4,HIGH);
  digitalWrite(led5,LOW);
  digitalWrite(led6,LOW);

// Mengatur lampu jalur 3
  digitalWrite(led7,LOW);
  digitalWrite(led8,LOW);
  digitalWrite(led9,HIGH);
  servoku.write(90); 
  tone(buzzer,500.1000);
  delay(500);
  tone(buzzer,500,100);
  delay(500);
  tone(buzzer,500,100);
  delay(500);
  tone(buzzer,300,100);
  delay(500);
  tone(buzzer,200,100);
  delay(500);
  servoku.write (0);

   // waktu tunggu 5 detik

  digitalWrite(led1,LOW);
  digitalWrite(led2,HIGH);
  digitalWrite(led3,LOW);

  digitalWrite(led7,LOW);
  digitalWrite(led8,HIGH);
  digitalWrite(led9,LOW);

  delay(2000);







}