#19 Arduino Kara Şimşek Uygulamaları

Merhabalar, bu yazımızda Arduino uygulamaları serisinden Arduino Kara Şimşek Uygulamaları hakkında bilgi vereceğim.

Arduino programı ayrıntılı kod kısmı, kara şimşek devre bağlantı şeması, devre kurulumu detaylı anlatımı ve devre çalışma videosu şu şekildedir.

NOT: Kod bölümü içerisinde yer alan ve // işareti ile başlayan satırlar açıklama satırlarıdır. O satırdaki kod bloğunun ne anlama geldiği ve nasıl çalıştığı ile ilgili bilgi verir. Arduino // işaretli alanı çalıştırmaz. Kod satırından isterseniz // işaret ile başlayan açıklama satırlarını silebilirsiniz.

KARA ŞİMŞEK – 10 LED PARLAYIP SÖNME EFEKTLİ

KOD BÖLÜMÜ


// Kara Şimşek 10 Led (2-11 Pinleri arası) - For döngüsü ile  - Parlayıp Sönerek

void setup()
{
// her pini çıkış olarak ayarlamak için for döngüsü kullanıyoruz.
  for (int ledPin = 2; ledPin < 12; ledPin++)
{
  pinMode(ledPin, OUTPUT);
}
}
void loop() 
{
// en düşük pinden en yüksek pine kadar döngü:

for (int ledPin = 2; ledPin <= 11; ledPin++)
{
digitalWrite(ledPin, HIGH);
delay(50);
digitalWrite(ledPin, LOW);
delay(50);
}

// en yüksek pinden en düşük pine kadar döngü: 

for (int ledPin = 11; ledPin >= 2; ledPin--) 
{
digitalWrite(ledPin, HIGH);
delay(50);
digitalWrite(ledPin, LOW);
delay(50);
}
}

DEVRENİN ÇALIŞMASI:

Kod bölümü, önce 2 numaralı pinden başlayarak 11 numaralı pine kadar sıralı bir şekilde ledler yanacak ve tekrar 11 numaralı pinden, 2 numaralı pine sıralı bir şekilde yanarak geri dönecek şekilde programlanmıştır. Delay içerisindeki değer değiştirilerek yanma ve sönme süresi ayarlanabilir.

DEVRE BAĞLANTI ŞEMASI

Arduino Kara Şimşek Uygulamaları

DEVRE KURULUMU:

Malzemeler:

Arduino Uno
Breadboard
10 adet led diyot
10 adet 220 Ω direnç
11 adet iki ucu erkek jumper kablo

Breadboard üzerine 10 adet led diyot yerleştirilir. Led diyotların (uzun) artı bacaklarına seri olarak dirençler bağlanır. Dirençlerin uçları da board üzerinden Arduino’nun 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 numaralı pinlerine bağlanır. Led diyotların (-) bacakları , boardın alt kısmındaki yatay şerite birer kablo ile bağlanır. Board ın yatay şeridine tek bir kablo bağlanarak, kablonun diğer ucu Arduino’nun GND pinine bağlanıp devre tamamlanır.

KARA ŞİMŞEK – RASTGELE YANIP SÖNEN 8 LED

KOD BÖLÜMÜ: (8 LED)


//Rastgele Yanıp Sönen Kara Şimşek Devresi 8 Led

void blink(int LEDPin, int LEDOnTime, int LEDOffTime) // LED yakıp sönme fonksiyonu
{
 digitalWrite(LEDPin, HIGH);
 delay(LEDOnTime);
 digitalWrite(LEDPin, LOW);
 delay(LEDOffTime);
}

void setup()
{
 //LED pinlerini ayarlıyoruz - Dijital 4-11 arası
 for(int i=4; i<12; i++){ pinMode(i, OUTPUT);}
}

void loop()
{
 birAtlat(1); // Parametreler kaç tekrar yapacağını gösteriyor
 karisik(1); 
 azalanHizda(1); 
}

void birAtlat(int tekrar){
for(int k=1; k<(tekrar+1); k++){
for(int i=4; i<13; i=i+2){
blink(i,200,20); 
}
for(int i=11; i>3; i=i-2){
blink(i,200,20); 
}
} 
}

void karisik(int tekrar)
{
for(int k=1; k<(tekrar+1); k++){
for(int j=1; j<257; j=j+j){
int LEDCounter=1;
int LEDYak=1;
for(int ledPin=4; ledPin>3 && ledPin<14; ledPin=ledPin+LEDCounter)
{
if(LEDYak)
{
digitalWrite(ledPin, HIGH);
delay(j);
}
else
{
digitalWrite(ledPin, LOW);
delay(j);
}
if(ledPin>12)
{
LEDCounter*=-1;
LEDYak=0;
}
}
}
}
}

void azalanHizda(int tekrar)
{
for(int k=1; k<(tekrar+1); k++)
{
for(int j=1; j<257; j=j+j) // LED yanma süresini artırıyoruz
{
for(int i=4; i>3 && i<13; i++)
{
blink(i, j, 30); //LED leri sırasıyla yakıp söndürelim
}
}
}
}

DEVRENİN ÇALIŞMASI:

Kod bölümünde ledler, birer atlayarak yanma, karışık yanma, azalan hızda yanma şeklinde programlanmıştır.

DEVRE BAĞLANTI ŞEMASI: (8 LED)

Kara Şimşek

DEVRE KURULUMU: (8 LED)

Malzemeler:

Arduino Uno
Breadboard
8 adet led diyot
8 adet 220 Ω direnç
9 adet iki ucu erkek jumper kablo

Breadboard üzerine 8 adet led diyot, eksi uçları boardın üst kısmındaki yatay şerite gelecek şekilde yerleştirilir. Led diyotların (uzun) artı bacaklara seri olarak dirençler bağlanır. Dirençlerin uçları da board üzerinden Arduino’nun 2, 3, 4, 5, 6, 7, 8, 9 numaralı pinine bağlanır. Led diyotların (-) bacaklarının bağlı olduğu board üzerine tek bir kablo bağlanarak, kablonun diğer ucu Arduino’nun GND pinine bağlanıp devre tamamlanır.

KARA ŞİMŞEK – RASTGELE YANIP SÖNEN 10 LED

KOD BÖLÜMÜ: (10 LED)


//Rastgele Yanıp Sönen Kara Şimşek Devresi 10 Led (2-11 Pinler)

void blink(int LEDPin, int LEDOnTime, int LEDOffTime) // LED yakıp sönme fonksiyonu
{
 digitalWrite(LEDPin, HIGH);
 delay(LEDOnTime);
 digitalWrite(LEDPin, LOW);
 delay(LEDOffTime);
}

void setup()
{
 //LED pinlerini ayarlıyoruz - Dijital 2-11 arası
 for(int i=2; i<12; i++){ pinMode(i, OUTPUT);}
}

void loop()
{
 birAtlat(1); // Parametreler kaç tekrar yapacağını gösteriyor
 karisik(1); 
 azalanHizda(1); 
}

void birAtlat(int tekrar){
for(int k=1; k<(tekrar+1); k++){
for(int i=2; i<13; i=i+2){
blink(i,200,20); 
}
for(int i=11; i>1; i=i-2){
blink(i,200,20); 
}
} 
}

void karisik(int tekrar)
{
for(int k=1; k<(tekrar+1); k++){
for(int j=1; j<257; j=j+j){
int LEDCounter=1;
int LEDYak=1;
for(int ledPin=2; ledPin>1 && ledPin<14; ledPin=ledPin+LEDCounter)
{
if(LEDYak)
{
digitalWrite(ledPin, HIGH);
delay(j);
}
else
{
digitalWrite(ledPin, LOW);
delay(j);
}
if(ledPin>12)
{
LEDCounter*=-1;
LEDYak=0;
}
}
}
}
}

void azalanHizda(int tekrar)
{
for(int k=1; k<(tekrar+1); k++)
{
for(int j=1; j<257; j=j+j) // LED yanma süresini artırıyoruz
{
for(int i=2; i>1 && i<13; i++)
{
blink(i, j, 30); //LED leri sırasıyla yakıp söndürelim
}
}
}
}

DEVRENİN ÇALIŞMASI:

Kod bölümünde ledler, birer atlayarak yanma, karışık yanma, azalan hızda yanma şeklinde programlanmıştır.

DEVRE BAĞLANTI ŞEMASI: (10 LED)

Arduino Kara Şimşek-Karışık Yanıp Sönme

DEVRE KURULUMU: (10 LED)

Malzemeler:

Arduino Uno
Breadboard
10 adet led diyot
10 adet 220 Ω direnç
21 adet iki ucu erkek jumper kablo

Breadboard üzerine 10 adet led diyot yerleştirilir. Led diyotların (uzun) artı bacaklarına seri olarak dirençler bağlanır. Dirençlerin uçları da board üzerinden Arduino’nun 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 numaralı pinlerine bağlanır. Led diyotların (-) bacakları , boardın alt kısmındaki yatay şerite birer kablo ile bağlanır. Board ın yatay şeridine tek bir kablo bağlanarak, kablonun diğer ucu Arduino’nun GND pinine bağlanıp devre tamamlanır.

Arduino Kara Şimşek Uygulamaları

Devre hakkında yorumlarınızı aşağıdaki yorum kısmına yazabilirsiniz. Youtube kanalımızda da mBlock ve Arduino ile ilgili ders videoları bulabileceksiniz. Youtube kanalıma abone olmayı da unutmayınız.

https://www.youtube.com/@candemirahmet

Oval@3x 2

Bu ipuçlarını kaçırmayın!

Kayıt butonuna bastıktan sonra e-postanız gelen kutunuza giderek gelen e-postayı onaylamayı unutmayınız. Gelen kutusunda görülmeyen postalar için Önemsiz -Spam klasörünü kontrol edebilirsiniz. Eğer kayıt e-postası ulaşmadıysa iletişim menüsünden bu durumu bildirebilirsiniz.

Yazan: Ahmet Candemir
Teknik Öğretmen - Cisco Instructor - Microsoft MCP - ECDL MS Office Advanced Expert - Adobe Eğitmeni - MEB Fatih Projesi Koordinatörü - Robotik Kodlama Eğitmeni