İçindekiler:

LEGO Robot Bir Labirentten Geçiyor: 9 Adım
LEGO Robot Bir Labirentten Geçiyor: 9 Adım

Video: LEGO Robot Bir Labirentten Geçiyor: 9 Adım

Video: LEGO Robot Bir Labirentten Geçiyor: 9 Adım
Video: LEGO HAPİSHANEDEN KAÇIŞ DİLA KENT 2024, Kasım
Anonim
Image
Image
Robotun Temeli
Robotun Temeli

Bu, bir labirentten çıkışa gitmek için tasarlanmış basit, otonom bir robottur. LEGO Mindstorms EV3 kullanılarak yapılmıştır. EV3 Yazılımı bir bilgisayarda çalışır ve daha sonra EV3 Brick adı verilen bir mikro denetleyiciye indirilen bir program oluşturur. Programlama yöntemi simge tabanlı ve üst düzeydir. Çok kolay ve çok yönlü.

PARÇALAR

  1. LEGO Mindstorms EV3 seti
  2. LEGO Mindstorms EV3 ultrasonik sensör. EV3 setine dahil değildir.
  3. Labirent için oluklu mukavva. İki karton yeterli olacaktır.
  4. Bazı köşeleri ve duvarları sabitlemeye yardımcı olmak için küçük bir parça ince karton.
  5. Karton parçalarını birbirine bağlamak için yapıştırıcı ve bant.
  6. Labirentin çıkışını belirtmek için kırmızı bir tebrik kartı zarfı.

ALETLER

  1. Karton kesmek için maket bıçağı.
  2. Kesme işlemine yardımcı olmak için çelik cetvel.

Labirent-ÇÖZME YÖNTEMİ

Bir labirentte gezinmenin birkaç yöntemi vardır. Bunları incelemekle ilgileniyorsanız, aşağıdaki Wikipedia makalesinde çok iyi açıklanmıştır:

Sol duvar takipçisi kuralını seçtim. Buradaki fikir, robotun labirentten geçerken aşağıdaki kararları vererek bir duvarı sol tarafında tutmasıdır:

  1. Sola dönmek mümkünse, bunu yapın.
  2. Aksi takdirde, mümkünse düz gidin.
  3. Sola veya düz gidemiyorsa, mümkünse sağa dönün.
  4. Yukarıdakilerin hiçbiri mümkün değilse, bu bir çıkmaz sokak olmalıdır. Arkanı dön.

Dikkat edilmesi gereken bir nokta, labirentte bir döngü varsa yöntemin başarısız olabileceğidir. Döngünün yerleşimine bağlı olarak robot, döngünün etrafında ve çevresinde dönmeye devam edebilir. Bu problem için olası bir çözüm, robotun bir döngüye girdiğini fark etmesi durumunda sağ duvar takipçisi kuralına geçmesi olabilir. Bu iyileştirmeyi projeme dahil etmedim.

ROBOT OLUŞTURMA ADIMLARI

LEGO Mindstorms EV3 çok yönlü olmasına rağmen, bir Brick'e bağlı her sensör türünden birden fazlasına izin vermez. İki veya daha fazla Tuğla zincirleme bağlanabilir, ancak başka bir Tuğla satın almak istemedim ve bu nedenle şu sensörleri kullandım (üç ultrasonik sensör yerine): kızılötesi sensör, renk sensörü ve ultrasonik sensör. Bu işe yaradı. Aşağıdaki fotoğraf çiftleri robotun nasıl inşa edileceğini gösteriyor. Her çiftin ilk fotoğrafı gerekli parçaları gösterir ve ikinci fotoğraf birbirine bağlı aynı parçaları gösterir.

Adım 1: Robotun Temeli

Robotun Temeli
Robotun Temeli

İlk adım, gösterilen parçaları kullanarak robotun tabanını oluşturmaktır. Robot tabanı baş aşağı gösterilir. Robotun arkasındaki küçük L şeklindeki kısım, sırt için bir destektir. Robot hareket ettikçe kayar. Bu iyi çalışıyor. EV3 kitinde yuvarlanan top tipi bir parça yoktur.

Adım 2: Tabanın Üstü

Tabanın Üstü
Tabanın Üstü
Tabanın Üstü
Tabanın Üstü
Tabanın Üstü
Tabanın Üstü

Sonraki 3 adım robotun tabanının üst kısmı, renk sensörü ve tümü 10 inç (26 cm) kablolar olan kablolar içindir.

Adım 3: Kızılötesi ve Ultrasonik Sensörler

Kızılötesi ve Ultrasonik Sensörler
Kızılötesi ve Ultrasonik Sensörler
Kızılötesi ve Ultrasonik Sensörler
Kızılötesi ve Ultrasonik Sensörler

Ardından, kızılötesi sensör (robotun sol tarafında) ve ultrasonik sensör (sağda) bulunur. Ayrıca, Tuğlayı üste takmak için 4 pim.

Kızılötesi ve ultrasonik sensörler, normal yatay yerine dikey olarak yerleştirilmiştir. Bu, duvarların köşelerinin veya uçlarının daha iyi tanımlanmasını sağlar.

Adım 4: Kablolar

kablolar
kablolar

Brick'i takın ve kabloları aşağıdaki gibi bağlayın:

  • Port B: sol büyük motor.
  • Port C: sağ büyük motor.
  • Port 2: ultrasonik sensör.
  • Bağlantı noktası 3: renk sensörü.
  • Port 4: kızılötesi sensör.

Adım 5: Robotu İnşa Etmenin Son Adımı: Dekorasyon

Robotu İnşa Etmenin Son Adımı: Dekorasyon
Robotu İnşa Etmenin Son Adımı: Dekorasyon
Robotu İnşa Etmenin Son Adımı: Dekorasyon
Robotu İnşa Etmenin Son Adımı: Dekorasyon
Robotu İnşa Etmenin Son Adımı: Dekorasyon
Robotu İnşa Etmenin Son Adımı: Dekorasyon

Kanatlar ve yüzgeçler sadece dekorasyon amaçlıdır.

Adım 6: Program İçin Sözde Kod

  1. 3 saniye bekleyin ve “Git” deyin.
  2. Robotu dümdüz ilerlemeye başlayın.
  3. Sola dönmek mümkünse (yani kızılötesi sensör yakındaki bir nesneyi algılamıyorsa), “Sol” deyin ve sola gidin.
  4. Yanlış bir sola dönüşten kaçınmak için yaklaşık 6 inç (15 cm) ileri gidin. Bunun nedeni, robot döndükten sonra sensörün az önce geldiği uzun alanı görmesi ve robotun sola dönmesi gerektiğini düşünmesidir ki bu doğru bir şey değildir. 2. adıma geri dönün.
  5. Sola dönmek mümkün değilse, Renk Sensörünün robotun önünde ne gördüğünü kontrol edin.
  6. Renk yoksa (yani nesne yoksa), 2. adıma dönün.
  7. Renk Kırmızı ise çıkış budur. Robotu durdurun, tantana oynayın ve programı durdurun.
  8. Renk Kahverengi ise (yani önde kahverengi karton), robotu durdurun.

    1. Sağa dönmek mümkünse (yani ultrasonik sensör yakındaki bir nesneyi algılamıyorsa), “Sağ” deyin ve sağa gidin. 2. adıma geri dönün.
    2. Sağa dönmek mümkün değilse, “Uh-oh” deyin, yaklaşık 5 inç (12,5 cm) geri gidin ve arkanızı dönün. 2. adıma geri dönün.

Adım 7: Program

programı
programı

LEGO Mindstorms EV3, simge tabanlı çok kullanışlı bir programlama yöntemine sahiptir. Bloklar, bilgisayardaki ekranın alt kısmında gösterilir ve bir program oluşturmak için programlama penceresine sürükleyip bırakılabilir. Ekran görüntüsü bu proje için programı gösterir. Bloklar bir sonraki adımda açıklanmıştır.

Programı indirmeyi nasıl kuracağımı çözemedim arkadaşlar, bu yüzden Bloklar bir sonraki adımda anlatılıyor. Her Blokta seçenekler ve parametreler bulunur. Çok kolay ve çok yönlü. Programı geliştirmeniz ve/veya ihtiyaçlarınıza göre değiştirmeniz fazla zaman almamalıdır. Her zaman olduğu gibi, programı geliştirirken periyodik olarak kaydetmek iyi bir fikirdir.

EV3 Brick bilgisayara bir USB kablosu, Wi-Fi veya Bluetooth ile bağlanabilir. Bağlandığında ve açıldığında bu, bilgisayardaki EV3 penceresinin sağ alt köşesindeki küçük bir pencerede gösterilir. En sağdaki “EV3” kırmızıya döner. Bu ekran Port Görünümü'ne ayarlandığında, her sensörün neyi algıladığını gerçek zamanlı olarak gösterir. Bu, deneme yapmak için kullanışlıdır.

Bu programı kurarken, soldan sağa ve yukarıdan aşağıya doğru çalışmanızı ve diğer Blokları içeri sürüklemeden önce Döngü ve Anahtar Bloklarını büyütmenizi öneririm. Büyütmeden önce içine ek Bloklar yerleştirmeye çalışırken karışık sorunlarla karşılaştım.

Adım 8: Program Blokları

  1. Programın sol tarafından başlayarak, bir program geliştirilirken Başlat Bloğu otomatik olarak bulunur.
  2. Sırada, programı başlattıktan sonra robotu labirentin girişine yerleştirmemiz için bize 3 saniye veren bir Bekleme Bloğu var.
  3. Bir Ses Bloğu robotun "Git" demesini sağlar.
  4. Bir Döngü Bloğu, programın çoğunu içerir. Ekran 4 veya 5 kez uzaklaştırılmalı ve bu Döngü Bloğu, Blokları yerleştirmeye başlamadan önce Programlama Tuvalinin hemen hemen sağ kenarına kadar büyütülmelidir. Daha sonra küçültülebilir.
  5. Döngü içindeki ilk Blok, Direksiyon sıfıra ve Güç 20'ye ayarlanmış bir Hareketli Direksiyon Bloğudur. Bu, motorları düşük hızda dümdüz çalıştırır. Daha yüksek bir hız, sonraki adımlarda konuşurken ileri doğru devam ettiğinde robotu çok fazla hareket ettirir.
  6. Kızılötesi Sensör Yakınlık Modundaki bir Anahtar Bloğu, 30 değerinden daha uzak herhangi bir nesne olup olmadığını kontrol eder. Bu, kahverengi karton için yaklaşık 9 inç (23 cm)'ye eşittir. Değer 30'dan büyükse, Blok 7, 8 ve 9 yürütülür, aksi takdirde program aşağıdaki Blok 10'a gider.
  7. Bir Ses Bloğu robotun "Sol" demesini sağlar.
  8. Direksiyon -45'e, Güç 20'ye, Döndürmeler 1.26'ya ve Sonda Fren Doğru'ya ayarlı bir Hareket Direksiyon Bloğu. Bu, robotun sola dönmesini sağlar.
  9. Direksiyon sıfıra, Güç 20'ye, Döndürmeler 1.2'ye ve Sonda Fren Doğru olarak ayarlanmış bir Direksiyon Bloğu Taşı. Bu, yanlış bir sola dönüşü önlemek için robotun yaklaşık 6 inç (15 cm) ileri gitmesini sağlar.
  10. Renk Sensörü Renk Ölçümü Modundaki bir Anahtar Bloğu, robotun önünde hangi rengin olduğunu kontrol eder. Renk yoksa (yani nesne yoksa), program döngünün sonuna gider. Renk Kırmızı ise, Blok 11, 12 ve 13 yürütülür. Renk Kahverengi ise program aşağıdaki Blok 14'e gider.
  11. A Motorları durdurmak için Direksiyon Bloğu Kapalı Modda Hareket ettirin.
  12. Bir Ses Bloğu bir tantana çalar.
  13. Bir Döngü Kesinti Bloğu Döngüden çıkar.
  14. A Motorları durdurmak için Direksiyon Bloğu Kapalı Modda Hareket ettirin.
  15. Ultrasonik Sensör Karşılaştırma Mesafesi İnç Modundaki bir Anahtar Bloğu, 8 inçten (20 cm) daha uzakta herhangi bir nesne olup olmadığını kontrol eder. 8 inçten fazlaysa, Blok 16 ve 17 yürütülür, aksi takdirde program aşağıdaki Blok 18'e gider.
  16. Bir Ses Bloğu robotun “Doğru” demesini sağlar.
  17. Direksiyon -55'e, Güç -20'ye, Döndürmeler 1.1'e ve Sonda Fren Doğru'ya ayarlanmış bir Hareket Direksiyon Bloğu. Bu, robotun sağa dönmesini sağlar.
  18. Bir Ses Bloğu robotun “Uh-oh” demesini sağlar.
  19. Sol Güç -20'ye, Sağ Güç -20'ye, Döndürmeler 1'e ve Uçta Fren Doğru'ya ayarlanmış bir Tank Bloğu Taşı. Bu, robotun dönmesi için yer açmak için yaklaşık 5 inç (12,5 cm) geriye gitmesini sağlar.
  20. Sol Güç -20'ye, Sağ Güç 20'ye, Döndürmeler 1.14'e ve Uçta Fren Doğru'ya ayarlanmış bir Tank Bloğu Taşı. Bu robotun dönmesini sağlar.
  21. Döngünün çıkışında bir Durdurma Programı Bloğu bulunur.

Adım 9: BİR LABİRE OLUŞTURUN

LAbirent OLUŞTUR
LAbirent OLUŞTUR
LAbirent OLUŞTUR
LAbirent OLUŞTUR
LAbirent OLUŞTUR
LAbirent OLUŞTUR

Labirent için iki oluklu mukavva karton yeterli olmalıdır. Labirent duvarlarını 5 inç (12,5 cm) yüksekliğinde yaptım, ancak oluklu mukavvanız azsa 4 inç (10 cm) de işe yarayacaktır.

İlk olarak, kartonların duvarlarını alttan 10 inç (25 cm) olacak şekilde kestim. Sonra duvarları alttan 5 inç kestim. Bu, birkaç 5 inçlik duvar sağlar. Ayrıca, stabilite için duvarlara yaklaşık 1 inç (2,5 cm) bağlı kalacak şekilde kartonların alt kısımlarını kestim.

Çeşitli parçalar kesilip yapıştırılabilir veya labirenti oluşturmak için gereken her yere bantlanabilir. Çıkmazlı herhangi bir yolda duvarlar arasında 12 inç (30 cm) boşluk olmalıdır. Bu mesafe robotun dönmesi için gereklidir.

Labirentin bazı köşelerinin güçlendirilmesi gerekebilir, Ayrıca, düzleştirilmiş bir karton köşe içeriyorsa bazı düz duvarların bükülmemesi gerekir. Bu yerlerin altına küçük ince karton parçaları gösterildiği gibi yapıştırılmalıdır.

Çıkışta gösterildiği gibi yarım kırmızı tebrik kartı zarfı ve 2 parça ince kartondan yapılmış bir tabandan oluşan kırmızı bir bariyer vardır.

Bir uyarı, labirentin büyük olmaması gerektiğidir. Robotun dönüşleri uygun olandan hafif bir açıdaysa, tutarsızlıklar birkaç dönüşten sonra toplanır. Örneğin, sola dönüş 3 derece kapalıysa, 5 sola dönüşten sonra robot 15 derece dönüyor. Büyük bir labirent, küçük bir labirentten daha fazla dönüşe ve daha uzun bir yola sahip olacaktı ve robot duvarlara çarpabilirdi. Yaptığım küçük labirentte bile başarılı bir sürüş elde etmek için dönüşlerin Rotasyon ayarlarıyla birkaç kez oynamam gerekti.

GELECEKTE GELECEK GELİŞTİRMELER

Açık bir takip projesi, robotun labirentte gezinirken labirentte doğrudan bir yol belirleyebilmesini ve ardından bu doğrudan yolu (çıkmaz noktalardan kaçınarak) sürebilmesini sağlamaktır.

Bu, mevcut projeden çok daha karmaşık. Robot kat ettiği yolu hatırlamalı, çıkmazları kaldırmalı, yeni yolu kaydetmeli ve ardından yeni yolu izlemelidir. Yakın gelecekte bu proje üzerinde çalışmayı planlıyorum. Dizi İşlem Bloklarını ve matematikle ilgili bazı Blokları kullanarak LEGO Mindstorms EV3 ile başarmanın mümkün olduğunu umuyorum.

SON SÖZ

Bu eğlenceli bir projeydi. Umarım siz de ilginç bulursunuz.

Önerilen: