Proje Amacı:
- 5 LED’den oluşan yürüyen ışık yapacağız.
- Potansiyometreyi çevirerek ışığın yürüme hızını artırıp azaltacağız.
Bu projede 5 tane LED ışık var. Işıklar sırayla yanıyor ve sönüyor. Potansiyometreyi çevirerek bu ışıkların yanma hızını değiştirebiliyoruz. Bu da tıpkı bir ışık gösterisi gibi oluyor!
Gerekli Malzemeler (Tinkercad için):
- Arduino Uno
- 5 x LED
- 5 x 220 ohm direnç
- 1 x Potansiyometre
- Breadboard
- Bağlantı kabloları
Tinkercad Simülasyonu
Simulate diyerek potansiyometreyi çevir ve LEDlerin hızını test et.
Tinkercad’a gir, yeni bir Circuits projesi oluştur.
Aşağıdaki bağlantıları yap.
Kod kısmına gidip “Blocks + Text” moduna geç, doğrudan metin kodunu yapıştır.
Devre Bağlantısı

Potansiyometre:
- Sol bacak → 5V
- Sağ bacak → GND
- Orta bacak → A0 (Analog giriş)
LED’ler:
- LED1 (uzun bacak) → Pin 4
- LED2 → Pin 5
- LED3 → Pin 6
- LED4 → Pin 7
- LED5 → Pin 8
- Tüm kısa bacaklar → 220Ω direnç → GND
Tinkercad kodu

MBlock Kodu

Arduino Kodu
int isik = 0;
void setup()
{
pinMode(A0, INPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
}
void loop()
{
isik = analogRead(A0);
if (isik > 800 && isik < 1000) { digitalWrite(4, HIGH); } if (isik > 600 && isik < 800) { digitalWrite(5, HIGH); } if (isik > 600 && isik < 400) { digitalWrite(6, HIGH); } if (isik > 400 && isik < 200) { digitalWrite(7, HIGH); } if (isik > 150 && isik < 200) { digitalWrite(8, HIGH); } if (isik > 100 || isik < 150) {
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
}
delay(10); // Delay a little bit to improve simulation performance
}
Arduino Kodu
int ledPin[] = { 4, 5, 6, 7, 8}; // LED pinleri
int potPin = A0; // Potansiyometre A0'da
int delaySure = 0;
void setup() {
for (int i = 0; i < 5; i++) {
pinMode(ledPin[i], OUTPUT);
}
}
void loop() {
int potDeger = analogRead(potPin); // 0-1023
delaySure = map(potDeger, 0, 1023, 50, 1000); // 50 ms ile 1000 ms arası hız
// LED'leri sırayla yak
for (int i = 0; i < 5; i++) {
digitalWrite(ledPin[i], HIGH);
delay(delaySure);
digitalWrite(ledPin[i], LOW);
}
// LED'leri tersten sırala
for (int i = 3; i > 0; i--) {
digitalWrite(ledPin[i], HIGH);
delay(delaySure);
digitalWrite(ledPin[i], LOW);
}
}
Ekstra Etkinlikler:
- LED sayısını artır.
- Işıkların sadece tek yönde gitmesini sağla.
- Potansiyometreyle sadece hızı değil, yönü de değiştirecek şekilde geliştir.