İçindekiler:

3D Baskılı Arduino Powered Dörtlü Robot: 13 Adım (Resimli)
3D Baskılı Arduino Powered Dörtlü Robot: 13 Adım (Resimli)

Video: 3D Baskılı Arduino Powered Dörtlü Robot: 13 Adım (Resimli)

Video: 3D Baskılı Arduino Powered Dörtlü Robot: 13 Adım (Resimli)
Video: Tinkercad’de Arduino ile Robot Süpürge Yapalım 2024, Kasım
Anonim
3D Baskılı Arduino Powered Dörtlü Robot
3D Baskılı Arduino Powered Dörtlü Robot
3D Baskılı Arduino Powered Dörtlü Robot
3D Baskılı Arduino Powered Dörtlü Robot
3D Baskılı Arduino Powered Dörtlü Robot
3D Baskılı Arduino Powered Dörtlü Robot

Fusion 360 Projeleri »

Önceki Instructables'tan muhtemelen robotik projelere derin bir ilgim olduğunu görebilirsiniz. Bir robotik iki ayaklı inşa ettiğim önceki Instructable'dan sonra, köpek ve kedi gibi hayvanları taklit edebilecek dört ayaklı bir robot yapmaya karar verdim. Bu Eğitilebilir Kitapta size robotik dörtlü tasarımı ve montajını göstereceğim.

Bu projeyi oluştururken birincil hedef, sistemi mümkün olduğunca sağlam hale getirmekti, böylece çeşitli yürüyüş ve koşu yürüyüşlerini denerken, donanım arızası konusunda sürekli endişelenmeme gerek kalmayacaktı. Bu, donanımı sınırlarına kadar zorlamama ve karmaşık yürüyüşler ve hareketlerle deneyler yapmama izin verdi. İkincil bir amaç, hızlı prototiplemeye izin veren hazır hobi parçalarını ve 3D baskıyı kullanarak dörtlü nispeten düşük maliyetli hale getirmekti. Bu iki hedef bir araya geldiğinde, çeşitli deneyler gerçekleştirmek için sağlam bir temel sağlar ve navigasyon, engellerden kaçınma ve dinamik hareket gibi daha özel gereksinimler için dörtlü geliştirmenize izin verir.

Projenin hızlı bir demosunu görmek için yukarıda ekli videoyu kontrol edin. Kendi Arduino Powered Dörtlü Robotunuzu oluşturmak için devam edin ve projeyi beğendiyseniz "Make it Move Yarışması"nda bir oy verin.

Adım 1: Genel Bakış ve Tasarım Süreci

Genel Bakış ve Tasarım Süreci
Genel Bakış ve Tasarım Süreci
Genel Bakış ve Tasarım Süreci
Genel Bakış ve Tasarım Süreci
Genel Bakış ve Tasarım Süreci
Genel Bakış ve Tasarım Süreci

Dört ayaklı, Autodesk'in ücretsiz Fusion 360 3d modelleme yazılımında tasarlandı. Tasarıma servo motorları ithal ederek başladım ve bacakları ve gövdeyi etraflarına inşa ettim. Servo motor miline taban tabana zıt ikinci bir pivot noktası sağlayan servo motor için braketler tasarladım. Motorun her iki ucunda çift şaft olması, tasarıma yapısal stabilite kazandırır ve bacaklar biraz yük alacak şekilde yapıldığında oluşabilecek eğrilikleri ortadan kaldırır. Bağlantılar, mil için bir cıvata kullanırken braketler bir yatağı tutacak şekilde tasarlanmıştır. Bağlantılar bir somun kullanılarak millere monte edildiğinde, yatak servo motor milinin karşı tarafında düzgün ve sağlam bir pivot noktası sağlayacaktır.

Dört ayaklıyı tasarlarken bir diğer amaç, servo motorların sağladığı torktan maksimum düzeyde yararlanmak için modeli olabildiğince kompakt tutmaktı. Bağlantıların boyutları, toplam uzunluğu en aza indirirken geniş bir hareket aralığı elde etmek için yapılmıştır. Bunları çok kısa yapmak braketlerin çarpışmasına, hareket aralığının azalmasına ve çok uzun yapılması aktüatörlere gereksiz tork uygulanmasına neden olur. Son olarak Arduino ve diğer elektronik bileşenlerin üzerine monte edileceği robotun gövdesini tasarladım. Ayrıca projeyi daha fazla iyileştirme için ölçeklenebilir hale getirmek için üst panelde ek montaj noktaları bıraktım. Bir zamanlar mesafe sensörleri, kameralar veya robotik kavrayıcılar gibi diğer çalıştırılan mekanizmalar gibi sensörler eklenebilir.

Not: Parçalar aşağıdaki adımlardan birine dahil edilmiştir.

Adım 2: Gerekli Malzemeler

İhtiyac duyulan malzemeler
İhtiyac duyulan malzemeler
İhtiyac duyulan malzemeler
İhtiyac duyulan malzemeler

Kendi Arduino Powered Dörtlü Robotunuzu yapmak için gereken tüm bileşenlerin ve parçaların listesi. Tüm parçalar yaygın olarak mevcut olmalı ve yerel donanım mağazalarında veya çevrimiçi olarak kolayca bulunabilmelidir.

ELEKTRONİK:

Arduino Uno x 1

Towerpro MG995 servo motor x 12

Arduino Sensör Kalkanı (V5 versiyonunu tavsiye ederim ama V4 versiyonum vardı)

Jumper Telleri (10 adet)

MPU6050 IMU (isteğe bağlı)

Ultrasonik Sensör (isteğe bağlı)

DONANIM:

Bilyalı Rulmanlar (8x19x7mm, 12 Adet)

M4 somun ve cıvatalar

3D yazıcı filamenti (3D yazıcınız yoksa, yerel bir çalışma alanında bir 3D yazıcı olmalıdır veya baskılar oldukça ucuza online olarak yapılabilir)

Akrilik Levhalar (4mm)

ALETLER

3 boyutlu yazıcı

Lazer kesici

Bu projenin en önemli maliyeti 12 servo motordur. Kolay kırılma eğiliminde oldukları için ucuz plastik olanları kullanmak yerine orta menzilli ve yüksek menzilli versiyona geçmenizi tavsiye ederim. Aletler hariç bu projenin toplam maliyeti yaklaşık 60$'dır.

Adım 3: Dijital Olarak Üretilen Parçalar

Dijital Olarak Üretilen Parçalar
Dijital Olarak Üretilen Parçalar
Dijital Olarak Üretilen Parçalar
Dijital Olarak Üretilen Parçalar
Dijital Olarak Üretilen Parçalar
Dijital Olarak Üretilen Parçalar

Bu proje için gereken parçaların özel olarak tasarlanması gerekiyordu, bu nedenle bunları oluşturmak için dijital olarak üretilmiş parçaların ve CAD'in gücünü kullandık. Parçaların çoğu, 4 mm akrilikten lazerle kesilmiş birkaç parça dışında 3D olarak basılmıştır. Baskılar %40 dolgu, 2 çevre, 0,4 mm meme ve PLA ile 0,1 mm katman yüksekliğinde yapılmıştır. Bazı parçalar, çıkıntılı karmaşık bir şekle sahip oldukları için destek gerektirir, ancak desteklere kolayca erişilebilir ve bazı kesiciler kullanılarak çıkarılabilir. Filamentin istediğiniz rengini seçebilirsiniz. Aşağıda parçaların tam listesini ve kendi versiyonunuzu yazdırmak için STL'leri ve lazerle kesilmiş parçalar için 2D tasarımları bulabilirsiniz.

Not: Buradan itibaren parçalara aşağıdaki listedeki isimler kullanılarak atıfta bulunulacaktır.

3D baskılı parçalar:

  • kalça servo braketi x 2
  • kalça servo braket ayna x 2
  • diz servo braketi x 2
  • diz servo braket ayna x 2
  • rulman tutucu x 2
  • yatak tutucu ayna x 2
  • bacak x 4
  • servo korna bağlantısı x 4
  • rulman bağlantısı x 4
  • arduino tutucu x 1
  • mesafe sensörü tutucu x 1
  • L-destek x 4
  • yatak burcu x 4
  • servo korna ara parçası x 24

Lazer kesim parçalar:

  • servo tutucu paneli x 2
  • üst panel x 1

Çeşitli ayırıcılar hariç olmak üzere toplamda 3D basılması gereken 30 parça ve toplamda 33 adet dijital olarak üretilmiş parça bulunmaktadır. Toplam baskı süresi yaklaşık 30 saattir.

Adım 4: Bağlantıları Hazırlama

Bağlantıların Hazırlanması
Bağlantıların Hazırlanması
Bağlantıların Hazırlanması
Bağlantıların Hazırlanması
Bağlantıların Hazırlanması
Bağlantıların Hazırlanması

Son montaj sürecini daha yönetilebilir hale getirecek bazı parçaları en başta ayarlayarak montaja başlayabilirsiniz. Bağlantı ile başlayabilirsiniz. Yatak bağlantısını yapmak için, yatak deliklerinin iç yüzeyini hafifçe zımparalayın ve ardından yatağı her iki uçtaki deliğe itin. Yatağı bir taraf aynı hizada olana kadar içeri ittiğinizden emin olun. Servo korna bağlantısını oluşturmak için iki dairesel servo boynuzu ve bunlarla birlikte gelen vidaları alın. Kornaları 3B baskıya yerleştirin ve iki deliği hizalayın, ardından vidayı 3B baskı tarafından takarak kornayı 3B baskıya vidalayın. Birlikte verilen vidalar biraz uzun olduğu ve dönerken servo motor gövdesiyle kesişeceği için 3D baskılı servo korna ara parçaları kullanmak zorunda kaldım. Bağlantılar oluşturulduktan sonra çeşitli tutucuları ve braketleri kurmaya başlayabilirsiniz.

Bunu her iki türdeki 4 bağlantı için de tekrarlayın.

Adım 5: Servo Braketlerin Hazırlanması

Servo Braketlerin Hazırlanması
Servo Braketlerin Hazırlanması
Servo Braketlerin Hazırlanması
Servo Braketlerin Hazırlanması
Servo Braketlerinin Hazırlanması
Servo Braketlerinin Hazırlanması

Diz servo braketini kurmak için 4 mm'lik bir cıvatayı delikten geçirin ve bir somunla sabitleyin. Bu, motor için ikincil aks olarak işlev görecektir. Kalça servo braketinden iki cıvatayı iki delikten geçirin ve iki somunla daha sıkın. Ardından, başka bir dairesel servo kornası alın ve kornalarla birlikte gelen iki vidayı kullanarak braketin hafifçe yükseltilmiş kısmına takın. Bir kez daha servo korna ara parçasını kullanmanızı tavsiye ederim, böylece vidalar servo için boşluğa taşmaz. Son olarak, yatak tutucu parçasını tutun ve deliğe bir yatağı itin. İyi oturması için iç yüzeyi hafifçe zımparalamanız gerekebilir. Ardından, yatak tutucu parçasının büküldüğü yöne doğru yatağın içine bir yatak itme kuvveti itin.

Parantezleri oluştururken yukarıda ekli resimlere bakın. Parantezlerin geri kalanı için bu işlemi tekrarlayın. Aynalı olanlar benzer, sadece her şey yansıtılır.

Adım 6: Bacakların Birleştirilmesi

Bacakların Montajı
Bacakların Montajı
Bacakların Montajı
Bacakların Montajı
Bacakların Montajı
Bacakların Montajı
Bacakların Montajı
Bacakların Montajı

Tüm bağlantılar ve braketler monte edildikten sonra robotun dört ayağını oluşturmaya başlayabilirsiniz. 4 x M4 cıvata ve somun kullanarak servoları braketlere takarak başlayın. Servonun aksını diğer taraftaki çıkıntılı cıvata ile hizaladığınızdan emin olun.

Ardından, servo korna bağlantı parçasını kullanarak kalça servosunu diz servosuna bağlayın. Konumu daha sonra ayarlamamız gerekebileceğinden, kornayı servo motor aksına sabitlemek için henüz bir vida kullanmayın. Karşı tarafta, iki yatağı içeren yatak bağlantısını somunlar kullanarak çıkıntılı cıvatalara monte edin.

Geri kalan üç ayak için bu işlemi tekrarlayın ve dört ayaklılar için 4 ayak hazır!

Adım 7: Gövdenin Montajı

Gövde Montajı
Gövde Montajı
Gövde Montajı
Gövde Montajı
Gövde Montajı
Gövde Montajı
Gövde Montajı
Gövde Montajı

Ardından, robotun gövdesini oluşturmaya odaklanabiliriz. Gövde, bacaklara 3. serbestlik derecesini veren dört servo motora sahiptir. Servoyu lazerle kesilmiş servo tutucu panele takmak için 4 x M4 cıvata ve uçlar kullanarak başlayın.

Not: Yukarıdaki resimlerde görüldüğü gibi servonun aks parçanın dış tarafında olacak şekilde takıldığından emin olunuz. Yönlendirmeyi göz önünde bulundurarak bu işlemi üç servo motorun geri kalanı için tekrarlayın.

Ardından, iki M4 somun ve cıvata kullanarak L-desteklerini panelin her iki tarafına takın. Bu parça, servo tutucu paneli üst panele sıkıca sabitlememizi sağlar. Bu işlemi iki L-destek ve ikinci servo motor setini tutan ikinci servo tutucu panel ile tekrarlayın.

L destekleri yerleştirildikten sonra, servo tutucu panelini üst panele takmak için daha fazla M4 somun ve cıvata kullanın. Dıştaki somun ve cıvata seti ile başlayın (ön ve arkaya doğru). Merkezi somunlar ve cıvatalar ayrıca arduino tutucu parçasını da tutar. Arduino tutucuyu üstten üst panele takmak için dört somun ve cıvata kullanın ve cıvataları aynı zamanda L destek deliklerinden geçecek şekilde hizalayın. Açıklamalar için yukarıda ekli resimlere bakın. Son olarak servo tutucu panellerdeki yuvalara dört somunu kaydırın ve servo tutucu panelleri üst panele sabitlemek için cıvataları kullanın.

8. Adım: Hepsini Bir Araya Getirmek

Hepsini bir araya koy
Hepsini bir araya koy
Hepsini bir araya koy
Hepsini bir araya koy
Hepsini bir araya koy
Hepsini bir araya koy

Bacaklar ve gövde monte edildikten sonra montaj işlemini tamamlamaya başlayabilirsiniz. Kalça servo braketine takılı servo boynuzlarını kullanarak dört ayağı dört servoya monte edin. Son olarak, kalça braketinin karşı aksını desteklemek için yatak tutucu parçalarını kullanın. Aksı yatağın içinden geçirin ve yerine sabitlemek için bir cıvata kullanın. İki M4 somun ve cıvata kullanarak yatak tutucularını üst panele takın.

Bununla dörtlülerin donanım montajı hazırdır.

Adım 9: Kablolama ve Devre

Kablolama ve Devre
Kablolama ve Devre
Kablolama ve Devre
Kablolama ve Devre
Kablolama ve Devre
Kablolama ve Devre
Kablolama ve Devre
Kablolama ve Devre

Servo motorlar için bağlantı sağlayan bir sensör kalkanı kullanmaya karar verdim. Dahili bir harici güç kaynağı bağlantı noktasına sahip olduğundan sensör kalkanı v5'i kullanmanızı tavsiye ederim. Ancak benim kullandığımda bu seçenek yoktu. Sensör kalkanına daha yakından baktığımda, sensör kalkanının Arduino'nun yerleşik 5v pininden güç çektiğini fark ettim (Arduino'ya zarar verme riskiniz olduğu için yüksek güçlü servo motorlar söz konusu olduğunda bu korkunç bir fikir). Bu sorunun çözümü, sensör kalkanındaki 5v pinini Arduino'nun 5v pinine bağlanmaması için yoldan çekmekti. Bu sayede artık Arduino'ya zarar vermeden 5v pin üzerinden harici güç sağlayabiliyoruz.

12 servo motorun sinyal pinlerinin bağlantıları aşağıdaki tabloda belirtilmiştir.

Not: Hip1Servo, gövdeye bağlı servoyu ifade eder. Hip2Servo, bacağa bağlı servoyu ifade eder.

Bacak 1 (ileri sol):

  • Hip1Servo >> 2
  • Hip2Servo >> 3
  • DizServo >> 4

Ayak 2 (sağ ileri):

  • Hip1Servo >> 5
  • Hip2Servo >> 6
  • DizServo >> 7

Bacak 3 (sol arka):

  • Hip1Servo >> 8
  • Hip2Servo >> 9
  • DizServo >> 10

Ayak 4 (sağ arka):

  • Hip1Servo >> 11
  • Hip2Servo >> 12
  • DizServo >> 13

Adım 10: İlk Kurulum

İlk kurulum
İlk kurulum
İlk kurulum
İlk kurulum

Karmaşık yürüyüşleri ve diğer hareketleri programlamaya başlamadan önce, her servonun sıfır noktalarını ayarlamamız gerekir. Bu, robota çeşitli hareketleri gerçekleştirmek için kullandığı bir referans noktası verir.

Robota zarar vermemek için servo korna bağlantılarını kaldırabilirsiniz. Ardından, aşağıda ekli kodu yükleyin. Bu kod, servoların her birini 90 dereceye yerleştirir. Servolar 90 derecelik pozisyona geldikten sonra, bacakları tamamen düz olacak ve gövdeye bağlı servo dörtlü üst panele dik olacak şekilde bağlantıları yeniden takabilirsiniz.

Bu noktada, servo boynuzların tasarımı nedeniyle, bazı bağlantılar hala tam olarak düz olmayabilir. Bunun çözümü, kodun 4. satırında bulunan zeroPositions dizisini ayarlamaktır. Her sayı, karşılık gelen servonun sıfır konumunu temsil eder (sıra, servoyu Arduino'ya bağladığınız sıra ile aynıdır). Bacaklar tamamen düz olana kadar bu değerleri biraz değiştirin.

Not: Bu değerler sizin için çalışmasa da kullandığım değerler şunlardır:

int sıfırKonumlar[12] = {93, 102, 85, 83, 90, 85, 92, 82, 85, 90, 85, 90};

Adım 11: Kinematik Hakkında Biraz

Kinematik Hakkında Biraz
Kinematik Hakkında Biraz
Kinematik Hakkında Biraz
Kinematik Hakkında Biraz
Kinematik Hakkında Biraz
Kinematik Hakkında Biraz

Dört ayaklıların koşma, yürüme ve diğer hareketler gibi faydalı eylemleri gerçekleştirmesini sağlamak için servoların hareket yolları şeklinde programlanması gerekir. Hareket yolları, uç efektörün (bu durumda ayaklar) boyunca hareket ettiği yollardır. Bunu başarmanın iki yolu vardır:

  1. Bir yaklaşım, çeşitli motorların eklem açılarını kaba kuvvetle beslemek olacaktır. Bu yaklaşım zaman alıcı, sıkıcı olabilir ve ayrıca yargı tamamen görsel olduğu için hatalarla dolu olabilir. Bunun yerine, istenen sonuçlara ulaşmanın daha akıllı bir yolu var.
  2. İkinci yaklaşım, tüm eklem açıları yerine uç efektörün koordinatlarını beslemek etrafında döner. Ters Kinematik olarak bilinen şey budur. Kullanıcı, koordinatları girer ve eklem açıları, uç efektörü belirtilen koordinatlarda konumlandırmak için ayarlanır. Bu yöntem, girdi olarak bir koordinat alan ve eklem açılarını veren bir kara kutu olarak düşünülebilir. Bu kara kutunun trigonometrik denklemlerinin nasıl geliştirildiğini merak edenler yukarıdaki diyagrama bakabilirler. İlgilenmeyenler için, denklemler zaten programlanmıştır ve uç efektörün kartezyen konumu olan x, y, z girişini alan ve motorlara karşılık gelen üç açıyı veren pos işlevi kullanılarak kullanılabilir.

Bu işlevleri içeren program bir sonraki adımda bulunabilir.

Adım 12: Dörtlü'nün Programlanması

Dörtlü Programlama
Dörtlü Programlama

Kablolama ve başlatma tamamlandıktan sonra robotu programlayabilir ve robotun ilginç görevleri yerine getirmesi için soğuk hareket yolları oluşturabilirsiniz. Devam etmeden önce, ekteki koddaki 4. satırı, başlatma adımında belirlediğiniz değerlerle değiştirin. Programı yükledikten sonra robot yürümeye başlamalıdır. Bazı eklemlerin ters olduğunu fark ederseniz, 5. satırdaki yön dizisindeki karşılık gelen yön değerini değiştirebilirsiniz (1 ise -1 ve -1 ise 1 yapın).

Adım 13: Nihai Sonuçlar: Deneme Süresi

Nihai Sonuçlar: Deneme Süresi
Nihai Sonuçlar: Deneme Süresi
Nihai Sonuçlar: Deneme Süresi
Nihai Sonuçlar: Deneme Süresi
Nihai Sonuçlar: Deneme Süresi
Nihai Sonuçlar: Deneme Süresi

Dört ayaklı robot, 5 ila 2 cm uzunluğunda değişen adımlar atabilir. Yürüyüşü dengeli tutarken hız da değiştirilebilir. Bu dörtlü, diğer çeşitli yürüyüşleri ve atlama veya görevleri tamamlama gibi diğer hedefleri denemek için sağlam bir platform sağlar. Kendi yürüyüşlerinizi oluşturmak için bacakların hareket yollarını değiştirmeye çalışmanızı ve çeşitli yürüyüşlerin robotun performansını nasıl etkilediğini keşfetmenizi tavsiye ederim. Ayrıca, engellerden kaçınma görevleri için mesafe ölçüm sensörleri veya engebeli arazide dinamik yürüyüşler için IMU gibi ek sensörler için robotun tepesinde birden fazla montaj noktası bıraktım. Robot son derece kararlı ve sağlam olduğundan ve kolayca devrilmeyeceğinden, robotun üstüne monte edilmiş ek bir kavrayıcı kolla deney yapılabilir.

Umarım bu Eğitilebilirliği beğenmişsinizdir ve kendinizinkini oluşturmanız için size ilham vermiştir.

Projeyi beğendiyseniz, "Hareket Ettirme Yarışması"nda bir oy bırakarak destekleyin.

Mutlu Yapım!

Hareket Ettir Yarışması 2020
Hareket Ettir Yarışması 2020
Hareket Ettir Yarışması 2020
Hareket Ettir Yarışması 2020

Make it Move Yarışması 2020'de İkincilik Ödülü

Önerilen: