Arkadaşlar selamlar, bu yazıda daha önce YouTube kanalımda yapımını paylaştığım BB8 robotunun başından sonuna yapım aşamalarını ve teknik detayları bulacaksınız.
Bu robot, ileride yapmayı planladığım yapay zekaya sahip olacak BB8’in 20cm çapındaki bir prototipi olacak. Daha sonra ek özelliklerle geliştirmeyi planladığım robotu telefon üzerinden Bluetooth ile kontrol edeceğim. Hadi başlayalım!
PCB Tasarımı ve Elektronik Montaj
BB8 robotunu kontrol edecek devre, kendi tasarladığım bir PCB üzerine kurulu olacak. Fakat tasarımdan önce devrede kullanacağım komponentleri ve modülleri belirlemem gerek.

Yapacağım robotu kontrol edecek bir beyne ihtiyacım var. Bunun için bir Arduino Nano kartı kullanacağım. Aynı zamanda robotun uzaktan kontrolü için bir Bluetooth modülüne ve motorları kontrol edecek bir sürücüye ihtiyacım olacak. Devrede kullanacağım yardımcı elemanları da belirledikten sonra tasarım kısmına geçiyorum.

Kullandığım Malzemeler:
- 1 x Arduino Nano (CH340)
- 1 x HC05 veya HC06 Bluetooth Modül
- 1 x 11.1V 3S 1350 mAh Li-Po Pil
- 3 x 5mm LED
- 1 x L298 Motor Sürücü
- 1 x L298 Motor Sürücü Soğutucu
- 1 x PCB from PCBWay
- 2 x 15 Pin Dişi Header (40 pinden kesilmiş)
- 2 x 3 Pin Erkek Header (40 pinden kesilmiş)
- 1 x 90 Derece 6 Pin Dişi Header (40 pinden kesilmiş)
- 4 x 1N4007 Diyot
- 3 x 240 Ohm Direnç
- 1 x 2.2k Ohm Direnç
- 1 x 1k Ohm Direnç
- 1 x 33k Ohm Direnç
- 1 x 22k Ohm Direnç
- 1 x 220uf 16V Kapasitör
- 2 x 100nf 100V Kapasitör
- 1 x Slide Switch
- 2 x Klemens
- 1 x Montaj Kablosu
- 1 x XT60 Soket
PCB tasarımını Autodesk’in EAGLE programını kullanarak yaptım. Ardından kartı PCBWay üzerinden sipariş ettim. Kartı üretmek isterseniz tasarım dosyasına buraya tıklayarak ulaşabilirsiniz. Devre elemanlarını PCB’ye lehimleyerek elektronik montaj kısmını tamamladım. Projeyi PCB olmadan L298 motor sürücü kartı, Arduino ve Bluetooth modülü ile de yapabilirsiniz. Projeyi yaparken ihtiyaç duyacağınız bağlantıları aşağıda bulabilirsiniz.
Bağlantılar
Arduino Nano | L298 Sürücü Kartı |
A1 | Input_1 (Sol Motor) |
A2 | Input_2 (Sol Motor) |
A3 | Input_3 (Sağ Motor) |
A4 | Input_3 (Sağ Motor) |
10 | EN_1 (Sol Motor) |
9 | EN_2 (Sağ Motor) |
Arduino Nano | HC-06 Bluetooth Modülü |
4 | TX Pin |
3 | RX Pin |
3D Tasarım/Baskı
Bu kısımda işe robotun ana gövdesinin tasarımı ile başladım. İnternet üzerinde farklı boyutlarda tasarlanmış BB8 gövdeleri olsa da bu tasarımlar kendi robotumda kullanmaya uygun değildi. Yine de sonucu görmek için internette bulduğum bir tasarımı iki yarım küre şeklinde basarak bir deneme çıktısı aldım. Baskısını aldığım iki parça, tasarımı gereği birbirine yalnızca yapıştırılarak birleştirilebiliyordu. Yani gövdenin montajını yaptıktan sonra robotu tekrar açmak mümkün olmayacaktı.

Bu yüzden Fusion360 kullanarak vida ile birleştirilebilen 20cm çapında bir ana gövde tasarladım. Gerçeğe uygun bir modelleme için BB8 gövdesinin 6 tarafından çekilmiş görselleri kullandım. Düz bir küre modeli üzerine BB8 desenlerini yerleştirdikten sonra montaj için gerekli kısımları ekleyerek tasarımı tamamladım ve modeli baskıya verdim. Pürüzsüz bir yüzey elde etmek için baskıyı destekli bir şekilde aldım. Baskı işleminin toplam 140 saat sürdüğünü de eklemek isterim.

Gövde baskısını tamamladıktan sonra robotun kafa kısmının baskısına geçtim. Bu parçayı da destekli şekilde bastım. Burada robotun kafa kısmıyla ilgili dikkat edilmesi gereken en önemli nokta parçanın ağırlığı. Kafa kısmının ağırlığı arttıkça robotun dengede durması imkansız hale geliyor. Dengeyi sağlamak için robotun ağırlık merkezinin mümkün olduğu kadar tabana yakın olması gerekiyor. Bu yüzden kafa kısmı için aldığım 3mm kalınlığındaki ilk baskı denge testini geçemedi. Testten sonra daha ince bir baskı aldım ve robotun üst kısmındaki ağırlıktan tasarruf etmiş oldum.

3D baskı tarafındaki üçüncü kısım robotun iç mekanizmalarının, yani görünmeyen kısımların tasarımı ve baskısı. Robotun iç kısmı için robotu kontrol edecek devre kartını ve robota güç verecek bataryayı taşıyacak parçalar tasarladım. Aynı zamanda robotun kafa kısmının hareketini sağlayacak mekanizmalara da ihtiyacım olacaktı. BB8 robotunu bilenlerin gözünde bir şeyler canlanmıştır. Robot hareket ettikçe kafa kısmının gövdeyle birlikte hareket etmemesi gerekiyor. Bunu sağlamak için kafa kısmının altına ve gövdenin üst kısmına gelecek şekilde mıknatıslar yerleştirdim. Bu sayede hem robotun gövde ve baş kısmını birleştirmiş hem de robotun kafası için istediğim hareketi sağlamış oldum. Mıknatısları taşıyacak parçaları da tasarladıktan sonra tüm parçaların baskısını tamamladım.

Bu aşamada bahsi geçen tüm parçaların tasarım dosyalarını aşağıdaki butonu kullanarak indirebilirsiniz.
Tasarım dosyaları içinde “balancer_full_density” dışındaki tüm parçalar %20 iç dolgu oranında basıldı.
Mekanik Montaj
Baskı aşamasından sonra sıra tüm parçaları birleştirmeye geldi. Tasarım aşamasında parçaların üzerinde montaj için gerekli delikleri bıraktığımdan bu aşama diğerlerine göre oldukça zahmetsizdi. Bu aşamada kullandığım tüm malzemeleri aşağıda bulabilirsiniz.
Kullandığım Malzemeler:
- 2 x 120 RPM 12V Mikro Motor
- 2 x 60*11mm Geçmeli Tekerlek
- 2 x Mikro Motor Tutucu
- 4 x 20mm Çap 2mm Kalınlık Neodyum Mıknatıs
- 5 x Plastik Sarhoş Teker
- 8 x M3*10 mm YSB Civata
- 4 x M3*6 YSB Civata
- 4 x M3*8 HSB İmbus Cıvata
- 16 x M3 Isı Geçmeli Somun
İşe parçalar üzerindeki montaj deliklerine yuvarlak somunları yerleştirerek başladım. Somunları deliklere yerleştirirken havyadan faydalandım. Yuvarlak somunları deliklerin üzerine koyduktan sonra havya ile iterek yerleştirdim. Bu sayede deliklerin havyanın ısısıyla istediğim boyutlarda açılmasını ve somunların deliklere sıkı şekilde geçmesini sağladım. Tüm somunları yerleştirdikten sonra sıra parçaların montajında!

Montaja motorlardan ve devre kartından başladım. Motorları sabitlemek için motor tutuculardan faydalandım. Kullandığım motorların boyutuna uygun şekilde tasarlanmış tutucular, motorların çalışma esnasında yerinden oynamasını engelleyecek. Tutucuların deliklerini yerleştirdiğim somunların üzerine denk gelecek şekilde ayarladım. Ardından tutucuyu kısa vidalar kullanarak motorla birlikte yerine sabitledim. Motor montajından sonra devreyi de uygun yerlere takarak devre ve motor arasındaki bağlantıları yaptım.

Mıknatısları yerleştireceğim parçalardan önceki aşamada bahsetmiştim. Parçalar üzerindeki deliklere uygun boyutlardaki mıknatısları sıcak silikon kullanarak yapıştırdım. Robotun üst kısmına yerleştirdiğim mıknatısların yanında üç tane de sarhoş teker kullandım. Bu sayede BB8’in kafası, gövde üzerinde çok daha rahat bir şekilde hareket edecek.

Tüm montajı tamamlayarak robotu boyadan önceki son haline getirdim.
Boyama
Projenin başından beri dikkat ettiğim en önemli nokta robotun gerçek BB8’e mümkün olduğu kadar çok benzemesiydi. Bu yüzden beyaz PLA kullanarak ürettiğim robotu BB8 görüntüsüne kavuşturmam gerekiyordu.

Orijinal BB8 robotu üzerinde turuncu, siyah ve gri renkleri bulunan bir gövdeye sahip. Ben de elimdeki siyah, kırmızı, sarı ve beyaz akrilik boyaları kullanarak BB8 renklerini elde ettim. Ardından orijinal BB8 görüntüsüne bağlı kalarak boyama işlemini tamamladım ve robotu kurumaya bıraktım.

Proje Kodu
Robot, bluetooth ile göndereceğim komutlara(geri, ileri,sağ, sol vb.) bağlı olarak hareket edecek. Bu yüzden tüm komutlar için farklı motor hareketlerini içeren kodlar yazdım. Motorların ani hareketi robotun denge kurmasını zorlaştıracağından bunu göz önünde bulundurarak bir kod yazmam gerekiyordu. Bu sebeple kodda motorların ani hareketini engelleyecek bir algoritma kullandım.

Kodu tamamladıktan sonra Arduino’ya yüklerek en sevdiğim kısma yani test aşamasına geçtim.
Proje koduna buraya tıklayarak ulaşabilirsiniz.
Test
Robotu Bluetooth ile kontrol etmek için araba kontrolü için tasarlanmış bir telefon uygulaması kullandım. Uygulamayı telefonuma kurduktan sonra telefonumu robot üzerindeki bluetooth modülüne bağladım. Bağlantı kurulduktan sonra robot harekete geçmeye hazır!


Proje Dosyaları: https://github.com/eglix/Projeler/tree/master/BB8_Prototype
Test aşamasını ve projenin baştan sona macerasını kanalımdaki videodan izleyebilirsiniz. Umarım hoşunuza gitmiştir. Bu çalışma ileride çok daha gelişmiş bir versiyonunu yapacağım BB8 robotunun ilk prototipiydi. Sizce sonraki robota hangi özellikleri eklemeliyim? Hangi özellikleri geliştirmeliyim? Tüm fikirlerinizi yorumlar kısmında bekliyorum. Bir sonraki projede görüşünceye dek, hoşça kalın! 🙂