Arduino İle Kablosuz Robotik El Kontrol Projesi

75 27.559

Kendi Robotunu Yap projelerimizin bu bölümünde arduino ile xbee kablosuz haberleşme modülü üzerinden robotik el kontrolü yapacağız.Elimize eldiven takarak parmakların hareketini robotik elin parmaklarına aktarak eş zamanlı hareket ettireceğiz.

ÜRÜNÜ İNCELE

Verici devresi için kullanılan malzemeler:

  1. Elastik eldiven
  2. LilyPad Arduino
  3. XBee modül – kablosuz haberleşme
  4. XBee shield – XBee modülün bağlanısı için
  5. 5 Adet flex sensör
  6. 5 Adet 47 KΩ direnç
  7. 3 Adet 1.5 V pil (LilyPad 2.7 ile 5.5 V arasında çalışmaktadır.Bize 4.5 V yeterlidir.)
  8. LilyPad FTDI Adaptör

Alıcı Devresi için kullanılan malzemeler:

  1. Arduino Uno
  2. XBee modül
  3. 5 Adet servo motor (bu projede TowerPro SG90 kullanıldı.)
  4. Servo motor Shield (isteğe bağlı)
  5. XBee shield – XBee modülün bağlanısı için
  6. 9V pil

Elektronik Kısım:

Verici  Devresi:

Flex sensörler potansiyometre mantığıyla çalışırlar ve büküldüğünde direnç değerleri değişir.Fakat potansiyometreden daha kullanışlıdır.Flex sensörlerin negatif uçlarını arduinonun analog pinlerine ve direnç üzerinden gnd ye bağlanır.Pozitif uçlarını ise pilin artı ucuna bağlıyoruz.

XBee modülün tx pinini ardinonun rx pinine, rx pinini arduinonu tx pinine takıyoruz.Flex sensörleri aşağıdaki gibi eldivenin parmakları üzerine dikiniz.

Alıcı Devresi:

Robot kolun servo motorlarını arduino unonun dijital pinlerine takıyoruz.XBee modülünün de bağlantıların aynı şekilde yapıyoruz.Robotik elin 3d printer baskı dosyasını buradan indirebilirsiniz.

Robotik El 3d Printer

Yazılım Kısmı:

Eldivenin Yazılımı:

//Robimek Robotik Sistemler 2015
int ResThumb = A4; 
int ResIndex = A3; 
int ResMiddle = A2;
int ResAnnular = A1;
int ResPinky = A0;
 
int OpenedThumb =0; 
int OpenedIndex =0;
int OpenedMiddle =0;
int OpenedAnnular =0;
int OpenedPinky =0;
 
int ClosedThumb; 
int ClosedIndex; 
int ClosedMiddle; 
int ClosedAnnular; 
int ClosedPinky; 
 
int thumb =0; 
int index =0;
int middle =0;
int annular =0;
int pinky =0;
 
 
void setup()
{
 Serial.begin(9600); 
 
 pinMode(ResThumb, INPUT); 
 pinMode(ResIndex, INPUT);
 pinMode(ResMiddle, INPUT);
 pinMode(ResAnnular, INPUT);
 pinMode(ResPinky, INPUT);
 
 ClosedThumb = analogRead(ResThumb);
 ClosedIndex = analogRead(ResIndex); 
 ClosedMiddle = analogRead(ResMiddle); 
 ClosedAnnular = analogRead(ResAnnular);
 ClosedPinky = analogRead(ResPinky); 
}
 
void loop()
{
 thumb = analogRead(ResThumb); 
 index = analogRead(ResIndex); 
 middle = analogRead(ResMiddle); 
 annular = analogRead(ResAnnular);
 pinky = analogRead(ResPinky); 
 
 if(thumb > OpenedThumb) 
 OpenedThumb = thumb;
 if(index > OpenedIndex)
 OpenedIndex = index;
 if(middle > OpenedMiddle)
 OpenedMiddle = middle;
 if(annular > OpenedAnnular)
 OpenedAnnular = annular;
 if(pinky > OpenedPinky)
 OpenedPinky = pinky;
 
 if(thumb < ClosedThumb) 
 ClosedThumb = thumb;
 if(index < ClosedIndex)
 ClosedIndex = index;
 if(middle < ClosedMiddle)
 ClosedMiddle = middle;
 if(annular < ClosedAnnular)
 ClosedAnnular = annular;
 if(pinky < ClosedPinky)
 ClosedPinky = pinky;
 
 thumb = map(thumb ,ClosedThumb ,OpenedThumb ,0,180); 
 index = map(index ,ClosedIndex ,OpenedIndex ,0,180); 
 middle = map(middle ,ClosedMiddle ,OpenedMiddle ,0,180);
 annular = map(annular,ClosedAnnular,OpenedAnnular,0,180); 
 pinky = map(pinky ,ClosedPinky ,OpenedPinky ,0,180);
 
 Serial.write("<"); 
 Serial.write(thumb); 
 Serial.write(index); 
 Serial.write(middle); 
 Serial.write(annular);
 Serial.write(pinky);
 
 delay(30);
}

Robotik El Yazılımı:

//Robimek Robotik Sistemler
#include <Servo.h>
Servo ServoThumb, ServoIndex,
ServoMiddle, ServoAnnular, ServoPinky;
 
byte startPackage;
 
int AngThumb = 0;
int AngIndex = 0;
int AngMiddle = 0;
int AngAnnular = 0;
int AngPinky = 0;
 
void setup()
{
Serial.begin(9600);
 
ServoThumb.attach(9);
delay(300);
ServoIndex.attach(8);
delay(300);
ServoMiddle.attach(7);
delay(300);
ServoAnnular.attach(6);
delay(300);
ServoPinky.attach(5);
delay(300);
 
Serial.println("Ready to receive");
}
 
void loop()
{
if(Serial.available()) {
 
startPackage = Serial.read();
AngThumb = Serial.read();
AngIndex = Serial.read();
AngMiddle = Serial.read();
AngAnnular = Serial.read();
AngPinky = Serial.read();
 
if(startPackage == '<'){
 
if(AngThumb!=255)
ServoThumb.write(AngThumb);
 
if(AngIndex!=255)
ServoIndex.write(AngIndex);
if(AngMiddle!=255)
ServoMiddle.write(AngMiddle);
 
if(AngAnnular!=255)
ServoAnnular.write(AngAnnular);
 
if(AngPinky!=255)
ServoPinky.write(AngPinky);
}
}
delay(30);
}

Yazılımları da yükledikten sonra gerekli bağlantıları yaparak parmaklarımızın hareketini eş zamanlı robotik ele aktarabiliriz.

Kendi Robotunu Yap projelerimizin bu bölümünde kablosuz robotik el kontrolünü yaptık.Bir sonraki projede görüşmek üzere.

 

Bunlar da İlgini Çekebilir
Cevap bırakın

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

75 Yorum
  1. toprak

    hocam servo motor shiled olup olmaması neyi değiştirir

  2. Oğulcan Bulut

    Hocam lütfen bana bilgi veriniz ben sizin videoda yaptığınız gibi bir el yapmadım paylaşmış olduğunuz kod yaptığım elin rahat bir şekilde çalışmasını sağlarmı lütfen bilgi verin hocam

  3. Harun

    Hangi Xbee Modülleri Kullandınız?

  4. muhammet

    hangi xbee modülünü kullandınız acaba yardımcı olabilecek varsa sevinirim

  5. emin

    yardımcı olabilecek varmı

  6. Ramazan yasin kaya

    sezgin bey
    kullandığınız flex sensörlerr kaç cm olduğunu öğrenebilirmiyim.

  7. Ümeyir

    Hocam robot elin cıktısını aldık hangi vida ve somunları kullanıcaz bi bilgilendirirmisin

    1. Sezgin GÜL

      vida ve somuna gerek yok. baskılarda saplamalar mevcut. sadece eklem yerlerini birleştirmek için deliklerde çapına uygun ince vida veya tel kullanabilirsiniz . Ben ataç kullanmıştım. Projedeki thingiverse sitesinde yer alan parçalardan bilek kısmı ve servoların yatakları eksik. thingiverse proje linkinde açıklama kısmında ek parçalar için link mevcut.

  8. SERDAR

    öncelikle emeğinize sağlık ben meslek lisesinde öğretmenim arduino çalışıyoruz bu projeyi yapacaz hocam xbe yerine hc06 modülleri kullanabilirmiyiz kullanırsak kodlarda değişiklik yapacakmıyız.nasıl yapalım sagol hocam

    1. Sezgin GÜL

      kodlarda değişiklik yapmanıza gerek yok. fakat eldivende kullancağınız bluetooth modeli hc-05 olmalı ve bu modülü at komutları ile master moda ayarlamanız gerekir.Robot el kısmındaki hc-06 olması yeterli. ayrıca iki modülün de baudrate değerleri koddaki iletişim hızıyla aynı olmalı. onu da yine at komutları ile ayarlayabilirsiniz. at komutlarına buradaki projeden bakabilirsiniz. http://www.robimek.com/hc-05-ile-hc-06-bluetooth-modullerin-haberlesmesi/

  9. Bilal

    Merhaba hocam ben proje de protez el çizimi nasıl yapılır verdi hocamız sizde varsa atabilir misiniz

  10. RAMAZAN KÖKTEN

    Hocam dediklerinizi yaptım fakat yine olmadı mySerial kapattım yine denedim.
    //master code

    void setup()
    {

    Serial.begin(9600);
    }

    void loop()
    {
    int bas_parmak_sensor = analogRead(A0);
    int isaret_parmak_sensor = analogRead(A1);
    int orta_parmak_sensor = analogRead(A2);
    int yuzuk_parmak_sensor = analogRead(A3);
    int serce_parmak_sensor = analogRead(A4);

    int bas_parmak_aci = map(bas_parmak_sensor,945,835,0,180);
    int isaret_parmak_aci = map(isaret_parmak_sensor,930,810,0,180);
    int orta_parmak_aci = map(orta_parmak_sensor,927,820,0,180);
    int yuzuk_parmak_aci = map(yuzuk_parmak_sensor,930,860,0,180);
    int serce_parmak_aci= map(serce_parmak_sensor,932,835,0,180);

    if ( bas_parmak_aci180){ bas_parmak_aci = 180; }
    if ( isaret_parmak_aci180){ isaret_parmak_aci = 180; }
    if ( orta_parmak_aci180){ orta_parmak_aci = 180; }
    if ( yuzuk_parmak_aci180){ yuzuk_parmak_aci = 180; }
    if ( serce_parmak_aci180){ serce_parmak_aci = 180; }

    Serial.write(“<");
    Serial.write(bas_parmak_aci);
    Serial.write(isaret_parmak_aci);
    Serial.write(orta_parmak_aci);
    Serial.write(yuzuk_parmak_aci);
    Serial.write(serce_parmak_aci);
    delay(100);
    }
    ///////////////////////////////////////////////////
    //slave code
    #include
    Servo bas_parmak;
    Servo isaret_parmak;
    Servo orta_parmak;
    Servo yuzuk_parmak;
    Servo serce_parmak;
    byte startPackage;
    void setup() {

    Serial.begin(9600);
    bas_parmak.attach(2);
    isaret_parmak.attach(3);
    orta_parmak.attach(4);
    yuzuk_parmak.attach(5);
    serce_parmak.attach(6);
    }
    void loop() {
    if(Serial.available() > 0){
    startPackage = Serial.read();
    int bas= Serial.read();
    int isaret= Serial.read();
    int orta= Serial.read();
    int yuzuk= Serial.read();
    int serce= Serial.read();

    delay(30);
    }

    }
    BU İKİ KODU BÖYLE DÜZENLEDİM EN SON YİNE ATTIM BİR HAREKETLİLİK VAR HOCAM OLACAK AMA BİRŞEYLER EKSİK BULAMIYORUM EKSİĞİ. YARDIMA VESİLE OLURSANIZ SEVİNİRİM . ÇOK TEŞEKKÜRLER.

    1. Sezgin GÜL

      bluetooth modüllerin baudrate değerleri 9600 olduğundan emin olun. hc-05 fabrika ayarı 38400 sanırım. onu değiştirin. Ayrıca 9600 den yüksek baudrate değerini kullanın

      1. Ramazan KÖKTEN

        yaptım hocam 9600 ikiside

        1. Ramazan KÖKTEN

          38400 ayarladım yine olmadı

          1. Sezgin GÜL

            iki modülde aynı baudrate de ve iki kodda bu baudrate değerinde olmalıdır.

      2. Ramazan KÖKTEN

        Hocam oldu şükür tabi bu sırada 2 flex sensör bağlantısını bozdum robot parmağın birinin hareketini sağlayan bir yer kırıldı 🙂 ama sonu mutlu bitti yardımlarınız için teşekkür ediyorum tanısaydım sizi bir büyük pasta alırdım 🙂

        1. Sezgin GÜL

          rica ederim . düşünmen yeterli . pastanı almış varsayalım 🙂

        2. Resul

          Ramazan merhaba bizde projemizde robotik el yapıyoruz bunun hakkında bilgi alabilirmiyim senden. Bilgi verebilirmisin. resul.kndmr.05@hotmail.com bu benim mail adresim

  11. Ramazan KÖKTEN

    Hocam parmaklar abuk sabuk haraket ediyor . Flex sensörde ki bilgi sanırım karışık geliyor . Lütfen yardım ediniz tez yazıyorum .

    1. RAMAZAN

      //master code
      #include
      SoftwareSerial mySerial(7,8);

      void setup()
      {

      mySerial.begin(38400);
      Serial.begin(9600);
      }

      void loop()
      {
      int bas_parmak_sensor = analogRead(A0);
      int isaret_parmak_sensor = analogRead(A1);
      int orta_parmak_sensor = analogRead(A2);
      int yuzuk_parmak_sensor = analogRead(A3);
      int serce_parmak_sensor = analogRead(A4);

      int bas_parmak_aci = map(bas_parmak_sensor,945,835,0,180);
      int isaret_parmak_aci = map(isaret_parmak_sensor,930,810,0,180);
      int orta_parmak_aci = map(orta_parmak_sensor,927,820,0,180);
      int yuzuk_parmak_aci = map(yuzuk_parmak_sensor,930,860,0,180);
      int serce_parmak_aci= map(serce_parmak_sensor,932,835,0,180);

      if ( bas_parmak_aci180){ bas_parmak_aci = 180; }
      if ( isaret_parmak_aci180){ isaret_parmak_aci = 180; }
      if ( orta_parmak_aci180){ orta_parmak_aci = 180; }
      if ( yuzuk_parmak_aci180){ yuzuk_parmak_aci = 180; }
      if ( serce_parmak_aci180){ serce_parmak_aci = 180; }

      Serial.write(“<");
      Serial.write(bas_parmak_aci);
      Serial.write(isaret_parmak_aci);
      Serial.write(orta_parmak_aci);
      Serial.write(yuzuk_parmak_aci);
      Serial.write(serce_parmak_aci);
      delay(100);
      }
      ////////////////////////////////////////////
      //slave code
      #include
      #include
      SoftwareSerial mySerial(7,8);
      Servo bas_parmak;
      Servo isaret_parmak;
      Servo orta_parmak;
      Servo yuzuk_parmak;
      Servo serce_parmak;
      byte startPackage;
      void setup() {
      mySerial.begin(38400);
      Serial.begin(9600);
      bas_parmak.attach(2);
      isaret_parmak.attach(3);
      orta_parmak.attach(4);
      yuzuk_parmak.attach(5);
      serce_parmak.attach(6);
      }
      void loop() {
      if(Serial.available() > 0){
      startPackage = Serial.read();
      int bas= Serial.read();
      int isaret= Serial.read();
      int orta= Serial.read();
      int yuzuk= Serial.read();
      int serce= Serial.read();

      if(startPackage == ‘<'){

      if(bas!=255)
      bas_parmak.write(bas);
      if(isaret!=255)
      isaret_parmak.write(isaret);
      if(orta!=255)
      orta_parmak.write(orta);
      if(yuzuk!=255)
      yuzuk_parmak.write(yuzuk);
      if(serce!=255)
      serce_parmak.write(serce);
      }
      delay(30);
      }

      }
      HOCAM KODLARIM BUNLAR HC 05 MASTER HC 06 SLAVE
      hata mı var

      1. Sezgin GÜL

        Kodda software serialden port açmışsınız fakat verileri standart serial üzerinden gönderiyorsunuz. Yapmanız gereken bluetooth modülleri açtığınız portlara takın ve verileri gönderirken de bu port üzerinden gönderin. Koda göre örnek gönderi kodu şu:
        mySerial.write(bas_parmak_aci);
        Ayrıca bluetooth modüllerin baudrate değerleri koddaki değerle aynı olmalıdır.
        Son olarak servo motorları uygun gerilim akımla beslemeniz gerekiyor aksi halde beklenmedik hareketler yapmasına neden olur.

        1. Ramazan Kökten

          Teşekkür ediyorum Hocam . Deneyip size geri döneceğim .

  12. Ramazan KÖKTEN

    Hocam,selamün aleyküm öncelikle herşey için teşekkürler . Ben HC-05 ve HC 06 kullanarak yapıyorum kodları kopyalayıp yapıştırdım hc 05 modül master mod yaptım ve rx tx e tx rx e bağladım yani hiçbir sorun yok gibi görünüyor . ancak veriler gitmiyor hiçbir şey olmuyor çalıştırdığım da sistemi . sorun ne olabilir hiç bilmiyorum . 05531051480 telefon numaram . cevap verirseniz çok yardımcı olursunuz teşekkürler

  13. emre kaya

    merabalar hocam xbee shield in uzerindeki x bee modülü tanıtamadım eldiveni xctu ya tanıttım xbee shield v.1.1 uzerıne takılı xbee modülün baglantısı nasıl olucak yardımcı olursanız sevinirim.

  14. ARCHET

    Merhaba hocam. Bluetooth hc-05 modülde xbee modülden farklı bir durum olur mu? Yoksa aynı işlevi görür mü? 5 parmak aynı anda hareket ettirebilir miyiz bluetooth ile? Şimdiden teşekkürler

  15. tarsus haber

    Aslında çok güzel bir proje ama daha yeni olduğum için karışık geldi. Acaba bunu flex sensör kullanmadan ya da daha farklı bir yöntem ile de yapabilir miyiz?

  16. yusuf akgül

    Flex sensöre bir ton para vermenize hiç gerek yok kendiniz yapın çok daha güzel çalışıyor

  17. ENES

    Haberleşme tarafını HC05 ve HC06 ile nasıl yapabiliriz ?

  18. can

    hocam acil yardım ! tek bir flex sensör ve servoyla denemek istiyorum programı atıyorum fakat hic bir tepki alamıyorum flex i a0 a baglıyorum servoyu 5 nci pine

  19. fatih

    hc-05 kullanıyorum 2 tane biri master biri slave rx tx nerelere baglanması gerekiyo bu kodlar için yazarmısınız

    1. Sezgin GÜL

      aynı kodu kullanacaksınız. tx rx standart iletişim pinlerine takılacak.

  20. murat

    hc 05 baglantı şemasını lütfen paylasın genel olarakta zaten foruma gelenler hc-05 sormuş yardımcı olursanız sevinirim

    1. Sezgin GÜL

      standart iletişim pinlerine bağlayacaksınız. rx tx e tx rx e vcc ve gnd leri de bağlayın tamamdır

  21. İbrahim

    Mrb Hc-05 hc-05 modüllerin iletişimi içinde aynı kodu kullanabilirmiyiz

    1. ibrahim

      cevap verebilirmisiz lütfen veya hc 05 ile olan kodu paylasırmısınız

      1. Sezgin GÜL

        evet kullanabilirsiniz.

        1. İpek

          Merhabalar emg kontrollu protez uzuv kol adli projemizi yaptirabilicegimiz birilerini ariyorum.

          1. Sezgin GÜL

            ipek hanım mail gönderdim.

  22. berkay

    Merhaba. Xbee haricinde bu haberleşme için Nrf2401L kablosuz haberleşme modülü kullanabilirmiyiz malum xbee ler çok pahalı olduğundan

  23. murat

    abi kablolu için kod buldum başka bir siteden buldum
    int inch,
    int index,
    int average;
    diye biyer var hata verio yuklerken ne yapmalıyım

  24. murat

    abi flex 2.2 veya 4.5 olursa kodlarda farklılık olurmu

    1. Sezgin GÜL

      Değişiklik yapmayabilirsin. yine çalışılır. fakat bükme oranlarında değişiklik olur. yani bir flex yarı bükünce 180 derece tamamlanır diğer flex tam bükünce 180 dereceyi tamamlar. Bu aralığı ayarlamak istersen şöyle yap. 4.5″ flex de direnç aralığı 10 kΩ 20 kΩ iken 2.2″ flex de ise 25kΩ 100kΩ arasında değişiyor. Açık ve kapalı haldeki değerleri ölç. bunları sınır referansı olarak map komutuna aktar.

  25. murat

    abi kablolu için bu kod olurmu
    #include
    Servo myservo_pollice;
    Servo myservo_indice;
    Servo myservo_medio;
    Servo myservo_anulare;
    Servo myservo_mignolo;
    int pollice;
    int indice;
    int medio;
    int anulare;
    int mignolo;
    void setup() {
    Serial.begin(9600);
    myservo_pollice.attach(9);
    myservo_indice.attach(10);
    myservo_medio.attach(11);
    myservo_anulare.attach(12);
    myservo_mignolo.attach(13);
    }
    void loop() {
    pollice = analogRead(A0);
    indice = analogRead(A1);
    medio = analogRead(A2);
    anulare = analogRead(A3);
    mignolo = analogRead(A4);
    Serial.println(mignolo);
    pollice = map(pollice, 20, 40, 0, 179);
    indice = map(indice, 20, 40, 0, 179);
    medio = map(medio, 20, 40, 0, 179);
    anulare = map(anulare, 20, 40, 0, 179);
    mignolo = map(mignolo, 20, 40, 0, 179);
    myservo_pollice.write(pollice);
    myservo_indice.write(indice);
    myservo_medio.write(medio);
    myservo_anulare.write(anulare);
    myservo_mignolo.write(mignolo);
    delay(150);
    }

    1. Sezgin GÜL

      olur

  26. murat

    abi başka servo kullana bilir miyiz kullanamazsak hangi özellikteki servo motorlar olmalı

  27. murat

    abi xbee shield var malzeme listesinde ama fotoğraflarda bağlanmamış

    1. Sezgin GÜL

      fotoğrafta normal modül ile bağlanmış halini attım. shield ile de aynı bağlantıları yapabilirsiniz. shield daha kolay bağlantı açısından

    2. murat

      abi xbee bir sürü model var fark edermi iki tane alsak oluyormu

    3. murat

      abi birde xbee olayda en karışık nokta ayarlarını nasıl yapıcaz gösterirmisin

      1. Sezgin GÜL

        aynı iletişim protokolü ile haberleşen modüller olması gerekir. modülü at komutları ile programlayacaksınız. bu ayarlama da modüller birbirine tanıtılmalıdır. ağ adresleri aynı tanımda olmalıdır. ve baud rate değerleri gibi 7 tane at komutu ile modüllerin ayarı yapılır. xbee at komutları diye araştırma yaparsanız bulursunuz. Kısa zaman içinde ben de paylaşmaya çalışacağım.

    4. murat

      abi hiç xbee karıştırmasak zbeye taktığımız kabloları birbirine bağlasak ne olur

      1. murat

        zbeye derken yanlış yazdım xbee

        1. Sezgin GÜL

          anlamadım ? ayrıntılı yazar mısınız.

          1. murat

            abi öncelikle çok teşşekkür ediyorum çok iyi ilgileniyorsun yorumlarla.
            Diyorum ki mesela 1.pine taktık güç kablosunu xbee bunu diğerine gönderiyor biz tekrar 1.pinden alıyoruz hiç xbee yokmuş gibi diyorum

          2. Sezgin GÜL

            o zaman sistem kablosuz olmaz ki . kablolu yaptığınızda da iki arduino kullanmanız gereksiz. olur zaten bu kodla direk kablolu yapamazsınız. modüller birbirine bağlandığında sistem aktif oluyor.

          3. murat

            çok sağolun soruma cevap olmadı ama araştırıp buldum 🙂

  28. can

    merhaba bu projeyi hc-05 ile yapabilir miyiz? eğer oluyorsa eklenecek kod var mıdır?

    1. Sezgin GÜL

      yapabilirsiniz iki bluetooth dan birini master diğerini slave olarak ayarlayın. Nasıl ayarlandığına buradan bakabilirsiniz. http://www.robimek.com/hc-05-ile-hc-06-bluetooth-modullerin-haberlesmesi/

  29. Ümit

    İyi günler, bu projede NRF24L01 kullanabilir miyiz?

    1. Sezgin GÜL

      tabiki de kullanabilirsiniz.

  30. Muhammed

    Merhaba.Ben bu projeyi yapmak istiyorum ancak malzemeleri sipariş etmek istedim ve xbee diye aratınca birçok ürün çıktı karşıma.Sizin kullandığınız malzemelerin isimlerini, onları kolayca bulabileceğim bir şekilde yazabilirmisiniz.Mesela modeli gibi bilgileride paylaşırmısınız.Arduinoda yeniyim kusura bakmayın.İyi çalışmalar.

    1. Sezgin GÜL

      herhangi xbee modül alabilirsin fakat alırken aynı series modül alman ve kullanılan protokoller aynı olmalıdır. At komutlarından da haberleşme frekansları aynı yapman lazım. Robotistanda xbee modül ürin sayfasında tüm modellerin bilgileri var. Flex 2.2 inç olanlardan kullanabilirsin. Tower Pro MG996 RC Servo Motor tavsiye ederim. pil olarak lipo kullanabilirsin. 6v akımını da servo motorların akımına göre seç. Ürünlerin linklerini paylaşamıyorum malesef.

  31. Emircan

    Hocam yazılımın kütüphanesi atarmisiniz lutfen

    1. Sezgin GÜL

      Alıcı kısımda servo kütühanesi gerekiyor buradan indir >> http://www.robimek.com/wp-content/uploads/Servo.rar

  32. halit enes

    birde devreyi ve kodları arduino lara attım ama xbee ler haberlesme saglamıyor yani daha dogrusu calışmıyor xbee lerin pan ıd lerini ve baurd ratelerini ayarladım normalde kendi aralarında haberleşiyorlar
    sıkıntı nerde olablir ?

    1. Sezgin GÜL

      alıcı kısımdaki if(startPackage == ‘&lt;’) buradaki satırın yerine if(startPackage == ‘<') bunu yaz siteye aktarırken < işareti değişmiş

  33. fatih balaban

    kodların byte startpackage kısmını biraz daha ayrıntılı açıklarmısınız.

    1. Sezgin GÜL

      Serialden veri gelip gelmeme durumunu kontrol ediyor. Byte veri türünden değerleri alıyor

  34. enes

    Abi bu kodun hepsini birden kopyala yapıstıt yapıcaz

  35. halit enes

    selamun aleykum hocam ben xbee shield kullandım ama xbee shieldi takdıgımda xbee nin hangi pininin
    hangi pinlerine baglı oldugunu anlayamadım datasheetine baktım ama yardımcı olabilir misinz?

    1. Sezgin GÜL

      2. pin rx 3. pin tx pinine bağla.1. pini 3.3v a 10.pinide gnd ye bağla

  36. Ramazan Akdağ

    Birde Xbee yerine esp8266 ile yapmayı düşünüyorum bununla bir sıkıntı olur mu ?

    1. Sezgin GÜL

      xbee modülünü xctu programı ile ayarlarını yapman gerekiyor. Birisi verici diğeri de alıcı konumunda olmalı .Ayrıca baudrate değerleri ve maksimum haberleşme mesafelerini de bu program ile yapman gerekiyor. Wifi modülü ile kontrol etmen için arayüz yapman gerekir.

  37. Ramazan Akdağ

    Hocam Xbeeler arasındaki iletişim kısmı hakkında biraz daha detaylı bilgi verme şansın varmı ? Mesela birisi verici durumunda olup diğeri onunlamı iletişim kuruyor gibi