Bluetooth Araba Mobil Uygulaması

Merhaba. Bugün, Bluetooth kontrollü arabalara özel olarak geliştirdiğim uygulamadan bahsedeceğim.

  1. Neden yaptım?
  2. Nasıl yaptım?
  3. Ne işe yarayacak?
  4. Nasıl çalışıyor?
  5. Ne kadar zaman harcadım?
  6. Nereden indirebilirim?
  7. Nasıl kurulacak?
  8. Programdaki komutlar ne işe yarıyor?
  9. Program kurulduğu zaman hemen çalışacak mı?
  10. Bağlantıdan sonra arabanın hareketi nasıl sağlanıyor?

 

Neden yaptım?

Google Play Market’de bulunan bir çok uygulama var. İngilizce yada Türkçe olmak üzere bir kaç dilde bulmanız mümkündür. Uygulamayı yazanların bir kaçı sadece kullanıcı odaklı yapmış, diğerleri ise kullanıcıyı değil; daha çok kendini düşünmüş. Kendini düşünmekten kastım kendi anlayacağı bir şekilde yapmış. Bunun kötü bir yanı, yapan kişi bir yazılımcı olduğu için, normal bir kullanıcıya eş değer olamayacağından dolayı, kullanıcı kısa sürede bu uygulamayı anlamayıp ve kullanmaktan vazgeçecek, hatta telefonundan kaldıracaktır.

Bunun çözümü oldukça basit. Uygulamayı hazırlarken yazılımcı yönüyle değil, çocuk ve tasarımcı gözüyle bakmaktır. Yani, çocukların kullanabileceği ve daha çok görsellik kullanan bir yapıda hazırlamaktır. Bunu da yapmak için renk uyumu, kolaylık, erişilebilirlik ve resimleri kullanmak faydalı olacaktır.

Nasıl yaptım?

MIT App Inventor kullanarak yaptım. Kodlama ve Tasarım kısmı başlangıca göre oldukça basit olup, tamamen blok teknolojisi ile yapılmaktadır. Bu sayede yazılım kısmı bir nebze olsun basitleşmiş durumdadır.

APK Ekran Görüntüsü

APK Ekran Görüntüsü

Tasarım Süreci Görüntüsü

Ne işe yarayacak?

Kendi yaptığınız DIY arabayı yada satın aldığınız daha sonra revize etmek (Reverse Engineering) istediğiniz arabayı, bu uygulama ile kontrol edebilirsiniz. Arabayı kendi plastik kumandası ile değil; kendi telefonunuz ile kontrol edebileceksiniz. Yapacağınız tek şey sayfanın en sonundaki linkten bu uygulamayı indirmek ve arabanıza bir adet Bluetooth modülü, Arduino ve Motor Sürücü takmak olacaktır. Nasıl yapılacağını bilmiyorsanız, şu video’yu izlemenizi öneririm. Bu işlemden sonra telefonunuzun Bluetooth teknolojisini kullanarak, arabadaki bluetooth modülüne bağlantı sağladığınız takdirde işleminiz bitecektir.

Nasıl çalışıyor?

İlk önce uygulamayı indirmemiz gerekiyor. Uygulamayı indirdikten sonra, çalıştırıyoruz. Karşımıza gelen ilk ekrandan Bluetooth açmamız isteniyor (eğer bluetooth kapalıysa), bunu kabul ediyoruz. Kabul ettikten sonra ana ekranımız geliyor.

Bu ekrandan  butonuna tıklıyoruz. Bu ekrana zaten eşlenmiş olan cihazlar listelenecektir. Tabii, ilk defa bağlantı kuracağımız ve cihaz ile de eşleşmediği için burada gözükmeyecektir. İlk önce Ayarlar menüsünden Bluetooth ile eşleştirme yapmamız gerekiyor. Eşleştirme yaparken Bluetooth modülünün ismi genelde “HC-05” yada “HC-06” olacaktır. Bu Bluetooth modülüne bağlanıyoruz ve şifresine ise “0000 yada 1234” yazarak, eşleştirme yapıyoruz. Uygulama ekranına eşleşen cihazlar görüldükten sonra bağlanacak olduğumuz Bluetooth modülünü seçip, biraz bekleyeceğiz. Bağlantı durumunu anlamak için ise  butonuna tıklıyoruz. Bağlantı durumu butonuna tıkladıktan sonra, ekrana bağlandığını yada bağlanmadığını yazacaktır.

Bağlanmaz ise tekrar listeyi açıp bağlamaya yada donanım bağlantılarına bakmaya çalışınız.

Bağlandığını var sayarsak, ekrandaki     butonlara tıklayarak aracımızı kontrol edebiliriz.

Ne kadar zaman harcadım?

Bu süreç toplam 3-4 saat sürdü. Bu süreçte yaptıklarımı anında görmemi sağlayan “MIT App Inventor AI Companion” eklentisine hayran kaldığımı söyleyebilirim. Arka plan kodları yaklaşık olarak 30dk, ön tasarım, resimleri ve simgeleri hazırlamak ise 2-3 saat sürdü.

Nereden indirebilirim?

Bu uygulamayı “bit.ly/BluetoothKumanda” adresinden indirip, telefonunuza kopyalayıp, kurabilirsiniz.

Nasıl kurulacak?

  • İndirilen dosyayı belirli bir telefon dizinine atınız.  simgesine ve “Bluetooth Kumanda” ismine sahip uygulamaya tıklayıp, ekrana gelen sorguları kabul ederek yazılımı başarıyla kurabilirsiniz.

Programdaki komutlar ne işe yarıyor?

  • : Eşlenmiş olan Bluetooth aygıtlarını gösterir.
  • : Uygulamanın yapımcısını gösterir.
  • : Bluetooth bağlantısını kesmeye yarıyor. Herhangi bir saptırma durumunda bu butona tıkladığımızda bağlantı kesiliyor.
  • : Bu buton ise arabanın kornasını çalmaya yarıyor. Tıkladığınız zaman arabanın kornası çalacaktır.
  • : Bluetooth’a bağlanıp, bağlanmadığı durumu gösterir. Üzerine tıkladığımızda eğer bağlandıysa “Bluetooth bağlı.”, bağlanmadıysa “Bluetooth bağlantısı yok.” şeklinde ekrana bir bildirim gelecektir.
  • : Bu buton arabanın ileri gitmesini sağlıyor.
  • : Bu buton arabanın geri gitmesini sağlıyor.
  • : Bu buton arabanın sola gitmesini sağlıyor.
  • : Bu buton arabanın sağa gitmesini sağlıyor.

Program kurulduğu zaman hemen çalışacak mı?

Bu programı hemen indirip, kurabilirsiniz, fakat program kurulduktan sonra bağlantı sağlanacak olan kartın ve Bluetooth modülünün bu uygulamaya uyumlu olması gerekiyor. Bluetooth bağlantısı sağlandıktan sonra, siz bir butona tıkladığınızda, bir değer (veri) gidecektir. Bu giden değer, aynı şekilde alınması, işlenmesi ve kontrol edilmesi gerekiyor. Bu durumda arabanın içindeki, yani mikrodenetleyicinin içindeki yazılımında bulunan kontrol aşamasındaki kod parçasındaki değer ile Bluetooth’dan gelen değerin aynı olması gerekiyor.

Bu yüzden aslında bu uygulama baştan bir araba tasarladığınız zaman daha yararlı ve tatlı olacaktır. Bu yüzden bu kriteri değerlendirmekte fayda var. Yani her arabaya özgün olan bir şey değil; genelde açık kaynaklı (Open Source) ve Kendin Yap (DIY) arabalarda geçerlidir. Çünkü diğer arabalarda radyo frekansı kullanıldığı için ve kendi kumandasına özel bir protokol ile geldiği için bir müdahale söz konusu olmuyor. Fakat siz bu arabanın içindeki devrede ufak revizyonlar yaparak, Bluetooth teknolojisini aktive edebilirsiniz. Bunun için şu video’yu izleyebilirsiniz.

Bağlantıdan sonra arabanın hareketi nasıl sağlanıyor?

İki şey vardır. Birisi Verici (Telefon), diğeri ise Alıcı (Araba)’dır. Vericiden giden bir bilginin düzgün şekilde gidip, Alıcı’ya ulaştıktan sonra düzgün bir şekilde kontrol edilip ve alınması gerekiyor. Bunun için Alıcı kısmında bir kaç yere dikkat etmeniz gerekiyor.  Bu uygulamada giden verilerin türleri ve ne gittiklerine dair altta bir tablo var, bu tablo oldukça işinize yarayacaktır. Aslında uygulamaya bunu da ekleseydim, iyi olurdu 🙂

Kontrol edilebilen ve veri gönderdiğimiz 5 adet buton var. Bu yüzden toplam 5 tane veri gidecektir.

  • : Üzerine tıklandığı zaman 5 sayısı gidiyor.
  • : Üzerine basıldığı zaman 1 sayısı, basılmadığında ise 6 sayısı gidiyor.
  • : Üzerine basıldığı zaman 2 sayısı, basılmadığında ise 6 sayısı gidiyor.
  • : Üzerine basıldığı zaman 3 sayısı, basılmadığında ise 6 sayısı gidiyor.
  • : Üzerine basıldığı zaman 4 sayısı, basılmadığında ise 6 sayısı gidiyor.

İşte bu kadar! Şimdi, bunun alıcı (Araba) kısmı için uygulama kodunu da “bit.ly/ArduinoBluetoothCar” adresinden indirebilirsiniz.

Alıcı kısmında sırasıyla şunları kullandım:

  1. Arduino Uno
  2. L293D Motor Shield
  3. 2WD Araba Gövdesi (Sarhoş tekerleği “şu” tipte almanızda fayda var. Zira kitin içerisinde gelen “şu” tipteki tekerlek ile yön konusunda ciddi problem yaşayabilirsiniz.)
  4. HC-06 Bluetooth Modülü

Tekrar yazma gereği hissediyorum. Eğer elinizde bir araba varsa, bu arabayı söküp içerisinde ufak bir Arduino çeşidi olan “Arduino Nano” ve ufak birde motor sürücü bağlarsanız, sizde bu Alıcı tarafındaki kodu alıp direkt olarak yükleyebileceğiniz gibi, isterseniz kendinize göre revize de edebilirsiniz. Eğer arabayı tek başınıza sökmekten ve revize etmekten korkuyorsanız, ya ikinci bir ekip arkadaşı bulun, yada bu video’dan bakarak yapmaya çalışınız.

İyi çalışmalar, bir sonraki blog’da görüşmek üzere! 🙂

You May Also Like

Comments

Dogan

Güzel yazı olmuş hocam elinize sağlık başarılı.

    Resul Tüzen

    Teşekkür ederim, lütfen takipte kalınız 🙂

Fırat

abi ben sitenizi çok beğendim sitenizin bilgileri çok faydalı ama ben bu sitedeki kodları tam göremiyorum acaba e-posta adresime fotoğrafın büyütülmüş halini atarmısınız.Atarsanız çok memnun olurum teşekkür ederim.

    Resul Tüzen

    Merhaba, şu kanalda dediğinize benzer bir video hazırlamıştık, ona bakabilirsiniz;

    https://www.youtube.com/watch?v=E0FXM_cBJDs&t=1295s

Serhat

Süper hemen deniyorum

Leave a Comment

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>