İçindekiler:

Arduino ile Kendin Yap Çok Özellikli Robot: 13 Adım (Resimlerle)
Arduino ile Kendin Yap Çok Özellikli Robot: 13 Adım (Resimlerle)

Video: Arduino ile Kendin Yap Çok Özellikli Robot: 13 Adım (Resimlerle)

Video: Arduino ile Kendin Yap Çok Özellikli Robot: 13 Adım (Resimlerle)
Video: Tinkercad’de Arduino ile Robot Süpürge Yapalım 2024, Temmuz
Anonim
Arduino ile DIY Çok Özellikli Robot
Arduino ile DIY Çok Özellikli Robot
Arduino ile DIY Çok Özellikli Robot
Arduino ile DIY Çok Özellikli Robot
Arduino ile DIY Çok Özellikli Robot
Arduino ile DIY Çok Özellikli Robot

Bu robot esas olarak Arduino'yu anlamak ve Arduino'nun çeşitli projelerini birleştirerek Çok Özellikli Arduino Robotu oluşturmak için yapılmıştır. Ve dahası, kim evcil bir robota sahip olmak istemez ki? Bu yüzden ona BLUE ROVIER 316 adını verdim. Güzel bir paletli şasi satın alabilirdim ama onu sıfırdan yapmak size daha çok şey öğretir ve bitirdikten sonra size daha fazla gurur verir. Robot, sesli komutları anlayabilir, basit soruları yanıtlayabilir, bir RC araba ve hatta hareket ederken engellerden kaçınma. Esas olarak, Bluetooth üzerinden kendisine bağlı bir Android telefon aracılığıyla kontrol edilir. Google Ses Tanıma ve Eğim algılama gibi Android özelliklerine dayanarak, gerçekten sevimli, akıllı bir robot gibi davranabilir. Bluetooth tabanlı olduğu için adına MAVİ ekledim. Aslında bu benim ilk Arduino projemdi ve benzersiz olmasını istedim. Projeyi beğendiyseniz lütfen Robotik Yarışması'nda bana oy verin!

1. Adım: Gösteri Videosu

Image
Image
ROVIER'in Öyküsü
ROVIER'in Öyküsü

Robotun demosunu şu siteden izleyebilirsiniz:https://www.youtube.com/embed/zMFpO4hYkNk

2. Adım: ROVIER'in Öyküsü

ROVIER'in Öyküsü
ROVIER'in Öyküsü

BLUE ROVIER 316'nın sevimli küçük hikayesini yaşamak istemiyorsanız bir sonraki adıma geçebilirsiniz. Yaklaşık bir yıl önce babamdan Arduino UNO hediye etmiştim. Arduino alanındaki ilk adımım olduğu için genel Arduino projelerinden farklı ve benzersiz bir şey yaratmak istedim. Sesli komutları anlayabilen ve Uzaktan Kumanda, Çizgi Takip, Engellerden Kaçınma gibi daha birçok akıllı şeyi yapabilen sevimli ve akıllı bir robot olması gerekiyordu. Soru, bunların nasıl bir araya getirileceğiydi. Ve gerçekten güzel bir süre internette gezindikten sonra Bluetooth'un en ucuz mod olacağı sonucuna vardım. Ve böylece, BLUE ROVIER harekete geçti. Fakat robotun sahip olmasını beklediğim birçok özelliğini, esas olarak Arduino UNO'daki hafıza eksikliğinden dolayı (hatta daha az sayıda robotun daha az sayıda olması nedeniyle) hariç tutmak zorunda kaldığım bir durum ortaya çıktı. UNO'daki dijital pimler). Önemli değil, devam ettim. Robot'un son versiyonunu oluşturmak gerçekten çok zamanımı aldı. Ve birçok deneme ve başarısızlıktan sonra nihayet BLUE ROVIER ortaya çıktı. Ve şimdi robotun yapımına geçebiliriz.

3. Adım: Bileşenler ve Parçalar

Bileşenler ve Parçalar
Bileşenler ve Parçalar
Bileşenler ve Parçalar
Bileşenler ve Parçalar
Bileşenler ve Parçalar
Bileşenler ve Parçalar

Yalnızca aşağıdaki bileşenlere ihtiyacınız olacak: 1. Android sistemi 2. Arduino Uno 3. wtv020-sd-16p modülü ve 8ohm hoparlör4. 2x L293d motor kontrol devresi 5. 4x bo motorlar ve tekerlekler6. HC SR04 ultrasonik sensör 7. 9g servo8. 8 AA pil tutucu ve piller 9. 1gb micro SD kart 10. Şasi için küçük anahtar kutusu.11. HC 05 Bluetooth Modülü Pahalı göründüğünü biliyorum! Ama merak etmeyin, sadece iki veya üç bin rupiye mal olacak. Android'den bahsetmişken, bir tanesine sahip olmak büyük bir sorun olmayacak çünkü bugünlerde çoğunda var. Ancak daha yeni sürümlere sahip olmak (5.0 üstü) performansı artırabilir. Orta devirli (60 ila 100) motorları satın almaya çalışın. Bu, başka bir hız kontrol devresi kurulmadığı için robotun hızını kontrol altında tutmaya yardımcı olacaktır. Ve robotu iyi bir süre için çalıştırmak için 8 adet AA pil yeterlidir. Bluetooth düşünüldüğünde, HC 05 robot için uygun çünkü yeterince ucuz ve performansı da olağanüstü. Robota herhangi bir soru sorulduğunda çalınan ses dosyalarını saklamak için 1 GB mikro SD kart gereklidir [Öğreticinin sonraki bölümünde ayrıntılı olarak tartışılmıştır]. Diğer bileşenler, ilgili adımlarında ayrıntılı olarak tartışılmaktadır.

Şimdi bu robotta kullanılan bazı basit "Teoriler"e geçelim.

4. Adım: Sesle Kontrol Teorisi

Ses Kontrol Teorisi
Ses Kontrol Teorisi
Ses Kontrol Teorisi
Ses Kontrol Teorisi
Ses Kontrol Teorisi
Ses Kontrol Teorisi
Ses Kontrol Teorisi
Ses Kontrol Teorisi

Robot, bir android telefon aracılığıyla sesli komutları anlayabilir. Android'de kelimeyi söylediğimiz ve Google'ın yazdığı özellik olan Google Ses Tanıma'yı sanırım herkes biliyor. Aynı özellik burada sesli komutları tanımak ve bunları metin komutlarına dönüştürmek için kullanılıyor. Buradaki uygulama, konuşmayı Google üzerinden metne çeviriyor ve Bluetooth üzerinden robota gönderiyor. Robot, Bluetooth üzerinden alınan bu komutları takip edecek şekilde programlanmıştır. Aynı zamanda çok sayıda soruya cevap verme yeteneğine de sahiptir. Hatta robotun daha harika şeyler yapmasını sağlamak için koda birkaç komut daha ekleyebilirsiniz. İşte Android Uygulaması:

Adım 5: Hareket Kontrol Teorisi

Hareket Kontrol Teorisi
Hareket Kontrol Teorisi
Hareket Kontrol Teorisi
Hareket Kontrol Teorisi

Hareket kontrolü veya hareket kontrolü modu da Android üzerinden yapılır. Bu modda robot, direksiyon olarak Android kullanılarak bir RC araba gibi kontrol edilebilir. Bu modda kullanılan tüm Android'lerde "İvmeölçer" adlı bir sensör bulunmaktadır. Bu ivmeölçer, Android'e etki eden hızlanma kuvvetlerini ölçerek telefonun hangi açıda olduğunu belirleyebiliyor. Telefonu eğdiğimizde Android'in ekranını döndürmesini sağlayan bu sensördür. Buradaki uygulama, telefonun eğildiği açıyı belirlemek için telefon ivmeölçerini kullanır. Ardından Bluetooth üzerinden robota bir karakter (A, B….) gönderilir. Arduino, alınan verilere göre çalışacak şekilde programlanmıştır. Telefon öne eğilirse A karakteri gönderilir ve robot ileri doğru hareket eder. Geriye eğildiğinde, B karakteri gönderilir ve robot geriye doğru hareket eder ve bu şekilde sola ve sağa hareket eder. Android yatay olarak yerleştirildiğinde E karakteri gönderiliyor ve robot hareket etmeyi bırakıyor.

Adım 6: Bluetooth Kontrol Teorisi

Bluetooth Kontrol Teorisi
Bluetooth Kontrol Teorisi
Bluetooth Kontrol Teorisi
Bluetooth Kontrol Teorisi

Bu modda robot, genel bir RC araba gibi çalışır. Bu modda yeni bir şey yok, piyasada bulunan genel bir uzaktan kumandalı araba ile aynı, tek fark robotu kontrol etmek için bir Android uygulaması kullanmamız. Uygulamada her biri farklı karakterlere sahip farklı düğmeler var. ile ilişkili. Herhangi bir tuşa dokunulduğunda tıpkı jest kontrol modunda olduğu gibi Bluetooth üzerinden robota bir karakter gönderiliyor. Ayrıca ilgili tuşlara dokunulduğunda aynı karakterler gönderiliyor ve robot gelen karakterleri takip ediyor. Robotun sağa ve sola görünmesi için uygulama içerisinde 360 ve -360 derece butonlarını kullandım. Robotun başka şeyler yapmasını istiyorsanız kodda değiştirebilirsiniz.

Adım 7: Engellerden Kaçınma Teorisi

Engellerden Kaçınma Teorisi
Engellerden Kaçınma Teorisi
Engellerden Kaçınma Teorisi
Engellerden Kaçınma Teorisi

Bu modda robot, herhangi bir nesneyle çarpışmasını engelleyen bir Engelden Kaçınma robotu gibi çalışır. Bu, HC SR04 sensörü ile yapılır. SONAR (Ses Navigasyonu ve Menzil) hakkında bilginiz var sanırım. HC SR04 sensörü sürekli olarak ultrasonik ses dalgaları yayar. Bu dalgalar, katı bir yüzeye çarptıktan sonra geri sekerek sensöre geri döner. Dalgaların sensöre geri gelmesi için geçen süre kaydedilir. Ses yaklaşık olarak 340 m/sn hızla hareket ettiğinden ve HIZ × ZAMAN = MESAFE olduğunu bildiğimiz için ilerideki mesafeyi belirleyebiliriz. Örneğin ses 2 saniye sürerse geri dönmek için yukarıdaki formülle mesafeyi belirleyebiliriz yani 340 × 2 = 680 m. Robot bu şekilde sensör aracılığıyla önündeki mesafeyi ölçebilir. Robot hareket halindeyken sensör aracılığıyla sürekli olarak önündeki mesafeyi ölçer. Önündeki boş alanın 30 cm'den az olduğunu algılarsa hareketini durdurur. Sonra sağa ve sola bakar ve her iki tarafın mesafesini karşılaştırır. Sol taraf daha büyük bir mesafeye sahipse robot sola döner. Aksi takdirde sağ taraf daha büyükse robot sağa döner. Her iki taraf da eşit mesafelere sahipse robot geri döner. Bu basit mekanizma, robotun engellerden kaçınmasına yardımcı olur.

Adım 8: Kasanın Montajı

Şasinin Montajı
Şasinin Montajı
Şasinin Montajı
Şasinin Montajı
Şasinin Montajı
Şasinin Montajı
Şasinin Montajı
Şasinin Montajı

Şaseyi kendi başınıza yaparken ölçü ve hizalamalara çok dikkat etmelisiniz. Nette beni tatmin edeni bulamadığım için tercih ettim. Kasa olarak güç kaynağı amaçlı kullanılan genel bir switch box kullanılıyor. Sanırım, bir elektrikli ev aletleri mağazasından kolayca bir tane alabilirsin. İlk olarak, alttaki dört motoru bir miktar yapıştırıcı veya kelepçe ile tutturun ve ardından tekerlekleri takın. Ardından robotun kafasını (servo ve HC SR04 sensörü) yapmalısınız. Kafa için küçük bir perfboard parçasını kesin ve bir vida ile servoya takın. Ardından ultrasonik sensörü bir miktar yapıştırıcı ile perfboard'a takın. Kutunun üst kısmında küçük bir kare delik açın ve servoyu içine sabitleyin. Ardından pil tutucuyu robotun arkasına bir vidayla takın. Devreleri ve diğer bileşenleri kutunun içine koyun ve kasanız hazır. Sesin çıkması ve daha kaliteli olması için hoparlörün önüne delikler açmayı unutmayın.

Adım 9: Ses Modülünü Hazırlama

Ses Modülünü Hazırlama
Ses Modülünü Hazırlama
Ses Modülünü Hazırlama
Ses Modülünü Hazırlama
Ses Modülünü Hazırlama
Ses Modülünü Hazırlama

Robotun konuşma modu WTV 020 SD modülü tarafından yerine getirilmektedir. Modül, robot için ses dosyalarını çalmak için kullanılır. Herhangi bir soru sorulduğunda, arduino modülün SD karttaki ilgili ses dosyasını çalmasını sağlayacaktır. Modül üzerinde arduino, reset, saat, data ve meşgul pinleri ile haberleşmek için dört adet seri data hattı bulunmaktadır. Dosya isimlerinin decimal (001, 0002…) olması gerektiğini unutmayınız. Ve dosyaların AD4 veya WAV formatında olması gerektiğini. Ayrıca modül sadece 1 gb mikro SD kartta çalışır. Bazı modüller 2 gb kartlarda bile çalışır ve kart maksimum 504 ses dosyası tutabilir. Böylece, çok sayıda soru için oynatmak üzere çok sayıda ses dosyası ekleyebilirsiniz. Hatta kendi ses AD4 dosyalarınızı bile oluşturabilirsiniz (bu talimatla birlikte sağlanan ses dosyalarıyla ayarlayabilirseniz bu bölümü atlayabilirsiniz)., iki yazılımınız olmalı, bir ses düzenleme yazılımı ve dosyaları AD4 formatına dönüştürecek 4D SOMO TOOL adlı bir yazılım. İkinci olarak, Robot Seslerini hazırlamanız gerekiyor. Metni konuşmaya dönüştürebilir veya hatta kendi sesinizi kaydedip Robot seslerini yapabilirsiniz. Bunların her ikisi de Ses Düzenleme Yazılımında yapılabilir. Ama elbette, insan sesiyle konuşuyorlarsa robotlar iyi görünmüyor. Bu yüzden metni konuşmaya dönüştürmek daha iyi olmalı. Bunu yapmanıza yardımcı olacak Microsoft Anna ve Microsoft Sam Bilgisayarınız gibi çeşitli motorlar bulunmaktadır. Ses dosyalarını hazırladıktan sonra 32000 Hz ve WAV Formatında kaydetmeniz gerekmektedir. Bunun nedeni modülün 32000 Hz'e kadar ses dosyalarını çalabilmesidir. Ardından dosyaları AD4 formatına dönüştürmek için 4D SOMO TOOL'u kullanın. Bunu yapmak için SOMO TOOL'u açın, dosyaları seçin ve AD4 Encode'a tıklayın, ses dosyalarınız hazır. Referans için yukarıdaki resme bakabilirsiniz. Robotik sesler yapmak için daha fazla ayrıntı istiyorsanız, buraya gidebilirsiniz:

[Robotik Sesler Yapma]İşte orijinal ses dosyaları ve yazılım:

Adım 10: Bağlantıların Yapılması

Bağlantıların Yapılması
Bağlantıların Yapılması
Bağlantıların Yapılması
Bağlantıların Yapılması
Bağlantıların Yapılması
Bağlantıların Yapılması

İlgili modüllerin tüm Vcc pinlerini birlikte kısaltın ve arduino üzerindeki 5v pinine bağlayın. Aynısını gnd pinleri için de yapın. İşte farklı modüllerin bağlantıları. HC 05 modülü:RX pini arduino kazı pini 0. TX pini arduino kazı pini 1. HC SR04 sensörü:Echo pini arduino kazı pini 6. Trig pini arduino kazı pini 7WTV020-SD modül:pin1'den (pim sıfırlama) arduino'ya pin2.pin4'ten hoparlöre +pin5'ten hoparlöre -pin7 (saat) arduino'ya dig pin3.pin8'den gnd.pin10'a (veri) arduino'ya pin4.pin15 (meşgul) arduino'ya dig pin5.pin16 ila 3.3vArdından, servo sinyal (sarı) kablosunu bağlayın ve 12. L293d motor denetleyicisini kazın: pin A1'i arduino kazı pini 8.pin A2'yi arduino kazı pini 9.pin B1'i arduino kazı pini 10.pin B2'ye arduino kazı pimi 11. Bu robotta iki L293d modülü kullandığımızı unutmayın. Bunun nedeni, bir modülün iki motora kadar güç verme kapasitesine sahip olmasıdır. Dört motoru kontrol etmek için iki motor sürücüsü kullanıyoruz. Bu nedenle, her iki motor kontrol modülünde de çift bağlantılar yapmayı unutmayın. Örneğin Arduino pin 8'i her iki sürücü modülünün A1 pinine bağlayın. Bir modülün çıkışını iki motora ve diğer modülü diğer iki motora bağlamayı unutmayın. Daha fazla referans için şemayı kontrol edin.

Adım 11: Arduino Kodu

Arduino Kodu
Arduino Kodu
Arduino Kodu
Arduino Kodu

Kodu yapmak heyecan verici bir zamandı. Hiç de karmaşık bir kod değil, sadece Android ve ses modülü ile iletişim kurmak için bazı kütüphaneleri kullanıyor. İşin büyük bir kısmı Arduino'da değil Android'de yapılır. Kod, Bluetooth iletişimine ve Bluetooth'tan gelen verilere dayanmaktadır. Kod, farklı modları yürütmek için robota sesli komutlar vermemiz gerektiği ve Arduino'nun gelen Bluetooth Sinyallerini sürekli olarak kontrol edeceği şekilde yapılmıştır. Herhangi bir modu durdurmak için "dur" dememiz yeterlidir. Kodla ilgili tek sorun, robotu Engelden Kaçınma Modundayken manuel olarak kapatmamız gerektiğidir. Bu modda "stop" komutunu kullanamayız. Bunun nedeni, bu özelliğin açık konuma getirilmesinin nesnelerin uzaklığını tarama hızını etkilemesidir. Arduino, hem bir nesnenin mesafesini hem de gelen Bluetooth sinyallerini aynı anda okumak zorunda kalacak. Bu, moda müdahale eder ve robot kendisini engellerden tam olarak koruyamaz. Öndeki mesafe 30 cm'den az olsa bile robot anında duramayabilir. O yüzden bu moda bu özelliği dahil etmemek iyi olur. Sadece kütüphaneleri ve kodu indirin ve Arduino'ya yükleyin. Ancak yüklemeden önce Arduino'dan TX ve RX (0, 1) pinlerini çıkarmayı unutmayın. Bu pinler Seri haberleşme için kullanılır ve kodun yüklenmesi sırasında kullanılır. Ve bu robotta bu pinler Bluetooth modülünü bağlamak için kullanılıyor. Bu yüzden Bluetooth Modülünüzü engelleyebileceğinden onları çıkarmayı unutmayın. Kodlar ve kitaplıklar:

Adım 12: Sorunları Sıralama ve İyileştirmeler Yapma

Sorunları Sıralamak ve İyileştirmeler Yapmak
Sorunları Sıralamak ve İyileştirmeler Yapmak

Bu adımı atlayabilirsiniz çünkü sadece robotun iyileştirmeleri ile ilgilenmektedir. WTV-020-SD-16p modülünde hafıza kartının kapasitesi ile ilgili birçok sorun ortaya çıkmaktadır. Bunun nedeni, bazı modüllerin 2 GB kartlarda çalışması, bazılarının ise çalışmamasıdır. Bu yüzden 1 GB micro SD kart kullanmak daha iyidir. Bileşenlerin farklı versiyonlarını kullanmakta pek sorun olmayacaktır. wtv 020 sd modülünün farklı versiyonlarından bahsedilebilir. Bunun nedeni, modüller arasında sadece paketleme farkı varken, diğer dahili şeylerin çoğunun aynı kalmasıdır. Bir diğer önemli şey, robot için bir PCB kullanılması, mevcut tüketimin büyük ölçüde azaltılmasına yardımcı olacaktır. Eğer benim gibi farklı bileşenleri bağlarsanız, size bir miktar akıma mal olur çünkü yüksek bir dirence sahip olan tellerde iyi bir miktar kaybolacaktır. Bunun nedeni devrenin yeterince büyük olmasıdır. Bu talimat, bir PCB tasarımını içermez (çünkü ben yapmadım) ancak robotun güç verimliliğini artırabilir. Ancak BLUE ROVIER 316 henüz yapılmadı! Satırları takip etmek, labirentleri çözmek ve daha birçok şey gibi daha fazla özellik eklemeyi düşündüm. Ancak Arduino UNO'daki pinlerin olmaması nedeniyle bir rüya olarak kaldı (BLUE ROVIER, Arduino'nun birçok pinini gerçekten yiyor). Bu yüzden bu robotun tüm özelliklerini geliştirmeyi ve daha sofistike ve kullanışlı bir Arduino Robotu oluşturmak için bunları bir araya getirmeyi düşünüyorum. Bu yüzden birkaç ay içinde ROVIER'in değiştirilmiş görünümünü görmeye hazır olun!!!Robotun diğer değiştirilmiş versiyonlarını benimkinden daha fazla yaratıcılığa sahip başka insanlar tarafından bile görmek istiyorum!!!!

Adım 13: Robotla Oynamak

Robotla Oynamak
Robotla Oynamak

Robotu açın ve sizi nasıl selamladığını görün, sizinle oynuyor. Herhangi bir soru sorun (aptal olanlar değil!) ve cevabını izleyin. Çizgileri takip etmeyi veya ilerlemeyi söyleyebilirsiniz. Robotu durdurmak istediğinizde 'dur' demeniz yeterli.

Robotik Yarışması 2017
Robotik Yarışması 2017
Robotik Yarışması 2017
Robotik Yarışması 2017

Robotik Yarışması 2017'de İkincilik

Önerilen: