Arduino İle Bağlanma Şekilleri
Servo motorumuzun üzerinde bulunan toprak pinini arduino üzerindeki GND pinine, güç pinini 5V pinine ve yine servo motor üzerinde bulunan sinyal pinini arduinodaki 3. pine bağladık.
Servo Motorumuzu Test Edebilmek İçin Kodumuz:
Dikkat!! Kodu yazmadan önce servo motor kütüphanesini dahil etmeniz lazım.
#include <Servo.h> // kütüphaneyi dahil ediyoruz.
Servo ServoMotor1; // ServoMotor1 değişkenini tanımlıyoruz.
void setup()
{
ServoMotor1.attach(3); //Servo motorun bağlantı pini belirtildi
}
void loop()
{
ServoMotor1.write(145); //Servo motora 145 derecelik açıya hareket etme komutu veriliyor.
delay(3000); // 3 saniye bekleme komutu
ServoMotor1.write(0); //Servo motora 0 dereceye gelmesi için komut veriliyor
delay(3000); // 3 saniye bekleme komutu
}
Potansiyometre İle Servo Motor Kontrolü
Öncelikle arduino ile breadboardumuzun bağlantısını sağlıyoruz. Arduino üzerindki GND pinini bearboardda eksiyle 5V pinini ise artıyla bağlıyoruz.
Daha sonra potansiyometreyi yerleştirerek eksi bacağını breadboardda eksiyle artı bacağını artı ile birleştirerek kalan bacağını ise arduinoda bulunan A0 pinine bağladık.
Son olarak ise servo motordaki i güç pininin breadboard da ki artı kısmıyla bağlantısını sağlıyoruz toprak pininin ise eksi kısım ile sinyal pinini ise arduino üzerindeki 5. pinle birleştiriyoruz.
Kod
#include <Servo.h> // Servo motor kütüphanesini dahil ediyoruz.
Servo ServoMotor1; // ServoMotor1 değişkenini tanımlıyoruz.
int PotPin = A0; //Potansiyometrenin bağlantı pinini tanımlıyoruz.
int PotDeger; //PotDeger adında değişken oluşturuyoruz.
void setup()
{
ServoMotor1.attach(5); //Servo motorun bağlantı pini belirtildi
}
void loop()
{
PotDeger = analogRead(PotPin); //Potansiiyometrenin bağlı olduğu A0 pininden okunan değerler, PotDeger adındaki değişkenin içine yazdırılıyor.
PotDeger = map(PotDeger, 0, 1023, 0, 180); //Potansiyometreden okunan 0-1023 arasındaki değerler, 0-180 arasına uyarlanıyor ve değer PotDeger değişkenine yazdırılıyor.
ServoMotor1.write(PotDeger); //PotDeger’i değişkenindeki deger servo motora yazdırılıyor.
delay(100); //100 Milisaniye bekleme komutu veriliyor.
}