İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Bu Eğitilebilir Kitapta, insanların çizdiği labirentleri çözen bir labirent çözme robotunun nasıl yapıldığını öğreneceksiniz.
Çoğu robot çizilmiş labirentlerin ilk türünü çözerken (çizgileri takip etmeniz gerekir, bunlar yollardır), normal insanlar ikinci tür labirentleri çizmeye eğilimlidir. Bunları bir robot için görmek çok daha zor ve daha seçici ama imkansız değil!
Adım 1: Adım 1: Labirent Çözme
Aslında birçok labirent çözme yöntemini düşündüm, ancak en çok kullanılan yöntem, neredeyse tüm labirentleri çözerken programlaması kolay olanıdır!
Bu yöntemde robota şunları söyleriz:
- Mümkün olduğunda sağa dönün
- Değilse, mümkünse ileriye doğru sürün
- Son çözüm olarak sola dönün ve
- Bir çıkmaza girerse geri dön
Resimde bir labirentin bu şekilde çözüldüğünü görüyorsunuz. Bu yönteme genellikle Duvar Takipçisi denir. Hedef, dış duvardaki bir çıkış olduğu sürece, Duvar Takipçisi onu bulacaktır.
Adım 2: Adım 2: Parçaları Sipariş Edin
Bu robot için ihtiyacımız olacak:
- 1× Arduino Uno
- 1× 4 AA pil tutucu
- 3× TCRT5000 sensörleri (QTR-1A)
- 2× 6V DC Motorlar
- 13× erkek-dişi devre tahtası teli
- 10× dişi-dişi devre tahtası teli
- En az 29 pinli pin başlığı
- Lehimleme ekipmanları
Ayrıca, Arduino'nuzda geliştirmek için Arduino IDE'yi indirin ve kurun ve Arduino'nuzun bilgisayarınıza bağlamak için A/B tipi USB kablosuyla birlikte geldiğinden emin olun.
Adım 3: Adım 3: Bir Sensörden Okuyun
TCRT5000 sensörleri, bir kızılötesi led (mavi küre) ve bir alıcıdan (siyah küre) oluşur.
Led beyaz bir yüzeye kızılötesi ışık yaydığında alıcıya yansır ve düşük bir değer döndürür (benim durumumda 40~60) Led siyah bir yüzeye ışık yaydığında emilir ve geri döner. yüksek değer (benim durumumda 700~1010)
İkinci görüntü, sensörün Arduino'ya nasıl bağlanacağını anlatan bir şema gösterir. Sensörü, led'i ve alıcıyı görebileceğiniz şekilde tutun ve doğru pinleri bağladığınızdan emin olmak için pinler şemaya doğru yönlendirilir.
Şimdi sadece Arduino'yu bilgisayarımıza bağlamamız, aşağıdaki kodu Arduino IDE'ye koymamız ve derlememiz gerekiyor:
// Sensörü #define FRONT_SENSOR A0void start() { Serial.begin(9600); }void loop() { int frontValue = analogRead(FRONT_SENSOR); Serial.println(frontValue);}
Şimdi sensörü beyaz ve siyah yüzeylere çok yakın hareket ettirirseniz, seri monitörde değerlerin buna göre değiştiğini görmelisiniz.