Lådbot
Skulle du vilja bygga en egen enkel robot? Allt du behöver är denna lådbot, en fantastisk introduktion till de Pi-baserade robotarnas värld.
Obs! I det här projektet används en hel del programkod. I vissa av stegen ombeds du att ladda ner .txt-filer med programkod som du sedan kan skriva av eller kopiera och klistra in.
Steg 1: Välj en låda
En liten pappkartong blir ett perfekt hölje för din robot, se bara till att det finns plats för en Raspberry Pi, en batterilåda samt sladdar.
Det kan också vara bra att ha plats över för ytterligare komponenter om du skulle vilja utöka konceptet.
Steg 2: Lägg till motorer och hjul
Montera motorerna, hjulen och stödkulan på lådans undersida med hjälp av dubbelhäftande tejp. Hjulen sitter framtill och stödkulan längst bak.
Skär ut två små hål på lådans undersida som du kan trä motorernas kablar genom, så som visas på bilden.
Steg 3: Anslut motorstyrenheten
Motorstyrenheten ansluts till GPIO-stiften på din Raspberry Pi 3 enligt bilden.
Om du har en annan Pi-modell, med annat antal stift, tittar du på webbplatsen ”Cambridge Raspberry Jam” för att se hur den ska anslutas.
Steg 4: Koppla
Se till att batterierna sitter på plats men att batterilådans strömbrytare är av. Trådarna från batterilådan måste anslutas enligt bilden.
Anslut den högra motorn till ”Motor A” på motorstyrkortet och den vänstra motorn till “Motor B”.
Just nu spelar det ingen roll i vilken ordning motorns trådar är kopplade.
Steg 5: Programmera hjulen
Motorerna styrs via Pi-datorns GPIO-stift. Vi använder stiften 9 och 10 för att styra motor A (motorn på höger sida) och stiften 7 och 8 för att styra motor B (motorn på vänster sida).
Koppla din Raspberry Pi till nätadapter, skärm, mus och tangentbord och skriv sedan in följande kommandon i ett terminalfönster så att du skapar en egen katalog för robotprogrammet:
cd ~ mkdir EduKitRobotics cd EduKitRobotics
Skapa sedan ett nytt Python-skript genom att skriva nano 3-motors.py i Nano-redigeraren.
Skriv sedan in den här koden. När du skrivit in koden sparar du filen genom att trycka på Ctrl+X följt av Y och Enter.
Steg 6: Provkör hjulen
Med ditt robotembryo fortfarande anslutet till mus, tangentbord och skärm, slår du nu på batterilådan. Placera lådboten på ett stöd eller lyft den så att hjulen hamnar i luften och kör sedan Python-skriptet genom att skriva sudo python3 3-motors.py i ett terminalfönster.
Båda hjulen ska nu drivas framåt i en sekund. Om något av hjulen roterar åt fel håll, byter du helt enkelt plats på de två trådar som ansluter problemhjulets motor till motorstyrkortet.
När båda hjulen roterar åt rätt håll har du en robot som kan köras rakt framåt.
Steg 7: Lägg till riktning
De båda motorerna använder var sitt GPIO-stift på Pi-datorn. Genom att koppla på och av de båda stiften i olika kombinationer kan vi få lådboten att förflytta sig framåt, bakåt, åt vänster och åt höger.
Förbered för ett nytt Python-skript i Nano-redigeraren genom att skriva följande i ett terminalfönster:
cd ~/EduKitRobotics nano 4-driving.py
Skriv in den här programkoden. När du fört in koden sparar du återigen filen genom att trycka på Ctrl+X följt av Y och Enter.
Kör programkoden genom att skriva följande i ett terminalfönster (lådboten kommer inte att röra sig, den kontrollerar i stället om koden har några fel):
sudo python3 4-driving.py
Steg 8: Lägg till rörelse
För att lådboten ska röra sig måste du redigera den programkod du lade till i föregående steg.Lägg till följande rader precis före den sista kodraden, som är GPIO.cleanup():
Forwards()
time.sleep(1)
Backwards()
time.sleep(1)
StopMotors()
Kör nu skriptet igen med kommandot python3 4-driving.py
Lådboten kommer att röra sig framåt i en sekund, sedan bakåt i en sekund.
Kontrollera att strömförsörjningskabeln till din Raspberry Pi är tillräckligt lång och ger lådboten tillräckligt stor rörelsefrihet!
Steg 9: Sväng vänster och höger
Du behöver göra ytterligare ett tillägg till koden, så att lådboten kan styras åt vänster och höger. Lägg till den här programkoden i skriptet driving.py.
När du kör programkoden igen (med Python3 4-driving.py) kommer din lådbot att göra en slingrig resa över golvet.