Hur man bygger din egen R2-D2 med Raspberry Pi Zero
HurBygg din egen R2-D2 med hjälp av Raspberry Pi
Vilken Star Wars-fan har inte drömt om att äga sin egen droid? Drogen C-3PO och R2-D2 tjänar som berättare till en episk berättelse som omfattar gott mot ont.
Med den kommande versionen av den senaste filmen i serien, The Last Jedi, är det nu en utmärkt tid att prova med att bygga din egen R2-D2.
C-3PO är en protokolldrod som lever för att tjäna sin herre, medan R2-D2 först settes (kronologiskt) i Episode 1: Phantom Menace och räddade Queen Amidala och hennes parti när de lämnade Naboo planet. R2-D2 är en Astromech droid, en robottekniker som kan lösa något problem.
I den här handledningen konstruerar vi vår egen R2-D2-robot genom att hackat en butiksköpad leksak med den senaste Raspberry Pi, Raspberry Pi Zero.
Raspberry Pi Zero är en extremt billig Raspberry Pi, och detaljhandeln på $ 5 (4 £, ca 7 USD) ger detta bord en fullständig datorupplevelse för mycket lite pengar. Kommer med 512 MB RAM, 1 GHz ARM CPU och kan producera 1080p-video, har den flugit av hyllorna och Raspberry Pi Foundation arbetar för att återupplösa.
Vi använder också det senaste Explorer pHAT-kortet från Pimoroni. Denna bräda är en billig och lättanvänd motorstyrenhet och experimentbräda, och ger funktionaliteten för vår R2-enhet.
För detta projekt behöver du:
- En Raspberry Pi Zero, eller en annan Raspberry Pi (A +, B + eller Pi 2)
- Den senaste versionen av operativsystemet Raspbian
- Wi-Fi-anslutning för din Raspberry Pi
- 2x Mikroväxelmotorer
- Hjul för R2
- Explorer pHAT board
- En LED
- Ett 220 ohm motstånd (RED-RED-BROWN)
- Man-till-kvinnliga jumperkablar
- Man-till-manliga jumperkablar
- 2x Plintblock med skruvplintar
- Lim pistol
- Lödningsutrustning
Majoriteten av dessa komponenter finns i Pimoroni och Pi Hut.
Du kan också ladda ner hela koden för det här projektet.
Vill du inte bygga din egen R2-D2? Du kan fuska och köpa din egen robot R2-D2 med Sphero R2-D2.
Föregående Sida 1 av 11 Nästa Föregående Sida 1 av 11 Nästa1. Löd GPIO
Innan vi kan använda Raspberry Pi Zero måste vi soldera GPIO, en serie på 40 stift, på brädet.
Dessa stiften gör det möjligt för vår Explorer pHAT tilläggskort att interagera med Raspberry Pi. För bästa möjliga resultat använd en klump av modelleringslera för att stödja brädet medan du löds. Om du inte kan lödda, fråga en lokal hackspace, DIY-expert eller vänner för hjälp. Du måste också lödda toppstiften för Explorer pHAT-kortet.
Om du använder en annan typ av Raspberry Pi så kan du hoppa över det här steget, eftersom GPIO kommer förlödd.
Föregående Sida 2 av 11 Nästa Föregående Sida 2 av 11 Nästa2. Hack R2-D2-leksaken
Vi valde en liten R2-D2 leksak som kostar runt 20 kr (ca $ 30, AU $ 42). Vi började genom att ta bort alla interna komponenter för att se vilket rum vi hade att hacka. Det var ganska tätt även för Raspberry Pi Zero, så vi valde att hysa huvudkomponenterna på baksidan av R2-D2.
Vi tog bort R2-D2 ben och mätta storleken på våra motorer på fötterna. Med hjälp av ett Dremel-verktyg skar vi noggrant och formar ett utrymme för motorerna på varje fot.
Innan vi monterade motorerna lödde vi kablarna till terminalerna för senare användning, så ge dig massor av extra ledning och fäst ledningarna för varje motor till Motor 1 och 2-huvudet på Explorer pHAT. Använd hett lim för att säkra motorerna på plats på fötterna.
Föregående Sida 3 av 11 Nästa Föregående Sida 3 av 11 Nästa3. Låt det vara LED
För ökad autenticitet borrade vi ett hål i R2-D2s röda ögonkontakt och ersatte plasten med en verklig röd LED-lampa.
Inuti R2-D2-huvudet använde vi ett terminalblock, som vanligtvis används i elektricitet för att säkra ledningar utan lödning, och fixerade LED-lampans ben i varje hål.
LED-lampans långa ben kommer att få 5V-effekt från Explorer pHAT via ett 220 ohm motstånd som skruvas in i den andra änden av blocket och kopplas till Explorer pHat via en kvinnlig och manlig växelkabel. Det korta benet kommer att ansluta till utgång 1 i Explorer pHAT.
Föregående Sida 4 av 11 Nästa Föregående Sida 4 av 11 Nästa4. Power R2-D2 upp
Bifoga Explorer pHAT till Raspberry Pi, anslut sedan dina kringutrustning innan du slår fram Raspberry Pi.
När Raspberry Pi har startat måste du ha en Internetanslutning innan du fortsätter. Öppna en terminal (dess ikon är en mörk skärm längst upp till vänster på skrivbordet) och skriv följande för att installera Explorer pHAT-programvaran:
curl get.pimoroni.com/i2c | våldsamt slag
Du kommer att få en rad frågor, som du kan svara ja, eftersom det är ganska säkert i det här fallet. Efter några minuter installeras programvaran, och för att säkerställa att den har gjorts korrekt är det dags att starta om din Raspberry Pi. När du är klar, återgå till skrivbordet.
Föregående Sida 5 av 11 Nästa Föregående Sida 5 av 11 Nästa5. Kodning R2-D2
För att koda vår R2-enhet använder vi Python, ett lättanvänt språk som passar Pi, och som majoriteten av Raspberry Pi-gemenskapen använder som sitt primära språk. För att koda i Python måste vi öppna Python3-programmet, som du hittar i Programmeringsmenyn.
När Python3 är öppen klickar du på Arkiv> Nytt fönster för att öppna ett nytt tomt dokument. Spara nu projektet som R2P10.py innan du fortsätter. Kom ihåg att regelbundet rädda ditt arbete - det här är en bra vana att komma in i, eftersom det kommer att begränsa oavsiktliga borttagningar.
Föregående Sida 6 av 11 Nästa Föregående Sida 6 av 11 Nästa6. Importkod
Våra första tre rader av Python-kod är import - dessa tar in externa bibliotek av kod för vårt projekt att använda.
importera explorerhat
från och med tiden importera sömn
från slumpmässig import randint
För det första importerar vi biblioteket för Explorer pHAT - det här gör det möjligt för vårt projekt att gränsa och använda styrelsen.
Nästa två import används för att importera en aspekt av varje bibliotek. Från tidsbiblioteket importerar vi sömnfunktionen, som används för att styra takten i vår kod. Från slumpmässigt importerar vi en slumpmässig heltal generator, som används senare i projektet.
Föregående Sida 7 av 11 Nästa Föregående Sida 7 av 11 Nästa7. Mer kodning
Vi flyttar nu till huvudkoden av kod (visas ovan).
Här skapar vi en metod för att testa vår kod, och inuti använder vi en slinga som kommer att springa för evigt, medan True; den här slingan kör koden för att ställa in utgång 1 i vår Explorer pHAT så att den blinkar varannan sekund. Vi skapar nu en variabel, en behållare som kan lagra alla typer av data - i det här fallet använder vi det för att lagra ett slumptal, ett heltal mellan 1 och 5.
Intryckningen av kod är viktig, och Python 3 hjälper dig när du skriver.
Föregående Sida 8 av 11 Nästa Föregående Sida 8 av 11 Nästa8. Flytta R2-D2
För vår nästa sektion av kod kommer vi att slå på motorerna och styra R2-D2.
Vi börjar med att vrida båda motorerna på och framåt med 20% kraft, en snygg glid för R2-D2 för att gå vidare. Om din motor kör i fel riktning byt du ledningarna för den motorn så att de är omvända i Explorer pHAT.
Med motorerna använder vi en fördröjning, sova, för att förhindra att motorerna stannar. Vi använder det slumptal som lagras i variabeln, varaktighet, för att kontrollera hur länge R2 kommer att springa för. Nästa kör vi en motor bakåt för att aktivera R2 för att slå på platsen; Detta styrs också för en viss tid.
Föregående Sida 9 av 11 Nästa Föregående Sida 9 av 11 Nästa9. Testa din kod
Den här nästa sektionen av kod existerar utanför True loop.
Vi startade koden genom att använda ett test, försök, nu måste vi lägga till ett undantag - i det här fallet när vi trycker på CTRL + C för att stoppa koden. När detta inträffar berättar vi motorerna att stänga av och för att utgången ska stängas av, stoppar ögonen på R2-D2 blinkande.
Spara koden och förbered dig för att testa din R2-enhet! För de bästa resultaten fortsätt till R2-D2-enheten, annars kommer det att springa bort.
Föregående Sida 10 av 11 Nästa Föregående Sida 10 av 11 Nästa10. Kontroll R2-D2
Med vår kod klara kan du nu köra koden genom att klicka på Kör> Kör modul i menyn. R2-D2 ska gå framåt i några sekunder och sväng vänster.
Denna kod kommer sedan att upprepas tills du trycker på CTRL + C. För en verkligt bärbar lösning kan du använda ett USB-batteri, som de som används för att ladda dina mobila enheter, för att driva Raspberry Pi. Du kan också styra R2 via en Wi-Fi-anslutning med hjälp av teknik som SSH och VNC.
Och där har du det - din egen R2-D2-enhet, redo att svara på dina kommandon!
- Ta reda på vad du kan göra med den lilla datorn med vår samling av Raspberry Pi Projekt