İçindekiler:
- Adım 1: Robotun Temeli
- Adım 2: Tabanın Üstü
- Adım 3: Kızılötesi ve Ultrasonik Sensörler
- Adım 4: Kablolar
- Adım 5: Robotu İnşa Etmenin Son Adımı: Dekorasyon
- Adım 6: Program İçin Sözde Kod
- Adım 7: Program
- Adım 8: Program Blokları
- Adım 9: BİR LABİRE OLUŞTURUN
Video: LEGO Robot Bir Labirentten Geçiyor: 9 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
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
- LEGO Mindstorms EV3 seti
- LEGO Mindstorms EV3 ultrasonik sensör. EV3 setine dahil değildir.
- Labirent için oluklu mukavva. İki karton yeterli olacaktır.
- Bazı köşeleri ve duvarları sabitlemeye yardımcı olmak için küçük bir parça ince karton.
- Karton parçalarını birbirine bağlamak için yapıştırıcı ve bant.
- Labirentin çıkışını belirtmek için kırmızı bir tebrik kartı zarfı.
ALETLER
- Karton kesmek için maket bıçağı.
- 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:
- Sola dönmek mümkünse, bunu yapın.
- Aksi takdirde, mümkünse düz gidin.
- Sola veya düz gidemiyorsa, mümkünse sağa dönün.
- 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
İ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ü
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
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
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
Kanatlar ve yüzgeçler sadece dekorasyon amaçlıdır.
Adım 6: Program İçin Sözde Kod
- 3 saniye bekleyin ve “Git” deyin.
- Robotu dümdüz ilerlemeye başlayın.
- 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.
- 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.
- Sola dönmek mümkün değilse, Renk Sensörünün robotun önünde ne gördüğünü kontrol edin.
- Renk yoksa (yani nesne yoksa), 2. adıma dönün.
- Renk Kırmızı ise çıkış budur. Robotu durdurun, tantana oynayın ve programı durdurun.
-
Renk Kahverengi ise (yani önde kahverengi karton), robotu durdurun.
- 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.
- 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
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ı
- Programın sol tarafından başlayarak, bir program geliştirilirken Başlat Bloğu otomatik olarak bulunur.
- Sırada, programı başlattıktan sonra robotu labirentin girişine yerleştirmemiz için bize 3 saniye veren bir Bekleme Bloğu var.
- Bir Ses Bloğu robotun "Git" demesini sağlar.
- 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.
- 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.
- 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.
- Bir Ses Bloğu robotun "Sol" demesini sağlar.
- 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.
- 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.
- 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.
- A Motorları durdurmak için Direksiyon Bloğu Kapalı Modda Hareket ettirin.
- Bir Ses Bloğu bir tantana çalar.
- Bir Döngü Kesinti Bloğu Döngüden çıkar.
- A Motorları durdurmak için Direksiyon Bloğu Kapalı Modda Hareket ettirin.
- 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.
- Bir Ses Bloğu robotun “Doğru” demesini sağlar.
- 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.
- Bir Ses Bloğu robotun “Uh-oh” demesini sağlar.
- 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.
- 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.
- Döngünün çıkışında bir Durdurma Programı Bloğu bulunur.
Adım 9: BİR LABİRE OLUŞTURUN
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:
Bir Denetleyiciyi Bir Öykünücüye Nasıl Kurulur, Çalıştırır ve Bağlar: 7 Adım
Bir Denetleyiciyi Bir Emülatöre Nasıl Kurulur, Çalıştırır ve Bağlarsınız: Hiç oturup genç bir oyuncu olarak çocukluğunuzu hatırladınız mı ve bazen geçmişin o eski mücevherlerini tekrar ziyaret edebilmeyi dilediniz mi? Bunun için bir uygulama var… daha spesifik olarak, program yapan bir oyuncu topluluğu var
Canon Eos için bir HP49G-Grafik-Hesap Makinesi-Bir-Aralığa Dönüştürme: 4 Adım
Canon Eos için HP49G-Graphing-Calculator-Into-an-Intervalomet: HP49GPor Abraham [email protected]://www.flickr.com /photos/cacholongo/Componentes gerekli:2n3904,Resistencia 2,2k;Diodo 1n4001,Cable de conexiÃÂ&su
Bir Arduino'yu Kitaplık Olmadan Kayan Bir Metin Görüntülemek İçin Başka Bir Arduino Kullanarak Programlamak: 5 Adım
Bir Arduino'yu Kitaplık Olmadan Kayan Bir Metni Görüntülemek için Başka Bir Arduino Kullanarak Programlama: Sony Spresense veya Arduino Uno o kadar pahalı değil ve çok fazla güç gerektirmez. Ancak projenizin güç, alan ve hatta bütçe kısıtlaması varsa Arduino Pro Mini kullanmayı düşünebilirsiniz. Arduino Pro Micro'nun aksine, Arduino Pro Mi
Yarım Saatten Daha Kısa Bir Sürede Bir Raspberry Pi ve bir RTL-SDR Dongle Kullanarak Yalnızca APRS RX Amatör Radyosu Oluşturun: 5 Adım
Bir Amatör Radyo APRS RX Sadece Yarım Saatten Daha Kısa Bir Sürede Bir Raspberry Pi ve bir RTL-SDR Dongle Kullanarak Igate Yapın: Lütfen bunun artık oldukça eski olduğunu, dolayısıyla bazı bölümlerin yanlış ve güncelliğini yitirdiğini unutmayın. Düzenlemeniz gereken dosyalar değişti. Size görüntünün en son sürümünü vermek için bağlantıyı güncelledim (lütfen sıkıştırmayı açmak için 7-zip kullanın) ancak tam bilgi için
Robot Beyin: Bir Akşam Tek Kartlı Bir Bilgisayar Oluşturun: 11 Adım
Robot Beyin: Bir Akşam Tek Kartlı Bir Bilgisayar Oluşturun: Picaxe veya Arduino'nuzda bellek mi bitti? Ama bir PC iş için fazla mı? C, Basic, Forth, Pascal veya Fortran gibi dillerde programlanabilen bu açık kaynaklı tek kartlı bilgisayara bir göz atın. Bu kart, ucuz IC'ler kullanır ve del