Engel Algılayan Robot (Arduino obstacle robot)

226 3.933

Kendi Robotunu Yap projelerimizin bu bölümünde uzaktan kumandalı arabayı engele çarpmayan otonom hareket eden robota dönüştüreceğiz.Arabanın kendi devresini sökülerek  arduino ile yapacağımız devremizi yerleştireceğiz.Arabanın önüne ultrasonik sensör ve sensörün altına servo motor yerleştireceğiz.Bu sayede robot çevresini tarayarak nesnelere çarpmayacak.

Kullanılan komponentler:

  1. Arduino Uno
  2. Uzaktan kumandalı araba
  3. Motor sürücü kartı
  4. HC-SR04 Ultrasonik mesafe sensörü

Elektronik Devre Şeması:

Fritzing devre şema dosyası >> engel algılayan robot devresi

Yazılım Kısmı:

Oyuncak araba için kod:

// Yazılım Geliştirme By Robimek - 2015
//oyuncak araba içim
#include <Servo.h>// servo motor kütüphanesi
#include <NewPing.h>
//motor pinleri
#define OnMotor_sol 9
#define OnMotor_sag 10
#define ArkaMotor_ileri 11
#define ArkaMotor_Geri 12
//sensör pinleri
#define USTrigger 6
#define USEcho 7
#define Maksimum_uzaklik 100
Servo servo; //servo motor tanımlama
NewPing sonar(USTrigger, USEcho, Maksimum_uzaklik);//ultrasonik sensör tanımlama
//kullanılacak eleman tanımı
unsigned int uzaklik;
unsigned int on_uzaklik;
unsigned int sol_uzaklik;
unsigned int sag_uzaklik;
unsigned int zaman;
// program ilk çalıştığında sadece bir kez çalışacak programlar
void setup()
{
//motor çıkışları
pinMode(OnMotor_sol, OUTPUT);
pinMode(OnMotor_sag, OUTPUT);
pinMode(ArkaMotor_ileri, OUTPUT);
pinMode(ArkaMotor_Geri, OUTPUT);
servo.attach(4); //servo pin tanımı
}
// sonsuz döngü
void loop()
{
delay(500);
servo.write(90);
sensor_olcum();
on_uzaklik = uzaklik;
if(on_uzaklik > 35 || on_uzaklik == 0)
{
ileri();
}
else
{
dur();
servo.write(180);
delay(500);
sensor_olcum();
sol_uzaklik = uzaklik;
servo.write(0);
delay(500);
sensor_olcum();
sag_uzaklik = uzaklik;
servo.write(90);
delay(500);
if(sag_uzaklik <sol_uzaklik)
{
sag_geri();
delay(500);
sol_ileri();
delay(500);
ileri();
}
else if(sol_uzaklik <sag_uzaklik)
{
sol_geri();
delay(500);
sag_ileri();
delay(500);
ileri();
}
else
{
geri();
delay(500);
}
}
}
 
// robotun yön komutları
void ileri()
{
digitalWrite(OnMotor_sag, LOW);
digitalWrite(OnMotor_sol, LOW);
digitalWrite(ArkaMotor_Geri, LOW);
digitalWrite(ArkaMotor_ileri, HIGH);
}
void geri()
{
digitalWrite(OnMotor_sag, LOW);
digitalWrite(OnMotor_sol, LOW);
digitalWrite(ArkaMotor_Geri, HIGH);
digitalWrite(ArkaMotor_ileri, LOW);
}
void sol_ileri()
{
digitalWrite(OnMotor_sag, LOW);
digitalWrite(OnMotor_sol, HIGH);
digitalWrite(ArkaMotor_Geri, LOW);
digitalWrite(ArkaMotor_ileri, HIGH);
}
void sol_geri()
{
digitalWrite(OnMotor_sag, LOW);
digitalWrite(OnMotor_sol, HIGH);
digitalWrite(ArkaMotor_Geri, HIGH);
digitalWrite(ArkaMotor_ileri, LOW);
}
 
void sag_ileri()
{
digitalWrite(OnMotor_sol, LOW);
digitalWrite(OnMotor_sag, HIGH);
digitalWrite(ArkaMotor_ileri, HIGH);
digitalWrite(ArkaMotor_Geri, LOW);
}
void sag_geri()
{
digitalWrite(OnMotor_sol, LOW);
digitalWrite(OnMotor_sag, HIGH);
digitalWrite(ArkaMotor_ileri, LOW);
digitalWrite(ArkaMotor_Geri, HIGH);
}
 
void dur()
{
digitalWrite(OnMotor_sag, LOW);
digitalWrite(OnMotor_sol, LOW);
digitalWrite(ArkaMotor_ileri, LOW);
digitalWrite(ArkaMotor_Geri, LOW);
}
// sensörün mesafe ölçümü
void sensor_olcum()
{
delay(50);
zaman = sonar.ping();
uzaklik = zaman / US_ROUNDTRIP_CM;
}

Eğer robot kit kullanacaksanız yani 2 tekerlekli kendi ekseninde dönebilen kitler için aşağıdaki yazılımı kullanabilirsiniz.

// Yazılım Geliştirme By Robimek - 2015
#include <Servo.h>// servo motor kütüphanesi
#include <NewPing.h>
//motor pinleri
#define SolMotorileri 9
#define SolMotorGeri 10
#define SagMotorileri 11
#define SagMotorGeri 12
//sensör pinleri
#define USTrigger 6
#define USEcho 7
#define Maksimum_uzaklik 100
Servo servo; //servo motor tanımlama
NewPing sonar(USTrigger, USEcho, Maksimum_uzaklik);//ultrasonik sensör tanımlama
//kullanılacak eleman tanımı
unsigned int uzaklik;
unsigned int on_uzaklik;
unsigned int sol_uzaklik;
unsigned int sag_uzaklik;
unsigned int zaman;
// program ilk çalıştığında sadece bir kez çalışacak programlar
void setup()
{
//motor çıkışları
pinMode(SolMotorileri, OUTPUT);
pinMode(SolMotorGeri, OUTPUT);
pinMode(SagMotorileri, OUTPUT);
pinMode(SagMotorGeri, OUTPUT);
servo.attach(4); //servo pin tanımı
}
// sonsuz döngü
void loop()
{
delay(500);
servo.write(90);
sensor_olcum();
on_uzaklik = uzaklik;
if(on_uzaklik > 35 || on_uzaklik == 0)
{
ileri();
}
else
{
dur();
servo.write(180);
delay(500);
sensor_olcum();
sol_uzaklik = uzaklik;
servo.write(0);
delay(500);
sensor_olcum();
sag_uzaklik = uzaklik;
servo.write(90);
delay(500);
if(sag_uzaklik>sol_uzaklik)
{
sag();
delay(500);
ileri();
}
else if(sol_uzaklik >sag_uzaklik)
{
sol();
delay(500);
ileri();
}
else
{
geri();
}
}
}
 
// robotun yön komutları
void ileri()
{
digitalWrite(SolMotorGeri, LOW);
digitalWrite(SolMotorileri, HIGH);
digitalWrite(SagMotorGeri, LOW);
digitalWrite(SagMotorileri, HIGH);
}
 
void geri()
{
digitalWrite(SolMotorileri, LOW);
digitalWrite(SolMotorGeri, HIGH);
digitalWrite(SagMotorileri, LOW);
digitalWrite(SagMotorGeri, HIGH);
}
 
void sol()
{
digitalWrite(SolMotorileri, LOW);
digitalWrite(SolMotorGeri, HIGH);
digitalWrite(SagMotorGeri, LOW);
digitalWrite(SagMotorileri, HIGH);
 
}
 
void sag()
{
digitalWrite(SolMotorGeri, LOW);
digitalWrite(SolMotorileri, HIGH);
digitalWrite(SagMotorileri, LOW);
digitalWrite(SagMotorGeri, HIGH);
}
 
void dur()
{
digitalWrite(SolMotorGeri, LOW);
digitalWrite(SolMotorileri, LOW);
digitalWrite(SagMotorileri, LOW);
digitalWrite(SagMotorGeri, LOW);
}
// sensörün mesafe ölçümü
void sensor_olcum()
{
delay(50);
zaman = sonar.ping();
uzaklik = zaman / US_ROUNDTRIP_CM;
}

L298N için örnek bağlantıdan diğer bağlantıları aynı şekilde yapabilirsiniz.

L298N Shield için devre şeması:

Fritzing dosyası : Engel Robot Devresi

Bütün yazılımı buradan indirebilirsiniz. >> Engel algılayan robot

Adafruit motor shield Oyuncak araba için arduino kodu

// Yazılım Geliştirme By Robimek - 2015
//oyuncak araba için
#include <Servo.h>// servo motor kütüphanesi
#include <NewPing.h>
#include <AFMotor.h>
AF_DCMotor direksiyon(1); // direksiyon 1 numaralı motor girişi
AF_DCMotor arka_motor(4); // arka motor 4 numaralı motor girişi
//sensör pinleri
#define USTrigger 6
#define USEcho 7
#define Maksimum_uzaklik 100
int hiz=255;
Servo servo; //servo motor tanımlama
NewPing sonar(USTrigger, USEcho, Maksimum_uzaklik);//ultrasonik sensör tanımlama
//kullanılacak eleman tanımı
unsigned int uzaklik;
unsigned int on_uzaklik;
unsigned int sol_uzaklik;
unsigned int sag_uzaklik;
unsigned int zaman;
// program ilk çalıştığında sadece bir kez çalışacak programlar
void setup()
{
 Serial.begin(9600);
 arka_motor.run(RELEASE);
 direksiyon.run(RELEASE);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
servo.attach(9); // motor shiel üzerindeki servo pinini kullanın
}
// sonsuz döngü
void loop()
{
delay(500);
servo.write(90);
sensor_olcum();
on_uzaklik = uzaklik;
if(on_uzaklik < 35 || on_uzaklik == 0)
{
ileri();
}
else
{
dur();
servo.write(180);
delay(500);
sensor_olcum();
sol_uzaklik = uzaklik;
servo.write(0);
delay(500);
sensor_olcum();
sag_uzaklik = uzaklik;
servo.write(90);
delay(500);
if(sag_uzaklik <sol_uzaklik)
{
sag_geri();
delay(500);
sol_ileri();
delay(500);
ileri();
}
else if(sol_uzaklik <sag_uzaklik)
{
sol_geri();
delay(500);
sag_ileri();
delay(500);
ileri();
}
else
{
geri();
delay(500);
}
}
}
 
// robotun yön komutları
void ileri()
{
 arka_motor.run(FORWARD);
 direksiyon.run(RELEASE);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
}
void geri()
{
arka_motor.run(BACKWARD);
 direksiyon.run(RELEASE);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
}
void sol_ileri()
{
arka_motor.run(FORWARD);
 direksiyon.run(FORWARD);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
}
void sol_geri()
{
arka_motor.run(BACKWARD);
 direksiyon.run(FORWARD);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
}
 
void sag_ileri()
{
 arka_motor.run(FORWARD);
 direksiyon.run(BACKWARD);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
}
void sag_geri()
{
arka_motor.run(BACKWARD);
 direksiyon.run(BACKWARD);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
}
 
void dur()
{
arka_motor.run(RELEASE);
 direksiyon.run(RELEASE);
 arka_motor.setSpeed(hiz);
 direksiyon.setSpeed(hiz);
}
// sensörün mesafe ölçümü
void sensor_olcum()
{
delay(50);
zaman = sonar.ping();
uzaklik = zaman / US_ROUNDTRIP_CM;
}

Adafruit motor shield Robot kit için arduino kodu

// Yazılım Geliştirme By Robimek - 2015
//Robot kit için
#include <Servo.h>// servo motor kütüphanesi
#include <NewPing.h>
#include <AFMotor.h>
//motor pinleri
AF_DCMotor sag_motor(1); // sag_motor 1 numaralı motor girişi
AF_DCMotor sol_motor(4); //sol motor 4 numaralı motor girişi
//sensör pinleri
#define USTrigger 6
#define USEcho 7
#define Maksimum_uzaklik 100
int hiz=255;
Servo servo; //servo motor tanımlama
NewPing sonar(USTrigger, USEcho, Maksimum_uzaklik);//ultrasonik sensör tanımlama
//kullanılacak eleman tanımı
unsigned int uzaklik;
unsigned int on_uzaklik;
unsigned int sol_uzaklik;
unsigned int sag_uzaklik;
unsigned int zaman;
// program ilk çalıştığında sadece bir kez çalışacak programlar
void setup()
{
Serial.begin(9600);
 sol_motor.run(RELEASE);
 sag_motor.run(RELEASE);
 sol_motor.setSpeed(hiz);
 sag_motor.setSpeed(hiz);
servo.attach(9); // motor shiel üzerindeki servo pinini kullanın
}
// sonsuz döngü
void loop()
{
delay(500);
servo.write(90);
sensor_olcum();
on_uzaklik = uzaklik;
if(on_uzaklik > 35 || on_uzaklik == 0)
{
ileri();
}
else
{
dur();
servo.write(180);
delay(500);
sensor_olcum();
sol_uzaklik = uzaklik;
servo.write(0);
delay(500);
sensor_olcum();
sag_uzaklik = uzaklik;
servo.write(90);
delay(500);
if(sag_uzaklik>sol_uzaklik)
{
sag();
delay(500);
ileri();
}
else if(sol_uzaklik >sag_uzaklik)
{
sol();
delay(500);
ileri();
}
else
{
geri();
}
}
}
 
// robotun yön komutları
void ileri()
{
 sol_motor.run(FORWARD);
 sag_motor.run(FORWARD);
 sol_motor.setSpeed(hiz);
 sag_motor.setSpeed(hiz);
}
 
void geri()
{
sol_motor.run(BACKWARD);
 sag_motor.run(BACKWARD);
 sol_motor.setSpeed(hiz);
 sag_motor.setSpeed(hiz);
}
 
void sol()
{
sol_motor.run(BACKWARD);
 sag_motor.run(FORWARD);
 sol_motor.setSpeed(hiz);
 sag_motor.setSpeed(hiz);
 
}
 
void sag()
{
sol_motor.run(FORWARD);
 sag_motor.run(BACKWARD);
 sol_motor.setSpeed(hiz);
 sag_motor.setSpeed(hiz);
}
 
void dur()
{
sol_motor.run(RELEASE);
 sag_motor.run(RELEASE);
 sol_motor.setSpeed(hiz);
 sag_motor.setSpeed(hiz);
}
// sensörün mesafe ölçümü
void sensor_olcum()
{
delay(50);
zaman = sonar.ping();
uzaklik = zaman / US_ROUNDTRIP_CM;
}

Yazılımı yükleyerek gerekli bağlantıları yapıyoruz.Engele olan uzaklık mesafesini değiştirebilirsiniz.Kendi robotunuza göre algoritmayı geliştirebilirsiniz.

Kendi Robotunu Yap projelerimizin bu bölümünde engele çarpmayan otonom hareket eden robotumuzu tamamladık.Bir sonraki projede görüşmek üzere…

Bunları da beğenebilirsin

Cevap bırakın

E-posta hesabınız yayımlanmayacak.

226 Yorum

  1. CİHAN

    Arduino:1.8.1 (Windows 10), Kart:”Arduino/Genuino Uno”

    C:\Users\Lenovo\Documents\Arduino\sketch_jul02e\sketch_jul02e.ino:3:21: fatal error: NewPing.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Error compiling for board Arduino/Genuino Uno.

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    DERLEME HATASI VERDİ EKSİKSİZ KOPYALADIĞIMA EMİNİM

    1. cihan

      oluşan hatada newPing.h dizisini kütüphaneye nasıl ekleyebilirim

    2. CİHAN

      tamam ekledim :DDDDDD

  2. Ayşe

    engelden kaçan robot 4 tekerlekli olacak acilen yardım edermisiniz

  3. Ayşe

    iyi akşamlar hocam ben 4 tekerli kit aldım arduino için. motor sürücü kartım L298N hangi kodları kullanmam gerekir birde hangi devre şeması kullanmalıyım yardım edermisiniz

  4. Barış

    sezgin abi verdiğin fritzinge gore ultrasonik sensörün vcc pinini servoya gelen 5v pinine , gnd pinini de servonun baglandiginin yanındaki gnd pinine taksam çalışır mı ?

  5. Barış

    merhaba sezgin abi ben arduinoda yeniyim de

    bu projede kutyphaneyi yukledim sonra bu hatayı aldım lütfen ilgilenir mısın e postadan da ulaşabilirsiniz bariskuyas2001@outlook. com

    1. Sezgin GÜL

      hatayı yazarmısın

    2. Barış

      Arduino:1.8.1 (Windows 8.1), Kart:”Arduino/Genuino Uno”

      engelden_kacan_araba:17: error: expected primary-expression before ‘unsigned’

      unsigned int uzaklik;

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void setup()’:

      engelden_kacan_araba:26: error: ‘OUTP’ was not declared in this scope

      pinMode(OnMotor_sol, OUTP

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void loop()’:

      engelden_kacan_araba:37: error: ‘sensor_olcum’ was not declared in this scope

      sensor_olcum();

      ^

      engelden_kacan_araba:38: error: ‘uzaklik’ was not declared in this scope

      on_uzaklik = uzaklik;

      ^

      engelden_kacan_araba:39: error: ‘on’ was not declared in this scope

      if (on_uzaklik > 35 || on

      ^

      engelden_kacan_araba:40: error: expected ‘)’ before ‘{‘ token

      {

      ^

      engelden_kacan_araba:78: error: expected primary-expression before ‘}’ token

      }

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void ileri()’:

      engelden_kacan_araba:84: error: ‘ArkaMotor_Ge’ was not declared in this scope

      digitalWrite(ArkaMotor_Ge

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void geri()’:

      engelden_kacan_araba:91: error: ‘ArkaMotor_Ge’ was not declared in this scope

      digitalWrite(ArkaMotor_Ge

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void sol_ileri()’:

      engelden_kacan_araba:98: error: ‘ArkaMotor_Ge’ was not declared in this scope

      digitalWrite(ArkaMotor_Ge

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void sol_geri()’:

      engelden_kacan_araba:105: error: ‘ArkaMotor_Ge’ was not declared in this scope

      digitalWrite(ArkaMotor_Ge

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void sag_ileri()’:

      engelden_kacan_araba:112: error: ‘ArkaMotor_il’ was not declared in this scope

      digitalWrite(ArkaMotor_il

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void sag_geri()’:

      engelden_kacan_araba:119: error: ‘ArkaMotor_il’ was not declared in this scope

      digitalWrite(ArkaMotor_il

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void dur()’:

      engelden_kacan_araba:126: error: ‘ArkaMotor_il’ was not declared in this scope

      digitalWrite(ArkaMotor_il

      ^

      C:UsersCasper PcDesktopengelden_kacan_arabaengelden_kacan_araba.ino: In function ‘void sensor_olcum()’:

      engelden_kacan_araba:134: error: ‘uzaklik’ was not declared in this scope

      uzaklik = zaman / US_ROUN

      ^

      engelden_kacan_araba:134: error: ‘US_ROUN’ was not declared in this scope

      uzaklik = zaman / US_ROUN

      ^

      exit status 1
      expected primary-expression before ‘unsigned’

      This report would have more information with
      “Show verbose output during compilation”
      option enabled in File -> Preferences.

      1. Barış

        internet gitti de hatayı yazamadım kusura bakma

      2. Sezgin GÜL

        kodu kopyalarken eksik kopyalamışsın . mutemelen bir parantez eksik.

        1. Barış

          tekrar kopyalayıp demedim yine hata alıyorum Rica etsem bana e postadan .ino dosyasını atar misin

          1. Sezgin GÜL

            hangisinin kodunu istiyorsun ?

          2. Barış

            enegel algılayan kumandalı araba versiyonunu videodaki

          3. Barış

            teşekkürler sezgin abi verdiğin kodu indirip denedim derlemeyi tamamladım şimdi Arduino kart sipariş ettim onu bekliyorum

  6. Ahmet

    Kardeş bağlantı şemaları net değil de l298 ve arduino batarya arasındaki bağlantıları net bi şekilde gösterebilirmisin rica etsem

  7. MuraT

    s.a.

    projeyi derlerken hata mesajı alıyorum.

    “Adafruit motor shield Robot kit için arduino kodu” kullanıyorum
    ————————————————-

    Arduino:1.6.12 (Windows 7), Kart:”Arduino/Genuino Uno”

    C:\Users\Murat KILINÇ\Desktop\robo1\robo1.ino: In function ‘void loop()’:

    robo1:37: error: ‘sensor_olcum’ was not declared in this scope

    robo1:41: error: ‘ileri’ was not declared in this scope

    robo1:45: error: ‘dur’ was not declared in this scope

    robo1:58: error: ‘sag’ was not declared in this scope

    robo1:60: error: ‘ileri’ was not declared in this scope

    robo1:64: error: ‘sol’ was not declared in this scope

    robo1:66: error: ‘ileri’ was not declared in this scope

    robo1:70: error: ‘geri’ was not declared in this scope

    exit status 1
    ‘sensor_olcum’ was not declared in this scope

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    1. Murat KILINÇ

      Hata ile ilgili yardım edecek biri varmı?

      1. Sezgin GÜL

        merhaba murat, kod hatasız derlenmektedir. muhtemelen eksik kopyalamış olabilirsin.

        1. Murat KILINÇ

          Sezgin Gül Hocam onlarca kez denedim… Kopyalamada hata olduğunu düşünmüyorum.

          YARDIM RİCA EDİYORUM…

          .ino dosyasını bana muratkilinc@hotmail.com adresinden yollayabilir misiniz.

          L298n motor sürücü kartı – 2WD Robot Araba Kit kullanıyorum…

          1. Sezgin GÜL

            hepsini tekrar kontrol ettim hata yok. mail den de gönderdim kodu.

          2. eren

            Probleminiz şimdiye kadar çözülmüştür sanırım ama sonradan bakacakları için;

            “hiz ” was not declared in this scope gibi bir hata alıyorsanız void ileri() ve altındaki kısmı void setup() ile void loop() arasına taşıyın.

            ileri, sag, sol vs fonksiyonlar tanımlanmadan çalıştırılmaya uğraşıldığı için böyle bir problem çıkıyor.

    2. Turgay

      Aynı hatayı ben de alıyorum.

  8. Erol

    hocam arduıno kodunu adafruit motor shield ile olan engel algılayan devrede kullanabilirmiyiz bir sıkıntı olurmu ki.Teşekkür ederim.

  9. AHMET

    hocam servosuz yapmaya çalıştım ama olmuyo.kodu servosuz düzenleyebilir misiniz?

  10. haluk

    Adafruit motor shield Robot kit için arduino kodunu yükleyemiyorum exit hatası diye bir hata veriyor. yardımcı olurmusunuz?

  11. doğukan

    abi rar dosyasını direk kütüphane dosyalarının içine mi atmam gerekiyor

  12. besir

    2. devrenin robot kit yazılımında sag_motor.setSpeed(hız); burada derleme sırasında hata veriyor acil yardım edermisnz

    1. nejat

      unsigned int uzaklik;
      unsigned int on_uzaklik;
      unsigned int sol_uzaklik;
      unsigned int sag_uzaklik;
      unsigned int zaman;
      unsigned int hiz; bu satırı yukarı ekledim sorun çözüldü veya proğramda (hız) yazılı yere setSpeed(50); hız yazılı yere 0- 250
      arası değerde girilebilir girilen değer motor devrini veriyor

  13. Omer

    Sezgin abi sana emailden ulasmam gerek bir kodun duzeltilmesi gerek acaba yardim edebilirmisin cok hayra girirsin bak bitirme tezim ve kala kaldim bir turlu ilerlemiyo ancak senin ustesinden gelebilecegin bisey

  14. can

    devreyi yaptım hocam şuan sorunsuz çalışıyor. sadece delay’ları 200 yapınca soron cözüldü

  15. can

    hocam devreyi yaptım devre engeli görüyor duruyor servo sağ sol yapıyor ve öyle kalıyor sorun nerede acaba

  16. kerem

    6v verince sorun çözül dü

  17. kerem

    hocam iyi geceler devreyi yaptım ama devre randumanlı çalışmıyor.roboot sadece ileri gidiyor.
    sensör bozuk olabilir mi.bide tekerleri elimle yarım tur çevirince hareket ediyor.servo sadece arada sola dönüyor
    arduino yu9v pil ile motor sürücü dvresini ise 3v pil ile besleme yaptım.Saygılarımla…

    1. Sezgin GÜL

      motor sürüscüye 3v çok çok azdır. en az 6v vermen lazım.

  18. kerem

    servo olarakda mg 995kullandım

  19. kerem

    iyi akşamlar.Hocam l293 d 3v yetermi tekerler yavaş dönüyor.l293d ye en fazla kaç volt verebiliriz?
    servo motora da 3v gidiyo 3v servo için yeterli olur mu

    1. Sezgin GÜL

      l293d 4.5v ile 36v a kadar 600 mah akımı geçmeyecek şekilde besleme yapılır. Sevo motor için çalışma voltajı 4.8v ile 6v arasıdır.

  20. erkan

    bu şekilde yazdım hep tek sensör çalışyor
    // Yazılım Geliştirme By Robimek – 2015
    //oyuncak araba içim
    #include
    NewPing sonar1(3, 4, 100); // Sensor 1:
    NewPing sonar2(6, 7, 100); // Sensor 2:
    //motor pinleri
    #define OnMotor_sol 9
    #define OnMotor_sag 10
    #define ArkaMotor_ileri 11
    #define ArkaMotor_Geri 12
    //sensör pinleri
    #define USTrigger_pin1_3
    #define USEcho_pin1_4
    #define USTrigger_pin2_6
    #define USEcho_pin2_7
    #define Maksimum_uzaklik 100

  21. erkan

    sezgin bey herşeyi tamamladım servonun kodlarını sildim fakat ikinci sensörün kodunu bir türlü ekleyemedim. yardım edersen sevinirim.

    1. Sezgin GÜL

      sadece sensör pini tanımlamayla olmaz. tanımladığın ikinci sensörün pinleri ile sensör kütüphanesinde bir ad tanımlayacaksın. birinci sensörün tanımlanan fonksiyonlarında bakıp ikincisini de aynı şekilde tanımla. örneğin;
      NewPing sonar(USTrigger, USEcho, Maksimum_uzaklik); bu birinci sensör
      NewPing sonar1(Trigger, Echo, Maksimum_uzaklik1); bu da ikinci sensör tanımı olsun.
      İkinci sensör tanımında değişkenlerin adı farklı olmalıdır.

      1. erkan

        yok Sezgin yok ne yaptımsa ikinci sensörü bir türlü çalıştıramadım. dediklerini yaptım ikinci sensöre farklı adlarda NewPing sonar(USTrigger, USEcho, Maksimum_uzaklik); bu birinci sensör
        NewPing sonar1(Trigger, Echo, Maksimum_uzaklik1); senin dediğin gibi yaptım ama şu sensör kütüphanesine bir ad tanımlama kısmını beceremedim. bilmemek çok zor arduino bıktı bu gün benden.

  22. erkan

    böyle bir proje için devre yapmıştım ama devreden vazgeçip arduino kullanmaya karar verdim. elimde servo motor yok iki adet hc-sr04 sensörü aracın sağ ve sol kısmına belirli bir açıyla yerleştirsem mesafe ölçümünü bu şekilde yaptırsam bunun arduino üzerinde bağlantısını hangi pinlerden yapmalıyım ve kodlarda nasıl bir değişiklik yapmam lazım. veya sensör yerine ır led alıcı-verici modül kullanabilirmiyim. cevap yazarsanız sevinirim.

    1. Sezgin GÜL

      ikinci ultrasonik sensörü de koda eklemen lazım. servo kullanmayacak isen koddan sil ve algoritma kısmında sağ ve sol sensörlerden gelen verileri karşılaştırıp uygun tarafa dönmesini sağla.

      1. erkan

        sezgin bey cevabın için teşekkürler.bu yaptığım çok orjinal üst kaportası ahşap yürüyen aksamı yine kendi yaptığım dişlilerden ve mekanik parçalardan oluşan bir araba direksiyon kısmı biraz sıkıntılı örneğin sağda engel gördüğü zaman ön motor sola şukadar saniye dön sonra sağa şukadar saniye dön diye komutu nasıl eklerim.

        1. Sezgin GÜL

          örneğin; önce sağa sonra sola döndürmek için

          sag();
          delay(gecikme süresini yaz);
          sol();
          bu şekilde eklersin.

          1. erkan

            sezgin bey öncelikle cevap yazdığınız için gerçekten teşekkürler.
            peki ikinci eklediğim sensör ile yaptığım değişikliklerin kodlarını yazmaya çalıştım.
            bu kodlarda hata varmıdır acaba.
            // Yazılım Geliştirme By Robimek – 2015
            //oyuncak araba içim
            #include
            //motor pinleri
            #define OnMotor_sol 9
            #define OnMotor_sag 10
            #define ArkaMotor_ileri 11
            #define ArkaMotor_Geri 12
            //sensör pinleri
            #define USTrigger 4
            #define USEcho 5
            #define USTrigger 6
            #define USEcho 7
            #define Maksimum_uzaklik 100
            NewPing sonar(USTrigger, USEcho, Maksimum_uzaklik);//ultrasonik sensör tanımlama
            //kullanılacak eleman tanımı
            unsigned int sol_uzaklik;
            unsigned int sag_uzaklik;
            unsigned int zaman;
            // program ilk çalıştığında sadece bir kez çalışacak programlar
            void setup()
            {
            //motor çıkışları
            pinMode(OnMotor_sol, OUTPUT);
            pinMode(OnMotor_sag, OUTPUT);
            pinMode(ArkaMotor_ileri, OUTPUT);
            pinMode(ArkaMotor_Geri, OUTPUT);
            }
            // sonsuz döngü
            void loop()
            {
            delay(500);
            sensor_olcum();
            sag_uzaklik = sol_uzaklık;
            if(sag_uzaklik > 35 || sol_uzaklik > 35 == 0)
            {
            ileri();
            }
            else
            {
            dur();
            delay(500);
            sensor_olcum();
            sol_uzaklik < sag_uzaklık;
            delay(500);
            sag_uzaklik < sol_uzaklik;
            delay(500);
            }
            if(sag_uzaklık <sol_uzaklık
            {
            sag();
            delay(1500);
            geri();
            delay(2000);
            sol();
            delay(1500);
            ileri();
            }
            else if(sol_uzaklık<sag_uzaklık)
            {
            sol();
            delay(1500);
            geri();
            delay(2000);
            sag();
            delay(1500)
            ileri();
            }

            // robotun yön komutları
            void ileri()
            {
            digitalWrite(OnMotor_sag, LOW);
            digitalWrite(OnMotor_sol, LOW);
            digitalWrite(ArkaMotor_Geri, LOW);
            digitalWrite(ArkaMotor_ileri, HIGH);
            }
            void geri()
            {
            digitalWrite(OnMotor_sag, LOW);
            digitalWrite(OnMotor_sol, LOW);
            digitalWrite(ArkaMotor_Geri, HIGH);
            digitalWrite(ArkaMotor_ileri, LOW);
            }
            void sol_ileri()
            {
            digitalWrite(OnMotor_sag, LOW);
            digitalWrite(OnMotor_sol, HIGH);
            digitalWrite(ArkaMotor_Geri, LOW);
            digitalWrite(ArkaMotor_ileri, HIGH);
            }
            void sol_geri()
            {
            digitalWrite(OnMotor_sag, LOW);
            digitalWrite(OnMotor_sol, HIGH);
            digitalWrite(ArkaMotor_Geri, HIGH);
            digitalWrite(ArkaMotor_ileri, LOW);
            }

            void sag_ileri()
            {
            digitalWrite(OnMotor_sol, LOW);
            digitalWrite(OnMotor_sag, HIGH);
            digitalWrite(ArkaMotor_ileri, HIGH);
            digitalWrite(ArkaMotor_Geri, LOW);
            }
            void sag_geri()
            {
            digitalWrite(OnMotor_sol, LOW);
            digitalWrite(OnMotor_sag, HIGH);
            digitalWrite(ArkaMotor_ileri, LOW);
            digitalWrite(ArkaMotor_Geri, HIGH);
            }

            void dur()
            {
            digitalWrite(OnMotor_sag, LOW);
            digitalWrite(OnMotor_sol, LOW);
            digitalWrite(ArkaMotor_ileri, LOW);
            digitalWrite(ArkaMotor_Geri, LOW);
            }
            // sensörün mesafe ölçümü
            void sensor_olcum()
            {
            delay(50);
            zaman = sonar.ping();
            uzaklik = zaman / US_ROUNDTRIP_CM;
            }

  23. erkan

    sizin yaptığınız gibi bir ahşap araba yaptım direksiyonu ve arka tekerlekler için birer adet motor 6 volt dc redüktörlü motor kullandım. ben devreyi pıc16f628a ve l293d kullanarak yaptım üzerinde iki adet ır led var sizin yazdığınız kodlar tam istediğim gibi ama benim devre farklı olduğu için bu kodlar uyarmı uymaz ise bu aşağıya sıraladıklarımı ccs c kodunda yazmak için yardımcı olabilirmisiniz. teşekkür ederim.

    Sağda engel varsa
    -Arka motor dur.
    -Ön motor sağa 2 saniye dön dur.
    -Arka motor 2 saniye geri dön dur.
    -Ön motor sola 2 saniye dön dur.
    -Arka motor ileri dönmeye devam et.

    Solda engel varsa
    -Arka motor dur.
    -Ön motor sola 2 saniye dön dur.
    -Arka motor 2 saniye geri dön dur.
    -Ön motor sağa 2 saniye dön dur.
    -Arka motor ileri dönmeye devam et.

    sağda ve solda engel varsa
    -Arka motor dur.
    -Ön motor sağa 2 saniye dön dur.
    -Arka motor 2 saniye geri dön dur.
    -Ön motor 2 saniye sola dön dur.
    -Arka motor ileri dönmeye devam et.
    döngü bu şeklide devam edecek.
    2 saniye süresini örnek olarak yazdım.

  24. Berkay

    Elimde hazırda bulunan 2 motor var.O yüzden 4 motor yerine 2 motor kullanmak istiyorum. Bunu için modda değişiklik yapmam gerekir mi

  25. Berkay

    Hayırlı işler Sezgin Bey ben bir şey sormak istiyorum.4 DC motor kullanılarak hazırlanmış engel algılayan robot devresinin kodunu 2 DC motor kullanarak hazırlanmış devrede kullanabilir miyim?(Asıl Devreye bağlı olan 2 DC motor var.Diğer ikisi ise bunlara bağlı.Direk devreye bağlı değiller.Bu direk devreye bağlı olmayan DC motorları çıkartsam ama yine aynı kodu kullansam olmaz mı?

    1. Sezgin GÜL

      4 motoru bir sürücü ile sürebilirsin. sol 2 motoru bir girişten sağ iki motoru da diğer girişe bağlarsan kodda değişiklik yapmadan sürebilirsin.

  26. Ali km km

    Merhaba.Cevaplarınız için teşekkürler. Şu an sensör dışında her şey tam.Hala sensörün neden çalışmadığını bulamadım.

    1. Sezgin GÜL

      bağlantıları kontrol edin. örnek kodda deneyin. bozulmuş olabilir.

  27. ali

    Merhaba.İlk başta ilk gösterilen fritzing şemasına göre devreyi kurdum.(L293D kullanlan şema).Robot kit kuulandım.Ona göre de kod attım.Ama çalışmadı.Motot sürücü gnd si ile arduino gnd sini bağlayın demiştinizMotor sürücüsünün gnd lerinde pilin eksi kutbundan gelen kablolar vardı.Ben de o kablolardan birine arduino gnd sini bağladım.Yine çalışmadı.L298N shıeld şemasına baktım.Orada da arduıno nun 5v sini pile bağlamıştı.Ben de öyle yaptım.Şu an arduınonun ışıkları yanıyor ve tekerleklerden biri ileri diğeri geri gidiyor.Bağlantı yanlış olabilir mi diye kontrol ettim.Bağlantılar ilk şemanın aynısıydı.Bu arada sensörü arduıno ya sadece 6 ve 7. pinlerden bağladım.İlk şemada böyleydi.L298N Shıeld şemasında ise aynı zamanda arduınonun 5v ve gnd kısımlarını da sensöre bağlamıştı?Nasıl yapmalıyım?Acilen yardım edebilir misiniz?

    1. Sezgin GÜL

      motorlar ileri veya geri fonksiyonlarında zıt yönde hareket ediyorsa sinyal pinlerini ters bağlamışsın. ileri fonksiyonu çalışırken geri dönen motorun sinyal pinlerini ters bağla düzelecektir. ultrasonik pinleri o şekilde. bir de arduinoyu ayrı pille besle.

  28. mehmet

    Adafruit motor shield Robot kit için bağlantı şemasını gösterebilirmisiniz..

  29. ali

    l293D kullandım.Devreyi L298N devresine göre yapsam yanlış 0lmaz ,değil mi?

    1. Sezgin GÜL

      datasheet e göre bağlantısını yaparsın. L298N kodu kullan sorun olmaz.

  30. Ali

    Merhaba.Yine ben.Motor sürücüsünün gnd sini arduinonun gnd sine bağlayın demiştiniz.Bu fritzing şemasında gösterilmemiş.Bunun gibi başka gerekli olup da gösterilmeyen başka bağlantılar var mı ?

    1. Sezgin GÜL

      L298N shield devresi kısmında bağlantıların hepsini gösterdim. GND pinleri de bağlı orada.

  31. Ali

    Merhaba.Cevabınız için teşekkürler.Fakat motor sürücü gnd lerinin 4 ü de pilin eksi kutbuna bağlı.Bunlardan birisini nasıl arduinoya bağlayabilirim?

    1. Sezgin GÜL

      gndlerin herhangi birine bir kablo daha lehimleyerek arduinoya bağla. ya da direk pilin gnd sinden ek kablo at arduinoya. hepsi aynı şey.

  32. Bahattinates

    merhaba tesekkurler. islerinizden basarilar dilerim

  33. Ali

    Merhaba.motor sürücüsünün gnd sini arduinonun gnd sine bağlamalısın demişsiniz. Arduinonun motor sürücüsüne 9,10,11,12 noktalarından bağladım.Arduinonun 1 tane digital pmw de 2 tane de power yerinde olmak üzere 3 gnd si var ama power daki gnd lerden birini servo motora bağladım. 2 gnd kaldı motor sürücüsünü hangisine bağlamaliyim. Ama belirtmek gerekirse motor sürücüsünün boş pini yok.

    1. Sezgin GÜL

      herhangi bir gnd ye bağlayabilirsin. motor sürücünün tüm gndleri biribirine bağlı olsun. bazı modüllerde içten bağlanmamış oluyor.

  34. Ali

    Merhaba.Transistörü biraz araştırdım. Motor sürücüsü kullanmak daha kolay göründü.Devreyi l293d kullanarak yaptım.Fakat devre çalışmıyor. Motor sürücünün pinlerine jumper kabloları takdıgımda kablolar tam oturmuyor kendi kendine çıkıyor.Zorla kabloları pinlere tutturdum.Devrenin çalışmaması bundan kaynaklı olabilir mi?

    1. Sezgin GÜL

      kablolarda temassızlık olabilir. dip soket ile delikli plakete devreyi kurman daha sağlıklı olur. bir de motor sürücünün gnd sini arduinonun gnd sine bağladınız mı. bağlanmamış ise çalışmaz.

  35. ali

    Merhaba.Bu robotu motor sürücü kullanmadan yapabilirmiyiz?

    1. Sezgin GÜL

      sürücü kullanmayacaksınız ayrı transistör ile yapabilirsiniz.

  36. Bahattinates

    merhaba bu sekilde degerlenmdim. gonderdigin kod. hata. redefintionAF_DCMotor direksiyon.
    buradaki kısmı
    AF_DCMotor direksiyon(1);
    AF_DCMotor arka_motor(2);
    bu şekilde yaptim. hata. verdi.
    alaha emanet olun.

  37. Bahattinates

    merhaba. ultrasyon. pin. A.5. ve A.4. bagladim. Sihell motor uzerinde. A.4:A5 pinler oluyor. sizin dediginiz. pinler. 6.ve. 7 . arduino. bagli. motor Sihell arduino. takinca. acikta. anolog. girisler. var.
    6. ve 7 pinleri. A.4.A.5. degistirsek olumu. tesekkurler. hayirli. islerdilerim. size. mesaji. icin kusura. bakma.

  38. Bahattinates

    merhaba. sizin dediginiz. gibi. ayri . ayri. pille. besleme. denedim. gine. olmadi. hic bir motor. calismiyor. motor DC 6 volt. tekerler. sari hazir .almistim. siz, cizgi. izliyen. robota, kulanmisiniz.
    aynisi. kulandim. M.1. M.2.M3.M.4. hic bir motor. calismiyor.
    nete. bir sheil. motor test. icin bir kod buldum. 2 DC. motor bagladim. calisiyor.
    bide. size. hotmail adresimde. size. kod. yolamistim. siz duzeltiniz. Sihell motor surucu. 2.DCmotor.
    Ve, servo,calistirdi. bende. anliyamadim. niye calismadi. . engel robotu. video. izledim. aynisini. motor.Sihell. surucu. kulanmisiniz. bende. bilmiyorum. neden. calismiyor. hersey. icin tesekkurler.
    allaha. emanet olun. bu konuda. sizi. cok meskul.etim. kusura. bakma.

    1. Sezgin GÜL

      kod kısmında sorun yok. bağlantılarda sorun olabilir. ultrasonik sensörü doğru bağladınız mı ? Bu kodda sinyal pinler 6 ve 7 numaralı dijital pinler. Eğer yine olmazsa aşağıdaki gibi değiştirin.
      AF_DCMotor direksiyon(1, MOTOR12_8KHZ );
      AF_DCMotor arka_motor(2, MOTOR12_8KHZ );
      buradaki kısmı
      AF_DCMotor direksiyon(1);
      AF_DCMotor arka_motor(2);
      bu şekilde yapın.

  39. Bahattinates

    merhaba. gonderdiginiz kodu. degerlendim. kod hata yok fakat.Adafruit Motor Shield, arduino. motor surucu. uzerine takili. hic bir motor caliasmadi.sizin. Engel Algılayan Robot (Arduino obstacle robot)
    istedigim. video aynisi. calisin. mumkunmu? tek istedigim. sizden bu. normalde. engel robotunuz. L293. ve servo denedim. calisiyor. sorun yok. tek istedigim. sizden. Adafruit motor Shied.arduino? uzeine. takip calismak. robot calisin? hersey icin tessekurler. mesaji. icin kusura bakma. hayirli. isler.
    gonderdiginiz. kodlarda. hata yok.

    1. Sezgin GÜL

      shield de sorun olabilir. motor numaralarını değiştirip öyle deneyin. bir de shield i ayrı besleyin arduino ayrı pille besleyin. tek pil kullanırsanız enerji yetmez.

  40. Bahattinates

    kusura bakma. unutum. kodu degerlendim. calisti. elin koluna. saglik.
    shiel motor surucu. uzerindeki.4.HC-SR04 Ultrasonik mesafe sensörü. A.5.A4. onu ögrenecektim.
    normalde. L298. semada. nereye. bagli. oldugunu. soylemisin. sheil motor surucu. pinler. acikta. A.5.Ve A.4. var. bunun icin sizi. rahatsiz. etim. tesekkurler. allaha emanet.olun.

    1. Sezgin GÜL

      shield üzerinde analog pinler var onlara kablo lehimleyip bağlantı yapabilirsin

  41. Bahattinates

    merhaba. tesekkur ederim. size kod. indirdim. elin. koluna saglik.
    allah. isinizi. rast. getirsin. sorun kalmadi. boll.kazanclar.

  42. Bahattinates

    https://gist.github.com/Robimek/35c850484231e580222fd7589b7615e6
    merhaba. gonderdiginiz. dosya indirmek. icin. hata veriyor.
    sitenizdeki. butun dosyalari. indirdim. hata. vermedi.

    engel robotun adafruit motor shield için koduna buradan .indirecektim. hata. veriyor.
    mumkunmu. hotmail. adresime. gonderme. imkanin. varmi. indirmem. icin siz . nasil. gondermeyi. dusunuyorsa. daha. iyi bilirsiniz. tesekkurler.

  43. Bahattinates

    merhaba . size cok tesekkur. ederim. hayirli isler dilerim . inanki cok sevindim. hersey. gonlunce olsun.

  44. hande

    Merhaba.Fen lisesi 3.sınıfa gidiyorum.Proje ödevim robot yapımı.Ben de engel algılayan robotu seçtim.Oyuncak araba yerine robot kiti tekerlekleri ve 6v redüktörlü dc motor kullandım.Pil de 9v.Arduino’yu bilgisayara bağladım ve kodu yükledim.Mavi üzerine”yükleme tamamlanmıştır”yazdı.Ama robot çalışmıyor.Sadece servo motorla motor sürücü ısınıyor.Lütfen acilen yardım eder misiniz?Teşekkürler.

    1. Sezgin GÜL

      yeterli enerji olmadığından yada yanlış bağlantıdan kaynaklı olabilir.

  45. Bahattinates

    merhaba. sizden istedigim. Engel Algılayan Robot (Arduino obstacle robot. bu robotunuza.
    Shiel motor surucu. bendeki. asynisini. kulanmisiniz. mumkunmu. bende bu sizin robotaki. ayni. sheil. motoru. kulanmak. isterdim. elimde. 2.tane var. yeni. almistim. turkiyeden. sizi sayenizde. bu .cizgi izliyen. Engel. algilayan. robotunuza. kulanmak. istiyorum. mumkunse. gonderdigin. kodlar. hepsi.
    calisiyor. Shiel. motor surucu. L293D . sizin bu robotaki. kulanmak. sizden ricam. bu 2 robotunuzun. sizin sayenizde. calistirmak, verdigin bilgilerden. dolayi tessekur.ederim. allaha emanet olun.
    boll kazanclar dilerim. sizler. siz cok yardim. seven .kisisiniz. allah. kalbine.göreverir. insallah.size.
    hersey. gonlunce. olsu. tek istedigim. sizden. Sheil motor.surucu. calistirmak. sayenizde. mesaji.icin kusura. bakma.

  46. Bahattinates

    merhaba. cevap verdigin icin tesekkurler. islerinizden. basarilar dilerim.
    allah sizleri. kazadan. beladan. esirgesin. iyi geceler.

    1. Sezgin GÜL

      Amin. teşekkürler. sizin de işinizde başarılar dilerim. takıldığınız yerlerde sorabilirsiniz. çekinmeyin.

  47. Bahattinates

    merhaba. bu kod degerlendim. servo devali donuyor. DC motor . az bir sekilde. calisiyor.
    // Adafruit Motor shield library
    // copyright Adafruit Industries LLC, 2009
    // this code is public domain, enjoy!

    #include
    #include

    // DC motor on M2
    AF_DCMotor motor(2);
    // DC hobby servo
    Servo servo1;
    // Stepper motor on M3+M4 48 steps per revolution
    AF_Stepper stepper(48, 2);

    void setup() {
    Serial.begin(9600); // set up Serial library at 9600 bps
    Serial.println(“Motor party!”);

    // turn on servo
    servo1.attach(9);

    // turn on motor #2
    motor.setSpeed(200);
    motor.run(RELEASE);
    }

    int i;

    // Test the DC motor, stepper and servo ALL AT ONCE!
    void loop() {
    motor.run(FORWARD);
    for (i=0; i<255; i++) {
    servo1.write(i);
    motor.setSpeed(i);
    stepper.step(1, FORWARD, INTERLEAVE);
    delay(3);
    }

    for (i=255; i!=0; i–) {
    servo1.write(i-255);
    motor.setSpeed(i);
    stepper.step(1, BACKWARD, INTERLEAVE);
    delay(3);
    }

    motor.run(BACKWARD);
    for (i=0; i<255; i++) {
    servo1.write(i);
    motor.setSpeed(i);
    delay(3);
    stepper.step(1, FORWARD, DOUBLE);
    }

    for (i=255; i!=0; i–) {
    servo1.write(i-255);
    motor.setSpeed(i);
    stepper.step(1, BACKWARD, DOUBLE);
    delay(3);
    }
    }

    bu kod calisti. peki. arduino uzerindeki. Shiel motor surucu. ultrason. sensor. hanki bine baglanacak.
    sizin klundiginiz. Oyuncak araba . motor surucu. kulanmisiniz. galiba? bende oyle birsey. sizden istemek. oyuncak. araba. sheiel motor. surucuyle. calistirmak? hersey icin tessekurler.

    benim istedigim. sizin bu ultrasyon. ile Sheil. motor surucuyle. calisin. bu konudan. siz daha .iyi bilirsiniz. allaha emanet olun. elin koluna saglik. siz cok tercubelisiniz. inanki.

    1. Sezgin GÜL

      Ultrasonik sensör pinleri kodda define tanımında echo ve trig olarak belirttim. Oyuncak arabada da aynı motor sürücüsünü kullanabilirsiniz. Fark eden bir şey yok. Sadece kodda yön fonksiyonları değişiyor.

  48. Bahattinates

    merhaba. kusura. bakma unutum bende motor .shield .surucu var .uzerinde (2 tane. L293D. var.
    arduino .takiyorsun. bu robota uyarmi. tesekkurler. allaha emanet olun.

  49. Bahattinates

    merhaba. hayirli islerdilerim size. hersey. icin tesekkurler. Newping Exple. hal etim.
    robot kodlar. hepsi calisiyor. sizin sayenizde. sizden ricam. Arduino- surumu. hankisini.
    kulaniyorsunuz? gonderseniz. cok sevimnirim. allaha emanet olun. boll kazanclar.dilerim. size.

    1. Sezgin GÜL

      Rica ederim. ben en son sürüm kullanıyorum. Arduino nun kendi sitesinde download bölümünden indirebilirsiniz. link > arduino.cc/en/Main/Software

  50. Bahattinates

    merhaba tesekkurler ederim size.. cevap verdigin. icin .siz arduino. programi. hanki surumu. kulaniyorsunuz?gonderseniz. cok sevinirim. bendeki. Arduino .Surumu. Bu. 1.6.5.
    hata. Newping Exple.ino 5;21 fatal error. Newping.h: No such file or drectory. Compilation.
    terminated: degerleme.S?rasnd hata olustu. umarim. cevap verirsiz
    Boll kazanclar dilerim. size. siteniz harika. elin koluna saglik.
    allaha emanet olun.

    1. Sezgin GÜL

      ben 1.6.8 sürümü kullanıyorum. Ama 1.6.5 sürümünde de çalışıyor. Siz muhtemelen yanlış şekilde atıyorsunuz kütüphaneyi. arduinonun kurulu olduğu konumda libraries klasörü içine atmalısınız. Rar dan çıkarıp öyle atın.

  51. Bahattinates

    merhaba .hayirli islerdilerim.size. Newping. kutuphanesini. indirdim. winarda. cikartipta.
    sonra. Newpin. libaries. klasörunun. icine gonderedim. arduino uno . fil. Explemple . orda. Newpin.
    basinca. arduino . ekranina. kod geliyor. degerleyince. hata veriyor?
    Bu konudan. sizden. cevap bekliyorum. isvecte. elektronikle. ugrasiyorum.
    siteniz. harika. verdigin. bilgilerden. dolayi.size. tesekkurler. sizden ricam. kod derleyipte. gonderme. imkanin. varmi. allaha emanet olun. isvecten selamlar

    1. Sezgin GÜL

      merhaba, öncelikle olumlu yorumlarınız için teşekkürler. Arduinı programın sürümü eski ise hata verebilir. Kodu derleyip göndersem değişen bir şey olmaz. Çünkü siz arduinoya program atarken de derleme işlemi yapıyor. Yani yine hata verir. Bir de hatayı yazar mısınız.

  52. ALİ BEKİŞ

    Merhaba,
    Arduino Uno üzerinde Adafruit Motor Shield v1.2 ve buna bağlı 2 motor ve servo kullanıyorum.
    Servo modeli DGS S05NF STD. USB’den power verince servo 0-175 derece gibi bir dönüş verebiliyor. Ancak sistemi LiPo 7.4V pilden besleyince servo dönüşü 0-95 derece civarında tıkanıyor. Yanlış servo mu aldım, power ile ilgili bir şey mi yapmalıyım tam anlayamadım. Teşekkürler,

    1. Sezgin GÜL

      servo motora uygun gerilim ve akım vermediğinizden kaynaklanıyor.

  53. ALİ BEKİŞ

    Hocam merhaba,
    Sanırım “Adafruit motor shield Robot kit için arduino kodu”nda minik bir hata var. Uzaklıkları kontrol eden if koşulu sağ ve sol için aynı olmuş. Küçük – büyük işaretlerinden biri değişecek. Bu arada elinize sağlık, güzel bir proje olmuş.

    1. Sezgin GÜL

      Evet küçük bir nokta gözden kaçmış. Gerekli düzenleme yapıldı. Teşekkürler.

  54. OKTAY ÇALHAN

    bu kodlarda diye bişe var arduinoya kod yüklenmiyor.

    1. Sezgin GÜL

      derlemede hata yok ise arduinoya yüklenmemesi kodla ilgili değil arduinoda sorun olabilir.

  55. fuat

    merhaba en arduıno ıle rc kumandasını kaybettıgım rc aracımı kontrol etmek istiyorum, fakat aracın motoru 3A akım çekmekte bunu nasıl halledebilirm teşekkürler.

    1. Sezgin GÜL

      bu projeye göre uyarlayacak isen araba için kodlar mevcut. akım yükseltici kullanarak yapabilirsin. ya da aracın kendi sürücüsünü kullanabilirsin.

  56. selim

    Bu kodlar için bana yardımcı olabilir misiniz

  57. selim

    3 sensör kullansam bu kodlar işey yarar mı

  58. selim

    bana kod alarak atabilirmisiniz rica etsem nereyi değiştirmem gerekiyor veya

    1. Sezgin GÜL

      else den sonra dur(); fonksiyonu var . işte oradan sonraki kısımları değiştirmen lazım. ama tavsiyem 3 sensör kullan o zaman robotu döndürmeye gerek kalmaz. sağ ve sol daki sensörler mesafeyi ölçüp en çok mesafe olan tarafa robotu yönlendirirsin.

      1. Hakan NATIR

        Hocam Merhabalar. Ben 3 sensör kullanıp önüne engel çıktığında sağa veya sola dönmesini sağlayacak kod yazdım. Ancak ön sensör haricinde sağ ve sol çalışmıyor.Seri port ekranında mesafeleri sıfır okuyor.Bunun sebebi nedir ve düzeltmem için ne yapmam gerekir sizce ?

  59. selim

    Her şey için teşekkür ederim fakat benim sensörüm servo motorsuz kodlar yine işey yararmı ben sensörümü breadboard bağladım ordanda arduinodan direk kablo çektim bu kodlar işey yarar mı yaramazsa hangi kodları kullanmam gerekir veya bu kodda nereyi silmem gerekir

    1. Sezgin GÜL

      servonun amacı sensörü sağa ve sola döndürüp uzaklıkları ölçtürmekti. servo kullanmayıp tek sensör kullandıysan sağa ve sola döndürme işlemini tekerlekler ile sağlaman lazım veya birden fazla sensör kullanıp sağ ve sol mesafelerini ölçmen lazım. Kodda değiştireceğin kısım referans mesafeyi geçtikten sonraki kısım yani ön mesafe referans değeri aştığında motorları sağa ve sola hareket ettirerek etrafındaki boş olan yeri bulmasını sağlayacaksın.

  60. selim

    Teşekkürler peki hangi kısımda tanımlayabilirim yani tanımlama kodları değiştireceğim yer neresi

  61. selim

    iyi günler.Peki ben mesafe sensöründeki trig ve echo pinilerini arduinodaki istediğim yere takıyım mı yoksa sizin taktığınız gibi arduinoda ki 6 ve 7 dijital pinlerine mi takayım

  62. ibrahim karada

    hocam bu engelden kaçan robutu step motorla birtürlü yapamadım bana yardımcı olun lütfen proje aldım ama step motorla yapmamı istiyorlar ben kendim yazdığım kodlarla birtürlü mesafr semsörüyle motoru çalıştıramadım bana yardımcı olun hocam

    1. Sezgin GÜL

      step motor için örneğin
      myStepper.setSpeed(50);
      myStepper.step(100);
      50 hızla 100 adım git tanımı bunu engel görmediği zaman ki yere tanımlayın
      engel gördüğünde ise
      myStepper.step(0);
      engel kısmına bu tanımı yapın yani sıfır adım olduğundan dönmeyecek duracak ve geri gitmesi için de
      myStepper.setSpeed(50);
      myStepper.step(-100);
      50 hızla -100 adım yani ters yön ifadesi olduğundan geri gidecektir.

      1. ibrahim karadağlı

        saolum hocam deniyecegim tsk

  63. selim

    Adafruit motor shield Robot kit için arduino kodu

    “hiz ” was not declared in this scope bu kodda hata veriyor

    1. Sezgin GÜL

      tanımlama kısmına bunu yaz >> int hiz = 255; yukarıda da cevap vermiştim aynı soruna.

      1. ibrahim karadağlı

        hocam bn step motorla ultra sonic mesafe sönsörü ile kontrol etmek istiyorum ama bir türlü yapamadım diyelimki motor donuyor sensöre elimi 5 cm yaklastırdımda durup geriye dönmesini istiyorum ama birtürlü başaramadım

  64. Mehmet gök

    4 tekerden ayrı motora sahip kitler için kod nerden bulabilirim?

    1. Sezgin GÜL

      4 tekerlekli kitlerde sol taraftaki 2 motoru birbirine ve sağ taraftaki diğer iki motoru da birbirine bağlayıp aynı pin üzerinden yönetebilirsin. Bu şekilde yaparsan yukarıdaki kit için yazılı programı kullanabilirsin.

  65. selim

    Efendim iyi günler ben kodu yükleyemiyorum hata veriyor “hiz” was not declared bir hata veriyor ne yapmam lazım yardım edermisiniz

      1. selim

        Adafruit motor shield Robot kit için arduino kodu

        “hiz ” was not declared in this scope bu kodda hata veriyor

      2. selim

        Adafruit motor shield Robot kit için arduino kodu

        “hiz ” was not declared in this scope bu kodda hata veriyor yardımcı olurmusunuz lütfen

  66. selim

    Efendim kodda hata veriyor “hiz ” was not declared in this scope diyor ne yapmam lazım

  67. selim

    Efendim iyi günler. Ben bu robottan yapıcam ama adafruit l293d modelini kullıcam hangi kodları kullanabilirim yardımcı olurmusunuz

  68. Emin

    Hocam uğraştım fakat yapamadım. Uzaktan kumanda icin yazılım yollarmisiniz ? Bir de arduniou ya anten i baglayabilirmiyiz? Yoksa oyuncağın kendi motoru ıle mi kontrol etmeye devam etsin ? Oyleyse ardunio sadece mesafe ölçmeye yarayacak gibi oluyor. Saygılar.

    1. Sezgin GÜL

      şuan vaktim yok uygun vakitte gönderirim. oyuncak arabanın kendi kumandasını da kullanırsın yada telefondan da yönetirsin o sana kalmış. engele çarpmaması için arduinoya motor pinlerini bağlaman gerek. lakin bu otonom kontrol edecek. yani engel olduğunda öncelik arabadaki arduinoda olacak ve motorları durdurup önceden tanımlanan yöne doğru yönelecek.

  69. nuri

    Manevrasıaz kkalıyor biraz daha fazla geri gelsin istiyorum o sureyi nereden ayarlayabilirim

    1. Sezgin GÜL

      loop kısmında sol_geri() ve sag_geri() fonksiyonlarının altındaki delay değerini arttır. Az gelmesinin sebebi iki motor da çalıştığı için enerji yarılanıyor ve motorlar yavaş dönüyor

  70. nuri

    Hocamcevap için tesekkur ederim.sorunu cozdum sesnsor açısı problemmis.robot çalışıyor Ben bu projeyi bitirme odevi iiçin hazırlıyorum hocaya gösterdim dedi ki geri manevra yaparken çok kısa hareket ediyor ( benim arabadan olabilir ) bu sureyi birazuuzatabilir miyim.diyelim ki sola dönecek geri gelme suresini biraz uzatabilirmiyiz.

  71. nuri

    Hocam bu servo kaç cm mesafeden sonra tarama yapacak onu açık da olsa kapalı da olsa hep tarıyor bende

    1. Sezgin GÜL

      algoritmada mesafe 35cm den az olunca araba durur ve servo sağa sola döner bu sırada sensör uzaklıkları ölçer ve karşılaştırma yapar hangi taraf çok ise araba o tarafa döner

  72. ali özbek

    merabalar engel algılayan robot yapıyorum ama texsas kartı kullanıyorum ve sensörüm görmüyor yardımcı olurmsunuz oyuncak motoru kullandım kodolmuyo paylaştıgnız kodu denıyorum dosya dzini bulunamadı diyor

  73. melek

    herşeyi yaptım ama arduino usb güç verdimi sadece ileri geri yapıyor motor sürücüsünden verdimi servo motor yavaş yavaş sağa sola dönüyor sorun nedir acaba

    1. melek

      sorunu çözdüm ama ön tekerleri çeviremiyyor motor

      1. Sezgin GÜL

        enerji sorunu vardır. arduinoyu 9v pil ile girişten besleyin. motor sürücü için de 6v veya 7.2 v pil kullanın. veya servo motorun pin numarasını kodda 9. pin yapın ve shield üzerinde iki servo motor girişinden ilkine takın.

  74. ercan

    Arduino:1.6.6 (Windows 10), Kart:”Arduino/Genuino Uno”

    C:\Program Files (x86)\Arduino\examples\engel_robot_motor_shield\engel_robot_motor_shield.ino:1:21: fatal error: AFMotor.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Derleme sırasında hata oluştu.

    Rapor daha fazla veri içermeli
    “Derleme sırasında ayrıntılı çıktı göster”
    Dosya > Tercihler’de etkinleştirilmiş.

  75. ercan

    mrb Motor shield programda kontrol ediyoru mama hata veriyor yardımcı olursanız sevinrim

  76. kerem

    hocam servo 90 derecelikmi 180 derecelikmi?

  77. kerem

    hocam teşekkürler bilgileriniz için.
    sensör servonun üstünemi monta ediliyor?
    saga sola dönme işleminide dvredeki motorlarmı saglıyor?
    devredeki motorlar robotun arka tekir kımına monta edilicek dimi

    1. Sezgin GÜL

      evet servonun üzerine sensör monte ediliyor . Dönme işleminde sol ve sağ arka kısımdaki motorlar zıt yönde hareket ederek sağa veya sola hareket etmesi sağlanıyor.

  78. kerem

    iyi akşamlar. ben bu robotu yapıcam birşeyi anlamadım yukarıdaki resmi proteusta cizsem devre çalışırmı yoksa başka baglantıları varmı.
    saygılarımla

    1. Sezgin GÜL

      çalışır sorun olmaz yalnız arduinoyu da devreye lehinmleyeceksen modelini indirip onun üstünde çiz pinleri denk gelir o zamn

  79. ahmet

    meraba hocam kerime yolladığınız motor shieldli program varya o kit için yazılmış onun oyuncak arabaya uyarlanmışını gönderirmiisiniz

  80. kerimhan

    HOCAM RİCA ETSEM KODA DA BAKARMISINIZ KERİM ARKADAŞA GÖNDERMİŞSİNİZ TEŞEKKÜRLER

  81. kerimhan

    merhabalar motor shild kullanıyorum hocam ve oyuncak araba üzerine kurulum yaptım arkadaşa afmotorshield li yazılımı göndermişsiniz onu kullandım lakin çalıştıramadım m1 ve m4 ü kullandım ama yazılımda motorlar kit gibi kullanılmış yada ben yanlış anladım hocam oyuncak arabaya uyarlanmış motor shieldli yazılımı paylaşırsanız sevinitim teşekkürler şimdiden iyi çalışmalar

    1. Sezgin GÜL

      Motor shield için yazılmalar eklendi projeden bakabilirsiniz.

  82. nuri

    9 voltluk pille besliyorum 7805 i sensörle pilin gnd si ortak sorun olmaz herhalde degil mi hocam.

    1. Sezgin GÜL

      Motorları ayrı sensörü ayrı beslemende fayda var. 9v luk piller erken bitiyor. Çalıştıramayabilir.

  83. nuri

    hocam ben entegreyi arduino kart üzerinde programladım. daha sonra entegreyi söküp bord üzerinde kurdum. sensörün graund ucuna direnç bağlamdım.voltaj regülatrü olarak ta 7805 kullandım. şuan sensör çalışmıyor.bozulmuş olabilir mi. seösörün graund bağlantısına direnç mi bağlamak lazımdı acaba

    1. Sezgin GÜL

      Sensör 5 volt ile çalışmakta ki sizde regülatör kullanmışsınız.Yani sorun yok. Direnç bağlamanıza gerek yok. Entegreyi ayrı kurduğunuz için devrenin beslemelerini tekrar kontrol edin. Özellikle entegrenin beslemelerine bakınız.

  84. ubeydullah

    merhaba motor shild kullandım gerilimim de yeterli fakat sürekli geri geri geliyor ileri çok nadir gidiyor kerime gönderdiğiniz programı kullandım o motor kit tekerler için olan herhalde hocam ben oyuncak arabanın üzerine kurdum nasıl çözüm bulabilirim yardım edermisiniz .?

    1. Sezgin GÜL

      oyuncak araba kodu üstte yazıyor. Motorların yönleri ters olabilir tekrar kontrol et

  85. emin

    merhabalar hocam. benim sorum şu : uzaktan kumandalı mesafe sensörlü arabayı nasıl yaparız?? örnegın burda sınır uzaklıgı kendımız gırıyoruz. ama beenım ıstedıgım biz kumandadan ileri git desekte orda engel oldugunu anlayacak ve oraya carpmamak için yönünü değiştirecek ? teşşekürler hocam saygılar.

    1. Sezgin GÜL

      Normal uzaktan kumandalı araba yaparsın.Yazılıma ek olarak bir interput mesafe ölçüm tanımlarsın ki bu ayrı ve sürekli çalışacak kesme tanımlaman olacaktır. Engel algıladığında hemen yön değiştirerek tanımladığın fonksiyonu yapacaktır.

  86. nuri

    Hocam kolay gelsin..bir sorum olacakti.
    Bir tane arduino uno r3 alsam bir tanede atmega 328 entegre alsam arduinonun üzerindeki entegreyi söküp diğer entegreyi taksam taktiğin entegreyi programlanabilir miyim.

  87. abdullah

    kolay gelsin bende motor shield ile denediim yapamadım besleme için de 3.7 v 1.1 A kullanıyorum oyuncak araba üzerine kurdum ama çalıştıramadım acil yardım please ..

    1. Sezgin GÜL

      Shield çalışma voltajı 4.8v 6v arasıdır. 3.7v volt yetersiz olduğundan çalışmamaktadır.

  88. OKAN

    Hocam merhabalar, Arduino uno ile 2 tekerlekli olanı yapmaya çalışıyorum.L298N sürücü kartı kullanıyorum. 3 numaralı portta servo motor,
    4-5 de ENA ENB 6,7 Trig-Echo 9,10,11,12 de In1,In2,In3,In4 bağlı kodları atıyorum tek motor çalışmıyor.Diğeride sadece geri gidiyor.Yardımcı olursanız sevinirim.

    1. Sezgin GÜL

      Söylediğin pinlerle yazılımdaki pinler farklı ondan çalışmıyor.Yazılıma bakarsan 9 10 11 12 numaralı pinler motor sinyal pinleridir. ENA ve ENB pinlerine 5v bağla . Servo motor da 4. pine tak.

      1. OKAN

        Söylemiş olduğum portları Arduino yazılımında tanımladım.
        Ben pil ile besliyorum aracı EnA ile EnB porta bağlayarak daha önce başka projede kullandım.
        Fakat bu engelden kaçan robota servo motor bağladığım için hatalar veriyor.

        1. Sezgin GÜL

          Senin söylediğin pinler yazılımdaki ile aynı pinler değil ki. ENA ve ENB pinini direk 5v a tak pota taktığın için motorlara yeterli enerji gelmiyor olabilir. Yani servo motordan dolayı robot hata vermez 🙂

  89. deniz

    yardım için teşekür ederim 🙂

  90. deniz

    yeni başladığım için ilk bun la başlayayımdedim ama derleme sırasında
    Arduino: 1.6.6 (Windows 10), Kart: “Arduino / Genuino Uno”

    C: \ Users \ emre \ Desktop \ Engel_robot_h_z_kontroll_ \ Engel_robot_h_z_kontroll_.ino: 4: 21: fatal error: NewPing.h: Böyle bir dosya ya da dizin

      #include

                          ^

    Derleme sonlandırıldı.

    Çıkış durumu 1
    Derleme sırasında hata oluştu.

       Rapor Daha Fazla veri içermeli
       “Derleme sırasında AYRINTILI çıktı Göster”
       Dosya> Tercihler’de etkinleştirilmiş.
    bu hatayı verdi yardımcı olurmusunuz

  91. Cemil

    Hocam ben bu motor shield ile yaptım ama çalıştıramadım kodda bi sıkıntı yok herhalde bağlantıları yapamadım jpeg olarak shield ardunio ve oyuncak arabanın motorları bağlantılarını ayrıntılı olarak gönderirmisiniz

    1. Sezgin GÜL

      motor shield zaten arduinonun üzerine takılıyor. shield deki 1 ve 4 numaralı motor girişlerine motorları tak Ayrıca max speed yazılımda 180 onu arttır muhtemelen ondan kaynaklıdır motorları döndürmeye yetmiyordur

  92. kerim

    videoda kullanılan shieldin aynısı ama sizin yazılımınızda bahsettiğiniiz olay yok sezgin bey

  93. kerim

    merhabalar bende ardunio motor shield var l293 bunu bu uygulamada nasıl kullanabilirim jpeg olarak yada fritzing olarak açık bi şekilde varmı

  94. mustafa

    çok teşekkür ederim sezgin bey ellerinize emeğinize sağlık

  95. mustafa

    tüm kısmıyla programı göndermenizi istesem çok mu olurum ?
    fpga dersi alıyoruz ama hocamız ardunio ile proje verdi inanın hiç bilmiyorum ardunio ya da yeni yeni başladım çabalıyorum sizlerinde yardımıyla bu işin üstesinden gelirim inşallah…

  96. mustafa

    hallettim çok teşekkür ederim birşey daha sormak istiyorum engeli gördüğü zaman çarpmadan yavaşlasa ve o zaman yeni konum bulup oraya yönelse böyle birşey yapabilirmiyiz yardımcı olursanız sevinirim

    1. Sezgin GÜL

      Yavaşlamasını için motorları pwm sürmen gerekiyor. Yani hız kontrolü yapman gerekiyor. Bunun içinde sürücünün 1 ve 9 numaralı pinlerine analog veri göndermen gerekir. Örneğin analogdan 0 ile 255 arası değer gönderirsen hızını değiştirebilirsin. Aşağıdaki kod bloğunu tek motor için uygulayabilirsin.

      void yavas_git()
      {
      analogWrite(5, 180);
      analogWrite(4, LOW);
      digitalWrite(OnMotor_sag, LOW);
      digitalWrite(OnMotor_sol, LOW);
      digitalWrite(ArkaMotor_Geri, LOW);
      digitalWrite(ArkaMotor_ileri, HIGH);
      }
      yukardaki kod bloğunda ileri yavaş gitme fonksiyonunu tanımladık. Burada 5. ve 4.dijital pinler motor sürücünün 1. ve 9. pinlerine takarak hızını değiştirmeyi sağlarsın. 5. pine 180 değeri gönderip motoru yavaşlattık.

  97. mustafa

    ‘NewPing’ does not name a type hatası alıyorum bunu nasıl giderebilirim

    1. nuri

      Şöyle anlatayım hocam 12 ayrı sistem var.bu 12 sisteme iki tane 220 v girişi var.yanı her sisteme 2 tane 220v girişi var.motorların aktif oolması için sistemin girişine gelen 2 adet 220v girişinin olması gerekiyor.ben bir anlma ikaz sistemi yapmak istiyorum.girişte ki 220v da aksalik varsa sistem çalışmasın uyari versin gibi.motor bir ornekti bana 24 giriş 12 çıkış lazım bir nevi

      1. Sezgin GÜL

        Anladım. Arduino ile röle kart kullanıp gelen voltaj değerini analog okutup sistemi açıp kapatabilirsin . 24 giriş 12 çıkış sistemi araştır yine de ama sürücü kullansan da aynı şey olur. röle kullanacağından bir nevi giriş gibi düşünebilirsin.

        1. nuri

          Tskler hocam arastiyorum şuan.

  98. nuri

    Hocam şu L293D. Nin dc motorlara bağlantısını anlayamadım .fritzing bağlantısını biraz karışık olmuş.yardımcı olabilormisiniz

      1. nuri

        Tamam hocam TSK ederim L293D bağlantısını yaptım hata benden kkaynaklanıyormus . siz bir konu hakkında gorusunuzu rica edecektim.sayısal kapilarlada yapabilirim ama işi yazılıma dökmek istiyorum.(v) kapısı gibi diyecek olursak iki girişine voltaj gelirse bana çıkış verecek .ikisi girisede veya birine voltaj gelmezse çıkış vermeyecek.bu şekilde 12 motor kontrol etmek istiyorum sizce mmümkün mu tek veya iki arduino ile

        1. Sezgin GÜL

          Motor sürücüler kullanırsanız tek bir arduino ile kontrol edebilirsiniz. örneğin 4 dc motor süren karttan 3 tane alıp tek bir arduino ile toplamda 12 motor kontrol edebilirsiniz.

          1. nuri

            24 giriş 12 çıkış olacak bir anlama hocam
            Biraz araştırma yapıyorum ama tam.bir çözüm bulamadım.

  99. Alparslan

    NewPing.h hatasını nasıl düzelteceğiz acaba ?

  100. nuri

    merhaba hocam..

    oyuncak araba için yayınladığınız yazılımda bir hata alıyorum nedeni nedir acaba..

    oyuncak_araba_engel.ino:4:21: fatal error: NewPing.h: No such file or directory
    compilation terminated.
    Derleme sırasında hata oluştu.

  101. Emir Büyükyıldız

    Kodlarda işaretler &lt; şeklinde yazıyor. Düzeltebilir misiniz?

    1. Sezgin GÜL

      Eklentiden dolayı değişmiyor.Projenin altında dosyaları yükledim.indirebilirsiniz.

  102. nuri

    kardeş bende L298N motor sürücü var onla nasıl kontrol ederiz bağlantıları nasıl olcak

    1. Sezgin GÜL

      Datasheet ve örnek motor bağlantısı projeye eklendi.
      Birinci motor için in1 ve in2 aduino pinleri out 1 ve out 2 motor pinleri
      İkinci motara da in3 ve in4 arduino pinleri ve out3 ve out 4 diğer motor pini
      enable pinlere 5 v arduino pinine takabilirsin.diğer motor güç pinini bataryaya ve gnd bağlantılarınıda yaparak çalıştırabılırsın.

    2. nuri

      hocam bunu bağlayamadım
      resimdekinin aynısı
      robotiktak.com/wp-content/uploads/2014/10/1381.2.jpg

      1. Sezgin GÜL

        Sürücü üzerinde in1 in2 pinleri bir motor in3 in4 pinleri diğer motor pinidir.bu pinleri yazılımdaki motor pinleriyle eşleştireceksin.ena ve anb pinlerine 5v bağlı olsun.sürücü üzerndeki 12v yazan girişe pilin artı kısmını ve gnd ye eksi kısmını bağlayın

  103. bedevi

    burda ön tekerler sağ saol nasıl yapıor resimde 2 motor bağlamış sınız dönüşlerii nasıl yapıyor açıklarmısınız

    1. Sezgin GÜL

      Sol ve sağ motor dediğim robot kitler için geçerli.Onlardaki sistemde bir motor ileri diğer motor geriye dönerse robot kendi ekseninde döner.Oyuncak arabaların dönüş sisteminde dc motor bulunuyor.Yazılımda ön motor dediğim kısım dönüşler için arka motor ise ileri ve geri hareket içindir.İki sistem içinde yazılımlar eklendi.

      1. bedevi

        resimde sağ motor ön sol motor arkamı

        1. Sezgin GÜL

          Evet yazılımına bakarsanız ordan da görebilirsiniz.Resme takılmanıza gerek yok.

          1. bedevi

            tşkr 🙂