Sesli komutlarla kontrol edilen robot (voice control robot)

77 1.409

Bu projemizde robotumuz söylenen komutlara göre hareket etmesi amaçlanmıştır.Android telefondan söylenen komut bluetooth ile arduinoya aktarılarak algoritmada karşılığı olan fonksiyonu gerçekleştirir.

Projede kullanılan komponentler:

  1. Arduino mega
  2. L293b motor sürücü
  3. Robot kit
  4. HC-SR04 Ultrasonik Mesafe Sensörü
  5. RGB led
  6. HC-06 Bluetooth modul
  7. Andoid uygulama

Devre şeması:

 

// SESLİ KOMUTLA ROBOT KONTROL PROJESİ BY ROBİMEK
 
#include <Servo.h>// servo motor kütüphanesi
#include <NewPing.h>//ultrasonik sensör kütüphanesi
String voice;
//motor pinleri
#define SolMotorileri 6
#define SolMotorGeri 5
#define SagMotorileri 8
#define SagMotorGeri 9
#define led 53
#define ledmavi 51
#define ledyesil 49
#define ledkirmizi 45
#define ledvcc 47
 
//sensör pinleri
#define USTrigger 3
#define USEcho 2
#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()
{
Serial.begin(9600); //iletişim ayarı
//motor çıkışları
pinMode(SolMotorileri, OUTPUT);
pinMode(SolMotorGeri, OUTPUT);
pinMode(SagMotorileri, OUTPUT);
pinMode(SagMotorGeri, OUTPUT);
pinMode(led, OUTPUT);
pinMode(ledkirmizi, OUTPUT);
pinMode(ledmavi, OUTPUT);
pinMode(ledyesil, OUTPUT);
pinMode(ledvcc, OUTPUT);
 
servo.attach(4); //servo pin tanımı
}
// sonsuz döngü
void loop() {
while (Serial.available()){ //Okumak için kullanılabilir bayt olup olmadığını kontrol et
delay(10); //10 milisaniye bekle
char c = Serial.read(); //Seri okuma
if (c == '#') {break;} // # tespit edildiğinde döngüden çık
voice += c; //Ses = ses + c Steno
}
if (voice.length() > 0) {
Serial.println(voice);
 
if(voice == "*ileri"||voice == "*ileri git") {ileri();}
else if(voice == "*geri"||voice == "*geri gel"){geri();}
else if(voice == "*sağa dön"||voice == "*sağ") {sag();}
else if(voice == "*sola dön"||voice == "*sol") {sol();}
else if(voice == "*dur"||voice == "*arabayı durdur") {dur();}
else if(voice == "*sol ileri"){sol(); delay(100); ileri();}
else if(voice == "*sağ ileri"){sag(); delay(100); ileri();}
else if(voice == "*sol geri"){sol(); delay(100); geri();}
else if(voice == "*sag geri"){sag(); delay(100); geri();}
else if(voice == "*ileri git dur"||voice == "*biraz ileri git") {ileri(); delay(500); dur();}
else if(voice == "*geri gel dur"||voice == "*biraz geri gel") {geri(); delay(500); dur();}
else if(voice == "*sola dön dur"||voice == "*biraz sola dön") {sol(); delay(500); dur();}
else if(voice == "*sağa dön dur"||voice == "*biraz sağa dön") {sag(); delay(500); dur();}
else if(voice == "*sola bak"||voice == "*soluna bak") {solabak();}
else if(voice == "*sağa bak"||voice == "*sağına bak") {sagabak();}
else if(voice == "*önüne bak"||voice == "*öne bak") {onunebak();}
else if(voice == "*ışığı aç"||voice == "*ledi yak") {ledyak();}
else if(voice == "*ışığı kapat"||voice == "*ledi söndür") {digitalWrite(51,HIGH);
 digitalWrite(49,HIGH);
 digitalWrite(45,HIGH); digitalWrite(47,LOW);}
else if(voice == "*kırmızı") {digitalWrite(45,LOW); digitalWrite(49,HIGH); 
digitalWrite(51,HIGH); digitalWrite(47,HIGH);}
else if(voice == "*yeşil") {digitalWrite(49,LOW); digitalWrite(45,HIGH);
 digitalWrite(51,HIGH); digitalWrite(47,HIGH); }
else if(voice == "*mavi") {digitalWrite(51,LOW); digitalWrite(49,HIGH);
 digitalWrite(45,HIGH); digitalWrite(47,HIGH);}
else if(voice == "*mor") {digitalWrite(51,LOW); digitalWrite(49,HIGH); 
digitalWrite(45,LOW); digitalWrite(47,HIGH);}
else if(voice == "*beyaz") {digitalWrite(51,LOW); digitalWrite(49,LOW); 
digitalWrite(45,LOW); digitalWrite(47,HIGH);}
else if(voice == "*engel"||voice == "*engel algıla"){engel();}
 
voice="";}}
 
// 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 sag()
{
digitalWrite(SolMotorileri, LOW);
digitalWrite(SolMotorGeri, HIGH);
digitalWrite(SagMotorGeri, LOW);
digitalWrite(SagMotorileri, HIGH);
}
 
void sol()
{
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);
}
void sagabak()
{
servo.write(0);
delay(100);
}
void solabak()
{
servo.write(180);
delay(100);
}
void onunebak()
{
servo.write(90);
delay(100);
}
void ledyak()
{
digitalWrite(53,HIGH);
}
void ledkapat()
{
digitalWrite(53,LOW);
}
// sensörün mesafe ölçümü
void sensor_olcum()
{
delay(50);
zaman = sonar.ping();
uzaklik = zaman / US_ROUNDTRIP_CM;
}
void engel()
{
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)
{
sol();
delay(500);
ileri();
}
else if(sol_uzaklik < sag_uzaklik)
{
sag();
delay(500);
ileri();
}
else
{
geri();
}
}
}

Android uygulamayı buradan indirin. Bluetooth modülle eşleştirme yapıp bağlanın. Uygulama google tabanını kullandığı için internete bağlı olmanız gerekir. Bağlantıyı kurduktan sonra mikrofon simgesine dokunun ve konuşun. Robotunuz söylediğiniz komuta göre işlevini yapacaktır.

Bunları da beğenebilirsin

Cevap bırakın

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

77 Yorum

  1. emre

    merhaba hocam ben bu devrenin aynısını unoda yaptım led leri sildim bir tek kodları doğrularken herhangi bir sıkıntı olmuyor bluetooth la telefonu eşleştiriyorum interneti açıyorum komutları söylüyorum ama herhangi bir hareket olmuyor l293d den olabilir diye düşündüm yenisini aldım yine aynı ayrıca devrede hiç bir şey tepki vermiyor ama çalışıyorlar yardımcı olabilir misiniz hocam

  2. Emrah

    merhaba. ben yapacağım proje sadece ses komutu ile ileri geri sağa sola gitmesi bunun için yukarda verilen kodlarda sadece o kısmı alınca çalışırmı acaba? ve arduino mega yerine unu kullanırsak olur mu ?

    1. İrfan

      Çalışır pin yeterse uno kullanabilirsin

  3. irfan

    arkadaşlar robot engel algılamıyor bilen biri varsa el atabilir mi acaba ? teşekkürler.

  4. niyazi

    Arduino:1.6.7 (Windows 7), Kart:”Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)”

    C:\Users\hp\Documents\Arduino\wfsdcvbn\wfsdcvbn.ino:2:55: fatal error: NewPing.h: No such file or directory

    #include //ultrasonik sensör kütüphanesi

    ^

    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ş.

    hocam bu hatayı nasıl düzeltebilirim?

  5. İfan yolcu

    Hocam android program ios için olanı varmı ?teşekkürler

  6. tuncay

    merhaba projenizi inceledim ve aynı projeyi yapıcam ama yapmak istedigim projede beni sürekli dinleyen bir uygulama istiyorum yani ben susarsam komut gönderecek ve bana anlamadım diye ger dönüş yapmaycak bir uygulamaya ihtiyacım var. eger yardımcı olursanız sevinirim tabi yardım edemeseniz de yine de çok teşekkür ederim

  7. Çağrı ÇAĞMAN

    hocam sadece sesle kapıyı açıp kapatacak şekilde bir sistemim var ama kod sıkıntısı yaşıyorum kapıyı aç komutunu sesle gönderdiğimde kapıyı 90 derece açacak şekilde nasıl yapabilirim bana yardımcı olabilir misiniz.

  8. Furkan ARAR

    Hocam merhaba, ardunio ya yüklediğimiz zaman kütüphane istediği için yüklenmiyor.Kütüphaneyi nasıl bulabilirim.

  9. emir altıntop

    HOCAM projeden bende yapmak istiyorum ama az zamanım var bu işlerden pekde anlamıyorum acaba çok zamanınızı aldımı ve ekipmanların ücreti ne kadar ?
    saygılar

  10. sami

    merhaba,engel fonksiyonunda bir sorun var return engel(); yazdığımda çalışıyor ama bundan sonra başka komut veremiyorum

  11. berkan özkan

    bunu arduino uno ile yapabilir miyiz ?

  12. Ali Furkan

    Hocam engel algıla komutunu söylediğim zaman robota çalışmaya başlıyor ama daha sonra verdiğim komutların hiçbiri çalışmıyor mesela dur dediğimde durmuyor sadece engele göre hareket ediyor bu neden olabilir acaba?

  13. yunus akcan

    hocam merhaba lipo batarya yerine 9v pil kullansak olurmu bide arduino megaya hiç+ uç gitmemiş bi yanlışlık olabilirmi şimdididen teşekkürler

    1. Sezgin GÜL

      9v pil yeterli olmaz. çalıştırır fakat çok erken biter. devre şemasında lipo pil sadece motorların beslemesi için kullanıldı. arduinoyu 9v pille ayrı besle.

  14. UĞUR KARADAŞ

    hocam kolay gelsin ben devre şemasının tam açık bir gösterim hali var mı bu şema biraz kafamı karıştırdı.
    Yardımcı olursanız çok sevinirim.Şimdiden teşekkürler.

  15. Ali Furkan

    Sezgin hocam bir sorum daha olacak ben bunu 4 DC motor kullnarak yapmak istiyorum programda ne gibi bi değişiklik yapmam gerekir veya devrede?

    1. Sezgin GÜL

      4 tekerlekli robot kite yapacaksın sanırım. kodda değişiklik yapmana gerek yok. sol taraftaki motorları birbirine paralel bağla aynı şekilde sağ taraftaki motorları birbirlerine bağla. yani sol taraf bir hareket edecek aynı şekilde sağ taraf bir hareket edecektir.

      1. Ali Furkan

        hocam teşekkürler. bir sorum daha olacaktı ben rgb led kullandığımda ışığı aç dediğimde rgb led yanmıyor fakat kırmızı dediğimde kırmızı yanıyor veya ışığı kapat dediğimde ışığı kapatıyor.

        1. Sezgin GÜL

          ışığı aç komutunda ledyak() fonksiyon çalışıyor. o fonksiyonda da 53.pin high oluyor. yani rgb led o pine tanımlı olmadığı için yanmıyor. o pine tekli led takmıştım.

  16. murat

    Hocam tamam buldum projeyi size bir sorum olacaktı bu projede kullanacağımız pi kaç volt olsun ve yaklaşık bir saat çalışması için lipo pilimiz kaç mA olsun

  17. murat

    Hocam breadboard üzerinde ivme sensörü ve iki tane servo motorla kol şeklinde basit bir şey yapılmıştı breadboardu ne tarafı çevirirsek kol aynı yöne dönüyordu

  18. Ali Furkan

    hocam 2000 mah yerine 3000 mah lık şarjlı pil kullansam bi sıkıntı olur mu acaba ?

    1. Sezgin GÜL

      bu projedeki gibi yapacaksan 3000 mah gereksiz. 1050 mah yeterli olur

  19. Murat

    Hocam sitenizde ivme sensörü ile yapılmış bord üzerine kurulmuş taklitçi robot vardı onu bulamadım kaldırdınız mı acaba basit bir şeydi yardımcı olursanız onu yapmak istiyorum

  20. Ali Furkan

    Hocam kullanacağımız batarya lipo batarya mı acaba ?

    1. Sezgin GÜL

      fark etmez istediğini kullan. lipo olursa daha uzun süre dayanır.

  21. Yasin

    Hocam bu malzemelerin hepsini alabileceğim bir link verebilir misiniz?
    Birde yapımı hakkında videosu falan yok mu acaba?
    Okuldaki hocam benden büyük bir proje istedi bunu yapacağım bilgim az çok var yalnız malzemeleri türkiyeden temin etmem gerekiyor bir site tavsiye ederseniz birde nasıl yapacağıma dair bir kaynak verirseniz çok dua ederim size…

    1. Sezgin GÜL

      robotistan, direnç net gibi yerlerden alabilirsin. yapım videosu mevcut değil. takıldığın yerlerde sorabilirsin.

      1. Yasin

        Sezgin hocam peki direnç gerekli mi? gerekliyse kaç adet?
        jumper kablodan kaç tane gerekli?
        malzemelerin hepsini sipariş verdim başlayacağım da bunlar hakkında bilgi almak istiyorum.

        1. Sezgin GÜL

          bir set jumper kablo yeterli. led kullanırsan direnç alabilirsin.

          1. Yasin

            Hocam skype adresiniz var mı acaba?
            Ürünler elime ulaştı sizinle bu konu hakkında konuşmak istiyorum lütfen yardım edin?

  22. remzi

    son sorum 🙂
    genelde voıd setup ve voıd loop döngusunun ne oldugunu bılıyorum.
    ama kodalra bakınca voıd ileri () voıd led yak() gbi ifadeler kullanılmıs hangı amacla akılıma gelen ılk sey
    istenıldıgı zaman devreye girmesidir öle midir yardımcı olur sanız cok sevinirim.

    1. Sezgin GÜL

      öyle denebilir. koşullara göre tanımladığın olayı çağırmadır.

  23. remzi

    servo motor yerine dc motor kullansam kodlarda herhngı bir degısıklık yapmama gerek var mı?
    ayrıca ledi yakmak istemezsem ledle ılglı kısımları sılmem yeterlı olacak mıdır ….
    tesekurler.

    1. Sezgin GÜL

      dc motor zamanlama ile kontrol edeceğinden her dönüşte aynı yol almayabilir. yani voltaj ve akım değişkeni farklı olduğunda bu sorun olabilir. sola ve sağa bak fonksiyonlarında servo kontrolünü silip dc motor kontrolünü eklemen gerek. onu da diğer fonksiyonlardaki dc motor kontrolü gibi yapabilirsin. Led istemiyorsan lede ait fonksiyonları ve pinlerini silmen yeterlidir.

  24. Serdar Taneri

    Hocam tekrar merhaba “return” komutunu bir turlu koyacagım yeri bulamadım, hep hatalar alıyorum musaıt zamanınızda tam yerını verırsenız sevınırım

    1. Sezgin GÜL

      void engel() tanımlı algoritma var onun içine en alt kısıma return engel(); bunu yaz

      1. ümit

        bu robotun aynısından yaptım her şey çalışıyor lakin engel algıla dediğimde engele geldiğinde alğılamıyordu sizin return engel(); komutunu yaptım alğılıyor lakin bu seferde diğer komutlar işkemiyor

  25. Serdar Taneri

    Merhaba hocam kodları UNO kullarak karta yükledim test etmek için aşağıdaki satırları değiştirdim.
    Ama daha Ledi bile yakamadım, şu an servo , motor ve motor sürücü bağlı değil ama bundan yaparmı ?
    Serial monitör ile kontrol ettiğimde Arduino şu şekilde algılıyor sesi , sorunum karakter sorunumu ?
    Eğer bundan ise nasıl yol almam gerekir.

    Teşekkürler

    Serial monitor : i.hizliresim.com/nLpnZM.jpg

    #define led 7

    void ledyak()
    {
    digitalWrite(7,HIGH);
    }
    void ledkapat()
    {
    digitalWrite(7,LOW);

    1. Sezgin GÜL

      serialden test ederken komutların başındaki * karakterini silip o o şekilde kodu yükle ve serialden komut gönder. Ama telefondan konuşarak kontrol edeceksen * karakterlerini tekrar eklemen gerekiyor

      1. Serdar Taneri

        Hocam tekrar merhaba şuan ‘engel algıla’ haric tum komutlar calısıyor. Linkte kullandıgım koda bakabilirsiniz. Engel kısmında ileri gitmeye baslıyor ama sensor engel algılamıyor servo donmuyor, tum baglantıları ve kabloları bircok kez denedim ama malesef calıstıramadım.

        Siz ‘engel” kısmını denemişmiydiniz?

        Elinize ve emeğinize saglık , paylasım ve yardımınız icin.

        1. Serdar Taneri

          drive.google.com/file/d/0B56DTKrX77F9MFFIVUlhRmJQbFU/view?usp=sharing

          1. Sezgin GÜL

            engel fonksiyonunun altına return yazarak döngüyü tekrarlatın

  26. meltem

    hocam servo ve ultrasonik sensörlerin bağlantısı hakkında biraz detay verebilir misiniz?

    1. Sezgin GÜL

      servo motor sinyal pini 4. dijital pine takılacak artı ucu 5v eksi ise gnd ye takın. ultrosonik sensör ise üzerinde trig ve echo pini yazar trigger pini 3. dijital pine echo pini ise 2. dijital pine takın artı ucu 5v eksi ucu ise gnd ye takın.

  27. Sezgin GÜL

    pin yapısında fark yok fakat b serisi 2 ampere kadar akıma dayanırken d serisi 1.2 ampere kadar dayanmaktadır. Sizdeki büyük ihtimalle adafruit motor shield olabilir.

    1. rejva

      tekrar rahatsız edıyorum k.bkmayın mega yerine uno kullansak olur mu

  28. rejva

    acaba devre semasını daha ayrıntılı şekilde paylasma şansımız var mı?

      1. rejva

        videoyu izleidgimde devra şemeasındn daha fazla kablo var ve robot kit iki katlı arada ne oldugunu kabloların nereye gittiğini merak ettim led koymussunuz ben sola dön dedıgımde sol led yanıp donmesını ıstıyorum ve rbg ledleri bulunmuyomus onun yerıne ne kullanabılırım

        1. Sezgin GÜL

          Kitin arasında batarya var ve devre şemasıyla aynı. Sadece rgb led videoda yok. Onu da devre şemasında gösterdim. Normal kullanabilirsiniz. Sola dön fonksiyonunun içine ledyak fonksiyonu ekleyerek aynı anda ledi de yakabilirsiniz.

          1. rejva

            kusura bakmayın bsy de sormak ıstıyorum l293d ile l293b arasında bı fark var mı motor surucu mu yoksa entegremı kullanalım ben cok farklı bsy aldım da galıba ustunde 2 tane motor var 3 entegre var da

  29. mert

    Tamamdır. Çok teşekkürler yardımınız için.

  30. Sezgin GÜL

    char c = BT.read(); fonksiyonundan sonra bu fonksiyonu yaz >> if (readvoice == ‘#’) {break;}

    1. mert

      Teşekkürler yinede char c = BT.read(); fonksiyonundan sonra if (readvoice == ‘#’) {break;} yazdım ama olmadı.Kodun son hali link:
      app.box.com/s/f07l7ebqp599rk1e68gzcuiasgu019ct

      1. Sezgin GÜL

        return; fonksiyonunu tanımlanan fonksiyonların altına yazıp tekrar dene . Benim robotta öyle sorun yoktu. Projedeki yazılıma bakıp tekrar dene
        Ayrıca sensör ölçüm kodlarını da tanımlı fonksiyonların içinde hesaplattır.

        1. mert

          Ses Komutlarının yanına yazdım başka nereye yazabilirim bilmiyorum hangi fonksiyona yazmam gerekir, konuya çok hakim değilim.Şimdiden teşekkürler.

          1. Sezgin GÜL

            Ses komutlarının olduğu yerden sil yani loop içine yazma. Tanımladığın parça fonksiyonların içine yaz

  31. mert

    Merhaba Benim bir sorum olacak. Ben buna benzer bir proje yaptım ama kodlamada bir sıkıntım var. Hem Bluetooth hem de engel algılayan robot yapmak istiyorum ama 2 sini birden yapamıyorum. Yazdığım kodda robota bir command gönderdiğimde, önceki command ın yanına yazıyor Serial portta. Yani resetleyemiyorum.Bunu nasıl halledebilirim?Şimdiden teşekkürler.Yazdığım kodun linki:
    app.box.com/s/f07l7ebqp599rk1e68gzcuiasgu019ct

    1. Sezgin GÜL

      komut tanımlarının en altına bunu ekle readvoice = “”; . Yazılımda engel algılama fonksiyonları while(BT.available()) fonksiyonun dışında yani bluetootht a bağlı iken engel komutları dışta kaldığı için çalışmıyor. O kodları while(BT.available()) fonksiyonunun içine yazmalısın.

      1. mert

        Dediğinizi yaptım ama ben komut gönderdikten sonra engel sensörleri çalışmıyor sadece komut gönderir göndermez çalışıyor.Ama ben sürekli çalışmasını istiyorum.Bunu nasıl yapabilirim.Yani ben komut gönderdiğimde o komut bir sonraki komuta kadar geçerli olmasını istiyorum çünkü o eklediğim readvoice=””; hemen reset atıyor ve komutu siliyor ve o komutun döngülerini çalıştırmıyor bunu nasıl yapabilirim.Son yaptığım kod link:
        app.box.com/s/f07l7ebqp599rk1e68gzcuiasgu019ct

        1. Sezgin GÜL

          readvoice=””; fonksiyonunu dışarıda yazmışsın. readvoice=””; ifadesini if(readvoice.length()>0) ifadesinin içine yaz. Engel algılamasında ise komutların altına return; fonksiyonunu ekle.Algoritmayı döndürecektir.

          1. mert

            Teşekkürler yardımınız için birşey daha soracağım ben komut gönderdiğimde istediğim komut başlıyor ama bir daha gönderdiğimde eski komutu sadece siliyor ve sonra bir daha komut gönderiyorum o zaman o komut çalışıyor. Yani yeni komutla reset atıyor sonra bir daha komut verince çalıştırıyor. Peki bunu direk eski komutun yerine yeni komutu direk nasıl çalıştırabilirim. Şimdiden teşekkürler.

  32. cansu

    Hocam merhabalar benim de size bir sorum olacaktı.Bende bi proje ile ugrasıyorum raspberry ile yapıcam . proje sesli olarak robot kontrolu yapmak.Sesli veri tabanını nasıl olusturabılırım.Yardımcı olabılır misiniz? Tesekkurler sımdıden…

    1. Sezgin GÜL

      Merhaba Cansu,
      Ses veri tabanı için buradan bakabilirsin blog.oscarliang.net/raspberry-pi-voice-recognition-works-like-siri/

  33. rejva

    ben de böyle bir proje yapmayı düşünüyorumda hangi dilde yazılmıs acaba arduino bu yoksa c dilinde mi bide telefona bağlarken her hangi bir işlem yapmamız gerekiyor mu acaba ?

    1. Sezgin GÜL

      Arduino programı ile yani c++ dili. Telefona bluetooth ile bağlanıyor. Programı kullanırken internetinizin açık olması gerekiyor. Çünkü program google ın sesi yazıya dönüştürme sistemini kullanıyor.

  34. Enes

    Hocam Android telefondan söylediğimiz komutları algılama işlemini nasıl yapıyorsunuz?
    Takıldığım yer burası.

    1. Sezgin GÜL

      Android programı “google’ın sesi yazıya çevirme ” uygulaması tabanıyla gerçekleştiriyor.Yani uygulama internete bağlı iken çalışmaktadır.Bu sayede google çeviri yapıyor.

      1. Recep Soysal

        Hocam şimdi ben proje yapacam ve bu çalışmanın malzemelerini ve programını satın almak istesem nasıl iletişime geçerim sizinle ve maliyeti ne kadar olur aceba numaranızı verirseniz daha iyi iletişim kurabiliriz.
        Saygılarımla

        1. Sezgin GÜL

          Program satın almak derken? Projede yazılımı var.Yani ücretsiz 🙂 Arduino ve gereken malzemeler projede belirtilmiş.
          Robot şasesi için ister oyuncak arabadan yaparsınız isterseniz kit alırsınız.Takıldığınız noktada buraya mesaj bırakabilirsiniz. Veya https://www.facebook.com/sezgin.gul.08 buradan iletişime geçebilirsiniz.

    2. Sezgin GÜL

      buradan android uygulamasını indir >> play.google.com/store/apps/details?id=robotspace.simplelabs.amr_voice&hl=tr