Arkadaşlar merhaba, bu yazımızda servo motor ile 0’dan 9a kadar sayabilen bir sayaç yapacağız.

Projemiz servo motorlarla 0dan 9a kadar sayı yazdırmak olacak yani 7 Segment Display’in günlük hayattaki karşılığını yapacağız.Daha önce servo motor ile çalışmadıysanız detaylı bilgi için Servo Motor yazımızı okuyabilirsiniz.

Malzeme Listesi

Devre Şeması

devre semasi baglanti

Şemada bulunan Arduinon kırmızı kablolar (+)VCC hattına, siyah kablolar(-)GND hattını, sarı kablolar ise PWM pinlerine bağlanmaktadır. 0’dan 9’a kadar sayıları yazdıracağımız için 7 adet servo motor yeterlidir. ( 7 Segment Display görüntüsü elde edeceğiz.)
sevensegment

Yukarıdaki görsel üzerinde bulunan harfler, devre şemasında ve kodumuzdaki servoların nereye bağlanacağını göstermektedir. Bu görsele göre servo motorlarınızı yerleştirebilirsiniz.

Arduino Kodu

#include <Servo.h>  
Servo servoNesnesia;
Servo servoNesnesib; 
Servo servoNesnesic; 
Servo servoNesnesid; 
Servo servoNesnesie; 
Servo servoNesnesif; 
Servo servoNesnesig; 
void setup()
{
  servoNesnesia.attach(2); 
  servoNesnesib.attach(3);
  servoNesnesic.attach(4);
  servoNesnesid.attach(5);
  servoNesnesie.attach(6);
  servoNesnesif.attach(7);
  servoNesnesig.attach(8);
}
 
void loop()
{
  //0 için
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 
   //1 için
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 
    //2 için
  servoNesnesia.write( );
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 
    //3 için
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 
   //4 için
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 

   //5 için
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 

   //6 için
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 

   //7 için 
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 
   //8 için
  servoNesnesia.write();
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 

   //9 için
  servoNesnesia.write(); 
  servoNesnesib.write();  
  servoNesnesic.write();  
  servoNesnesid.write();  
  servoNesnesie.write();  
  servoNesnesif.write();  
  servoNesnesig.write();   
  delay(1000);
 

}

Kodumuzun  “servoNesnesi.write( )” parantez içlerine 0 veya 90 yazmalıyız servo motorumuzun konumu için. Bu sizin motoru nasıl bağladığınıza göre değişebilir. Deneyerek ve test ederek doğru sonuçlara ulaşabilirsiniz.

2 YORUMLAR

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz