Spisu treści:

Intuicyjny robot rozwiązujący labirynt: 3 kroki
Intuicyjny robot rozwiązujący labirynt: 3 kroki

Wideo: Intuicyjny robot rozwiązujący labirynt: 3 kroki

Wideo: Intuicyjny robot rozwiązujący labirynt: 3 kroki
Wideo: I Ty możesz pracować jako programista [3] Wprawmy robota w ruch 2024, Listopad
Anonim
Intuicyjny robot rozwiązujący labirynt
Intuicyjny robot rozwiązujący labirynt
Intuicyjny robot rozwiązujący labirynt
Intuicyjny robot rozwiązujący labirynt
Intuicyjny robot rozwiązujący labirynt
Intuicyjny robot rozwiązujący labirynt

W tej instrukcji dowiesz się, jak zrobić robota rozwiązującego labirynty, który rozwiązuje labirynty narysowane przez ludzi.

Podczas gdy większość robotów rozwiązuje pierwszy rodzaj narysowanych labiryntów (musisz podążać za liniami, są to ścieżki), normalni ludzie mają tendencję do rysowania drugiego rodzaju labiryntów. Są o wiele trudniejsze i bardziej wybredne dla robota, ale nie niemożliwe!

Krok 1: Krok 1: Rozwiązywanie labiryntu

Krok 1: Rozwiązywanie labiryntu
Krok 1: Rozwiązywanie labiryntu

Właściwie rozważałem wiele metod rozwiązywania labiryntów, ale najczęściej używana metoda jest łatwa do zaprogramowania, a mimo to rozwiązuje prawie każdy labirynt!

W tej metodzie nakazujemy robotowi:

  • Skręć w prawo, kiedy tylko może
  • Jeśli nie, jedź do przodu, jeśli to możliwe
  • Jako ostatnie rozwiązanie skręć w lewo i
  • Zawróć, jeśli wpadnie w ślepy zaułek

Na obrazku widzisz, jak labirynt rozwiązuje się w ten sposób. Ta metoda jest często nazywana Wall Follower. Dopóki miejscem docelowym jest wyjście w zewnętrznej ścianie, Wall Follower go znajdzie.

Krok 2: Krok 2: Zamów części

Krok 2: Zamów części
Krok 2: Zamów części

Do tego robota potrzebowalibyśmy:

  • 1× Arduino Uno
  • 1 × 4 uchwyt baterii AA
  • 3× czujniki TCRT5000 (QTR-1A)
  • Silniki 2 × 6 V DC
  • 13 × przewód męsko-żeński do płytki stykowej
  • 10× żeńsko-żeński przewód płytki stykowej
  • Nagłówek pinów z co najmniej 29 pinami
  • Sprzęt lutowniczy

Pobierz i zainstaluj Arduino IDE, aby rozwijać się na Arduino i upewnij się, że Arduino jest dostarczane z kablem USB typu A/B, aby podłączyć go do komputera.

Krok 3: Krok 3: Odczytaj z czujnika

Krok 3: Odczytaj z czujnika
Krok 3: Odczytaj z czujnika
Krok 3: Odczytaj z czujnika
Krok 3: Odczytaj z czujnika

Czujniki TCRT5000 składają się z diody podczerwieni (niebieska kula) i odbiornika (czarna kula).

Gdy dioda LED emituje światło podczerwone na białą powierzchnię, zostanie odbita od odbiornika i zwróci niską wartość (w moim przypadku 40 ~ 60). Gdy dioda LED emituje światło na czarną powierzchnię, zostanie pochłonięta i zwróci wysoka wartość (700~1010 w moim przypadku)

Drugi obraz przedstawia schemat, który mówi, jak podłączyć czujnik do Arduino. Przytrzymaj czujnik tak, aby widać było diodę i odbiornik, a piny były skierowane w stronę schematu, aby upewnić się, że podłączyłeś właściwe piny.

Teraz wystarczy podłączyć Arduino do naszego komputera, umieścić poniższy kod w Arduino IDE i skompilować:

// Zmień A0 na dowolny port, do którego podłączono czujnik#define FRONT_SENSOR A0void start() { Serial.begin(9600); } void loop() { int frontValue = analogRead(FRONT_SENSOR); Serial.println(frontValue);}

Teraz, jeśli przesuniesz czujnik bardzo blisko po białych i czarnych powierzchniach, powinieneś zauważyć, że wartości odpowiednio się zmieniają na monitorze szeregowym.

Zalecana: