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
- 7 x sg90 Servo Motor
- Arduino Uno
- Erkek-Erkek Jumper Kablo
- Breadbord
- 5v adaptör
Devre Şeması
Ş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.)
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.
7 adet servoyu arduino çalıştırmıyor
servo motorları harici adaptör ile besleyiniz. arduino 7 tane servoyu besleyecek güçte değil