İçindekiler:

Kulüpler, Öğretmenler için Makerspaces vb. için basit "Robot Kiti": 18 Adım
Kulüpler, Öğretmenler için Makerspaces vb. için basit "Robot Kiti": 18 Adım

Video: Kulüpler, Öğretmenler için Makerspaces vb. için basit "Robot Kiti": 18 Adım

Video: Kulüpler, Öğretmenler için Makerspaces vb. için basit
Video: Kütüphane Haftası Söyleşileri: “Kütüphanelerde Makerspace” 2024, Kasım
Anonim
Image
Image
Basit
Basit

Fikir, "Orta TN Robotik Sanatlar Topluluğu" üyelerimiz için küçük ama genişletilebilir bir kit oluşturmaktı. Özellikle çizgi takibi ve hızlı yolculuk gibi yarışmalar için kit etrafında atölye çalışmaları planlıyoruz.

Küçük boyutuna rağmen büyük G/Ç sayısı nedeniyle bir Arduino Nano'yu dahil ettik. Bir Breakout kartının eklenmesiyle, tüm pinlere kolayca erişilebilir ve Servo dostudur. Standart pillerden vazgeçtik ve USB şarj kablosu ve güç LED durumu içeren 3350mAh Güç Bankası seçtik. USB kablosu, programlama kablosu olarak ikiye katlanır. Yapıcıların hızlı ve kolay bir şekilde ilerlemesini sağlamak için sürücü için iki Sürekli Döndürme servosu. Küçük bir devre tahtası, hızlı ve kolay bir şekilde prototip oluşturmanıza olanak tanır. 3mm Delikler, bileşen eklemenize izin vermek için kartın çevresini kaplar.

Kulüp üyelerimiz için kiti MALİYETE satıyoruz ve bir tane almak için hazır bulunmanız gerekiyor. Aslında tasarlamak, bir müfredat oluşturmak, parçaları (3D baskı, Lazer kesim vb) yapmak ve hepsini bir araya getirmek için gereken zamanı hesaba katarsanız para kaybediyoruz. Kit maliyetimizi 29,99 dolara indirdik. Daha uzun nakliye süreleri olan parçalar sipariş ederseniz bu fiyatı daha düşük alabilirsiniz. Bunun piyasadaki en ucuz kit olmadığının farkındayız, ancak bir araya getirilmesi günler almayan, inşası kolay ve genişletilebilir bir şey bulmaya önem veriyoruz. Aslında, bu kitin hareket etmesi bir saatten az sürmelidir.

Gereçler

Birincil Parçalar:

  • Arduino Nano
  • Pil Güç Bankası
  • Robot Çerçevesi
  • SliderM-F Jumper'lar
  • Ultrasonik sensör
  • Adet 3 - 3mmx10mm 3m Somunlu Vidalar
  • Adet 3 - 3mmx3mm ara parçası
  • Adet 2 - Sürekli Döndürme SF90R Servo
  • Adet 2 - Tekerlekler 52ish mm Tekerlekler
  • Adet 4 - 6" Zip Bağları (Yaklaşık 3,5 mm genişliğinde ince olanları alın) Harbour Freight'ın çeşitli paketleri iyi çalışır.
  • Mini Breadboard
  • Arduino Nano Kalkanı

İsteğe bağlı:

Kablo sarma

Aletler:

  • Nano üzerindeki başlıkları lehimlemek için havya
  • Tutkal tabancası
  • Temel tornavida

Adım 1: Çerçeve

Çerçeve
Çerçeve
Çerçeve
Çerçeve

İnşaatçıların hızlı bir şekilde harekete geçmesine yardımcı olmak için, parçaların nereye yerleştirilmesi gerektiğini belirtmek için çerçevenin her iki tarafına metin içeren bir taslak çizdik.

Lazer kesici erişimine sahip olduğumuz için şanslıydık. Bunu yapmazsanız, kullanabilecekleriniz olup olmadığını veya çerçeveyi sizin için kesmek isteyip istemediklerini görmek için yerel yapımcılara ulaşmanızı öneririz.

Tabanı yazdırmak için bir 3D yazıcı da kullanılabilir. Her ikisiyle de kullanmanız için SVG ve STL'yi dahil ettik.

Kitlerimizde 3mm akrilik kullandık. Ahşap, karton, köpük tahta vb. gibi diğer ortamları kullanabilirsiniz.

Adım 2: Arduino'yu Hazırlayın

Arduino'yu hazırlayın
Arduino'yu hazırlayın
Arduino'yu hazırlayın
Arduino'yu hazırlayın

Başlıkları Arduino'ya lehimlemeyi kolaylaştırmak için erkek başlıkları Arduino kalkanına yerleştirin. Arduino Nano'yu başlıklarla hizalayın. Kalkan ve kart üzerindeki işaretlere dikkat edin. Tüm pimleri lehimleyin ve işiniz bitti.

Adım 3: Arduino Kalkanını Monte Edin

Arduino Kalkanını Monte Edin
Arduino Kalkanını Monte Edin
Arduino Kalkanını Monte Edin
Arduino Kalkanını Monte Edin
Arduino Kalkanını Monte Edin
Arduino Kalkanını Monte Edin
  1. 3 sarı aralayıcıyı önceden kesilmiş veya 3B yazdırılmış Arduino delikleriyle hizalayın.
  2. Arduino kalkanını takmak için M3x10 vidaları ve somunları kullanın. Rahat, sıkı değil. Vidaların gevşemesinden endişeleniyorsanız, somunun ucuna bir dokunuşla sıcak tutkal ekleyin. Kalkandaki 4. delik için endişelenmeyin, çünkü buna ihtiyaç duyulmaz ve daha sonra yapım sırasında Güç Bankasına müdahale eder.

Adım 4: Servoları Monte Edin

Servoları monte edin
Servoları monte edin
Servoları monte edin
Servoları monte edin
Servoları monte edin
Servoları monte edin
Servoları monte edin
Servoları monte edin
  1. Çerçeve üzerindeki Servo anahattının yönünü not edin. (3D baskılı versiyonda gösterilmemiştir, ancak resimlere bakın)
  2. İki fermuarı, Zip Kravatın başı çerçevenin üst tarafında olacak şekilde dikdörtgen yuvalardan geçirin.
  3. Servoları takın ve kablo demetini arkaya doğru dikdörtgen yuvalardan geçirin. Zip Bağlarını sıkın. Servo kendini güvende hissetmiyorsa, servoların çerçeveye temas ettiği kenarlara biraz sıcak tutkal ekleyebilirsiniz.

Adım 5: Güç Bankası Montajı

Güç Bankası Montajı
Güç Bankası Montajı
Güç Bankası Montajı
Güç Bankası Montajı
Güç Bankası Montajı
Güç Bankası Montajı
  1. Arduino ve Breadboard konumu arasında Zip Kravatın başı üst tarafta olacak şekilde gösterilen yönde bir Zip Kravat çalıştırın. Gevşek tutun.
  2. Arkadan bir Zip Kravat çalıştırın. Gevşek tutun.
  3. Güç Bankasını içeri kaydırın ve Zip Bağlarını sıkıca sıkın. Yönü not edin.

Not: Ön taraf için resimlerde görülen 3D baskılı "kaydırıcı" kullanıyoruz. Ancak, bunun çok fazla sürtünmeye neden olduğunu gördük, bu nedenle şişe kapağı, plastik mobilya planörü vb. gibi diğer fikirleri denemek isteyebilirsiniz.

Adım 6: Tekerlekler

tekerlekler
tekerlekler
tekerlekler
tekerlekler
tekerlekler
tekerlekler
tekerlekler
tekerlekler

Tekerleklerimizi EVA köpükten kesmek için bir lazer kesici kullandık. Ne istersen kullanabilirsin. Kavanoz kapakları, 3D baskılı, eski oyuncak tekerlekler vb. Yaklaşık 52 mm çapında tekerlekler bulmaya çalışın.

  1. Küçük philps başlı vidanın dairesel servo kornayı monte etmesine izin vermek için direksiyonunuzun ortasında bir açıklık olduğundan emin olun.
  2. Servolarınızla birlikte verilen servo kornayı ortalayın ve tekerleklere yapıştırın. Ortadaki deliğe yapıştırıcı girmemeye dikkat edin ve yalpalamayı azaltmak için tekerleği servo korna ile birlikte tutun.
  3. Küçük yıldız vidayı kullanarak tekerlekleri servolara takın. Sıkı değil.

7. Adım: Breadboard

ekmek tahtası
ekmek tahtası
ekmek tahtası
ekmek tahtası
ekmek tahtası
ekmek tahtası

Breadboard'un arkasını soyun. Çerçevenin üstündeki gravürle hizalayın ve takın. 3D baskılı çerçeve kullanıyorsanız, baskının dikdörtgen girintili kısmını kullanın.

8. Adım: Harekete Geçme Zamanı

Harekete Geçme Zamanı
Harekete Geçme Zamanı

Harekete geçmek için SERVOS'u bağlayın.

  1. Arduino'ya en yakın turuncu kablo ile sol servodan (arkadan bakıyorsanız Servo sola) kablo demetini Pin 10'a takın.
  2. Sağ servodan gelen kablo demetini (arkadan bakıyorsanız Servo sağa) Arduino'ya en yakın turuncu kabloyla Pin 11'e takın.

9. Adım: Eklenti: Botunuza Görüş Verme

Eklenti: Botunuza Görüş Sağlamak
Eklenti: Botunuza Görüş Sağlamak
Eklenti: Botunuza Görüş Sağlamak
Eklenti: Botunuza Görüş Sağlamak

Şimdi botun bir şeylere çarpmasını önlemek için bir şeyler eklememiz gerekiyor. Ultrasonik sensörü kullanın. Sensörü resimde gösterildiği gibi Breadboard'a takın.

*Kablolamanın nasıl yapılacağına ilişkin talimatta aşağıdaki kablo şemasına bakın.

Adım 10: Eklenti: IR Sensörü Üzerinden Sınır Tespiti

Eklenti - IR Sensörü ile Sınır Tespiti
Eklenti - IR Sensörü ile Sınır Tespiti
Eklenti - IR Sensörü ile Sınır Tespiti
Eklenti - IR Sensörü ile Sınır Tespiti

Botunuzun masa, arena vb. kenarlardan düşmemesi için çizgi sensörü ekleyelim. Bir QTR-MD-06RC Yansıma Sensör Dizisi kullanıyoruz. Altı kızılötesi emitör/dedektör aşağı bakar ve yüzeyden sensöre olan mesafeyi ölçer.

Sensörü eklemek için 4 küçük 2mm vidayı, IR sensörü ayırıcısını (Gülen Yüz) tutun. Doğru yönlendirme için resimlere bakın.

*Kablolamanın nasıl yapılacağına ilişkin talimatta aşağıdaki kablo şemasına bakın.

Adım 11: Programlama - Kurulum

Programlama - Kurulum
Programlama - Kurulum

Arduino Yazılımını İndirin.

Standart talimatları izleyin.

Kurduktan sonra, yazılımı açın ve bir Arduino Nano için kurulum yapın. Bu, farklı üreticiler arasında değişiklik gösterebilir ancak parça listesinden bir tane varsa:

  1. "Araçlar" ı açın
  2. Kart türü olarak “Arduino Nano”yu seçin
  3. İşlemci türü olarak Atmega328P'yi (Eski Önyükleyici) seçin
  4. Arduino Nano'yu şarj cihazınızla birlikte verilen Mikro USB kablosunu kullanarak PC'nizdeki herhangi bir USB bağlantı noktasına bağlayın. "Bilinmeyen Aygıt" gibi bir hata alırsanız, doğru sürücüleri yüklemeniz gerekebilir. Yardım etmek için bu talimat belgesinin Ek bölümüne bakın.

Adım 12: Ultrasonik Sensör için Kodlara Genel Bakış

Kod çok basittir ve iki kitaplık kullanır - Servo.h ve NewPing.h. Servo.h, Arduino vakfı tarafından sağlanan yerleşik bir kitaplıktır ve her bir servoya PWM (darbe genişliği modülasyonlu) sinyallerini kontrol etmek için kullanılır. Bu kütüphaneye referans burada bulunabilir:

NewPing.h, daha önce de belirtildiği gibi, Tim Eckel'in 3. taraf kitaplığıdır. Bize zamana dayalı ölçüm dünyasına basit bir arayüz vermek için kullanılır. Bu kütüphaneye referans burada bulunabilir:

Bu kurulum için temel bir ileri, sol, sağ, tekrar örneği oluşturduk. Üyelerimize hem ultrasonik sensörün hem de iki sürekli rotasyon sunucusunun (biri diğerinin tersi) nasıl kullanılacağını gösterecek bir başlangıç noktası vermek istedik. Bizim döngümüzde robot ileriyi tarar ve eğer temizse ilerlemeye devam eder. Ancak yakın olduğunu ve nesne olduğunu algılarsa (ping süresi seçtiğimiz minimumdan daha kısadır), o zaman durur, sola döner, tarar, sağa döner, tekrar tarar ve daha açık olan yöne gider.

İki servonun her birine ileri için farklı komutlar verildiğini fark edebilirsiniz - bunun nedeni servoların kasaya zıt yönlere bakan monte edilmiş olmasıdır. Bu nedenle, botun bir dairenin aksine ilerlemesi için her servonun zıt yönlerde hareket etmesi gerekir. Aynı şey ters yönde hareket etmek istediğinizde de geçerlidir.

Bu örnek, çok temel engellerden kaçınmayı gösterir, ancak büyük ölçüde geliştirilebilir. Sizin için örnek "ev ödevi", başlangıçta alanın 360 derecelik bir taramasını yapmak ve en açık yolu seçmek olabilir. Bir yandan diğer yana daha geniş tarayın ve botun "kutuya alınıp alınmadığını" görün. Bir labirenti çözmek için diğer sensörlerle birleştirin.

Adım 13: SUMO Kodunu Kullanarak Satır İzleme İçin Kod Genel Bakış

Yakında gelecek.

Adım 14: Programlama - Kitaplıklar

Programlama - Kitaplıklar
Programlama - Kitaplıklar

Doğru kitaplıkların kurulu olduğundan emin olarak başlayın.

Servolar için Servo.h kitaplığı varsayılan olmalıdır.

Ultrasonik Sensör HC-SR04 için:

  1. Yazılımda Sketch>Kütüphaneyi Dahil Et>Kütüphaneleri Yönet'e gidin.
  2. Tim Eckel tarafından "NewPing" arayın.
  3. En son sürümü seçin ve yükleyin.

QTR-MD-06RC Yansıma Sensörü Dizisi için:

  1. Yazılımda Sketch>Kütüphaneyi Dahil Et>Kütüphaneleri Yönet'e gidin.
  2. Pololu tarafından "QTRSensors" arayın.
  3. En son sürümü seçin ve yükleyin.

Adım 15: Program

programı
programı
  1. Yalnızca Ping Sensörü için MTRAS_Kit_Ping_Sensor_1_18_20.ino dosyasını indirin.
  2. SUMO için programlanmış Ping Sensörlü Hat Sensörü için MTRAS_Kit_Sumo_1_18_2020.ino dosyasını indirin.
  3. Arduino'nuzu USB üzerinden takın.
  4. COM bağlantı noktasını seçin (resme bakın). COM bağlantı noktanız farklı olabilir.
  5. Hata olmadığından emin olmak için onay işaretine tıklayın.
  6. Her şey kontrol edildiyse programı Arduino'ya indirmek için sağ oka tıklayın.
  7. Tamamlandığında, USB kablosunu çıkarın ve Güç Bankasına takın.

Adım 16: Bağlantı Şeması

Bağlantı şeması
Bağlantı şeması

Robotunuzu bağlamak için aşağıdaki resmi kullanın.

  • Ultrasonik sensör için m-f atlama telleri kullanın.
  • Hat sensörü için mm atlama tellerini kullanın.
  • Servolar için 3 pinli konektörü doğrudan pinlere takabilirsiniz.

Adım 17: Tebrikler!!! Bir Robot Yaptınız

Image
Image
Tebrikler!!! Bir Robot Yaptınız
Tebrikler!!! Bir Robot Yaptınız
Tebrikler!!! Bir Robot Yaptınız
Tebrikler!!! Bir Robot Yaptınız

Ultrasonik kod için robot hareket etmeye başlamalıdır. 35 cm içinde bir nesne algıladığında duracak, sola hareket edecek ve hızlı bir ölçüm yapacak, ardından sağa hareket edecek ve aynısını yapacaktır. Hangi tarafın en yüksek mesafeye sahip olduğunu belirler ve o yönde hareket eder.

Önerilen: