Linjeföljaren

Linjeföljaren gör precis det som namnet antyder, den följer en linje. Få den att gå dit du vill, genom att visa vägen med en 3 cm bred, svart linje.

Material


  • 1 Arduino Uno
  • 1 Education-sköld
  • 1 IR-Array
  • 2 servon med kontinuerlig rotation
  • 4 svarta labbkablar
  • 8 färgade labbkablar
  • 1 9V-batteri
  • 4 AA-batterier
  • 1 AA-batterihållare
  • 2 strömkontakter (En utan plugg men med två lösa kablar)
  • Linjeföljare-kit
  • 1 metallboll

Instruktioner

  1. Fäst skölden på Arduinons ovansida.
  2. Fäst hjulen på servorna.
  3. Fäst en servo på varje sida av Linjeföljaren.
  4. Montera bollen på Linjeföljarens mittersta del.
  5. Koppla fem labbkablar till 5V, GND, IR1,IR2 och IR2 på IR-Arrayn.
  6. Trä labbkablarna genom det främre hålet av mittenbasen, och avsluta sedan monteringen av huvudkroppen.
  7. Koppla de lösarna kablarna på IR-Arrayn. 5V till 5V, GND till GND med en extra labbkabel, IR1 till A1, IR2 till A2 och IR3 till A3.
  8. Använd tre labbkablar för att koppla den vänstra servon. Den svarta kabeln till GND, den vita kabeln till digitala pin 10, och den röda kabeln till kopplingsdäcket.
  9. Använd 3 labbkablar och koppla den högra servon. Den svarta kabeln till GND, den vita kabeln till digitala pin 9, och röda kabeln till kopplingsdäcket.
  10. Koppla Arduinon till datorn och ladda upp exemplet ’LineFollower’.
  11. Placera 4 AA-batterier i batterihållaren. Använd strömkontakten med lösa kablar och koppla batteriet till Arduinon, svarta kabeln till GND och röda kabeln till de två servornas strömkablar på kopplingsdäcket. Koppla 9V-batteriet till Arduinons strömkontakt.
  12. Placera elektroniken på ovansidan av Linjeföljaren.

Kod

Hitta koden i File>Examples>EducationShield>Block4-Robots>Projects>LineFollower

Så fungerar det

  • EducationShield- och Servo-biblioteken  inkluderas.
  • IRArray- och Wheel-objekten deklareras, ir och wheel.
  • setup() initialiseras hjulen.
  • Programmet pausas i 1000 millisekunder.
  • loop()deklareras variabeln dir och tilldelas det avlästa värdet från IR-arrayn, med readLine(). Värdet kommer vara mellan -100 och 100 och representerar riktningen dit den svarta linjen är på väg.
  • wheels styrs till att följa värdet av dir.
  • loop() fortsätter upprepas.

Problemlösning

Lär genom att göra

  • Skriv ut en bana av svarta linjer och bygg hinder för roboten. Om hindren är för svåra, se om det går att förbättra robotens prestation genom att modifiera hjulen.
  • Få roboten att reagera på något sätt när den bara ser vitt. Med andra ord, när den tappat bort den svarta linjen.