Bygg din egen R2-D2 ved hjelp av Raspberry Pi

Hvilken Star Wars-fan har ikke drømt om å eie sin egen droid? Drogerne C-3PO og R2-D2 tjener som fortellerne til en episk historie som omfatter godt mot ondskap.

Med den kommende utgivelsen av den nyeste filmen i serien, The Last Jedi, er det nå en utmerket tid å prøve hånden din på å bygge din egen R2-D2.

C-3PO er en protokolldroid som lever for å betjene sin herre, mens R2-D2 først ble sett (kronologisk) i episode 1: Phantom Menace, og reddet Queen Amidala og hennes parti da de forlot Naboo planet. R2-D2 er en Astromech droid, en robot ingeniør som kan fikse eventuelle problemer.

I denne opplæringen konstruerer vi vår egen R2-D2-robot ved å hacke et kjøpt leketøy med den nyeste Raspberry Pi, Raspberry Pi Zero.

Raspberry Pi Zero er en ultra-lavpris Raspberry Pi, og detaljhandel på $ 5 (£ 4, rundt AU $ 7) dette brettet gir en fullstendig datamaskinopplevelse for svært lite penger. Kommer med 512 MB RAM, 1 GHz ARM CPU og i stand til å sende ut 1080p-video, har den fløyet fra hyllene, og Raspberry Pi Foundation jobber med å gjenopprette.

Vi bruker også det nyeste Explorer pHAT-kortet fra Pimoroni. Dette brettet er en billig og enkel å bruke motorstyring og eksperimentbord, og vil gi funksjonaliteten til vår R2-enhet.

For dette prosjektet trenger du:

  • En Raspberry Pi Zero, eller en annen Raspberry Pi (A +, B + eller Pi 2)
  • Den nyeste versjonen av Raspbian operativsystemet
  • Wi-Fi-tilkobling for Raspberry Pi
  • 2x Mikro girmetallmotorer
  • Hjul til R2
  • Explorer pHAT bord
  • En LED
  • En 220 ohm motstand (RØD-RØD-BRUN)
  • Mann-til-kvinnelige jumperkabler
  • Mann-til-menn jumperkabler
  • 2x klemblokk med skrueterminaler
  • Varm limpistol
  • Loddeutstyr

De fleste av disse komponentene finnes på Pimoroni og Pi Hut.

Du kan også laste ned all koden for dette prosjektet.

Har du lyst på å bygge din egen R2-D2? Du kan jukse og kjøpe din egen robotic R2-D2 med Sphero R2-D2.

Forrige Side 1 av 11 Neste Forrige Side 1 av 11 Neste

1. Løs opp GPIO

Før vi kan bruke Raspberry Pi Zero, må vi lodde GPIO, en serie på 40 pins, på bordet.

Disse pinnene gjør det mulig for vår Explorer pHAT tilleggsplattform å samhandle med Raspberry Pi. For de beste resultatene, bruk en blomst av modelleringsleir for å støtte brettet mens du lader. Hvis du ikke kan lodde, spør en lokal hackspace, DIY ekspert eller venner for hjelp. Du må også lodde topptekstene til Explorer pHAT-kortet.

Hvis du bruker en annen type Raspberry Pi så kan du hoppe over dette trinnet, ettersom GPIO kommer for loddet.

Forrige Side 2 av 11 Neste Forrige Side 2 av 11 Neste

2. Hakk R2-D2 leketøy

Vi valgte en liten R2-D2 leketøy som koster rundt £ 20 (rundt $ 30, AU $ 42). Vi begynte med å fjerne alle de interne komponentene for å se hvilket rom vi måtte hacke. Det var ganske tett selv for Raspberry Pi Zero, så vi valgte å huse hovedkomponentene på baksiden av R2-D2.

Vi fjernet R2-D2-beina og målte størrelsen på våre motorer på føttene. Ved hjelp av et Dremel-verktøy skar vi forsiktig og formet plass til motorene på hver fot.

Før du kobler motoren, loddede du ledninger til terminaler for senere bruk, så gi deg masse ledig ledning, og fest ledningene til hver motor til Motor 1 og 2 header på Explorer pHAT. Bruk varm lim for å sikre motoren på plass på føttene.

Forrige Side 3 av 11 Neste Forrige Side 3 av 11 Neste

3. La det være LED

For ekstra autentisitet boret vi et hull i R2-D2s røde øyekontakt, og erstattet plasten med en faktisk fungerende rød LED.

Inne i R2-D2-hodet brukte vi en klemme som ofte brukes i elektriske ledninger for å sikre ledninger uten lodding, og sikret LED-benene i hvert hull.

Det lange benet på LED-en vil motta 5V strøm fra Explorer pHAT via en 220 ohm motstand skrudd inn i den andre enden av blokken og koblet til Explorer pHat via en kvinnelig og mannlig jumperkabel. Det korte benet vil koble til utgang 1 i Explorer pHAT.

Forrige Side 4 av 11 Neste Forrige Side 4 av 11 Neste

4. Power R2-D2 opp

Fest Explorer pHAT til Raspberry Pi, og koble deretter til eksterne enheter før du slår opp Raspberry Pi.

Når Raspberry Pi har startet, må du ha en Internett-tilkobling før du fortsetter. Åpne en terminal (ikonet er en mørk skjerm øverst til venstre på skrivebordet ditt), og skriv inn følgende for å installere Explorer pHAT-programvaren:

curl get.pimoroni.com/i2c | bash

Du blir spurt en rekke spørsmål, som du kan svare ja, da det er ganske trygt i dette tilfellet. Etter noen få minutter vil programvaren bli installert, og for å sikre at den har blitt gjort riktig, er det en god tid å starte din Raspberry Pi. Når du er ferdig, gå tilbake til skrivebordet.

Forrige Side 5 av 11 Neste Forrige Side 5 av 11 Neste

5. Koding R2-D2

For å kode R2-enheten bruker vi Python, et veldig lett å bruke språk som passer godt til Pi, og som majoriteten av Raspberry Pi-fellesskapet bruker som sitt primære språk. For å kode i Python må vi åpne Python3-programmet, som du finner i Programmeringsmenyen.

Når Python3 er åpen, klikk på Fil> Nytt vindu for å åpne et nytt blankt dokument. Lagre prosjektet som R2P10.py før du fortsetter. Husk å lagre arbeidet ditt regelmessig - dette er en god vane å komme inn på, da det vil begrense eventuelle utilsiktede slettinger.

Forrige Side 6 av 11 Neste Forrige Side 6 av 11 Neste

6. Importkode

Våre første tre linjer med Python-kode er import - disse tar inn eksterne bibliotek av kode for vårt prosjekt å bruke.

importere explorerhat
Fra tiden importerer søvn
fra tilfeldig import randint

For det første importerer vi biblioteket til Explorer pHAT - dette vil gjøre det mulig for vårt prosjekt å grensesnitt og bruke brettet.

De neste to importene brukes til å importere ett aspekt av hvert bibliotek. Fra tidsbiblioteket importerer vi søvnfunksjonen, som brukes til å kontrollere tempoet i koden vår. Fra tilfeldigvis importerer vi et tilfeldig heltall generator, som brukes senere i prosjektet.

Forrige Side 7 av 11 Neste Forrige Side 7 av 11 Neste

7. Mer koding

Vi beveger oss nå til hoveddelen av koden (vist ovenfor).

Her oppretter vi en metode for å teste vår kode, og inne i det bruker vi en sløyfe som vil løpe for alltid, mens True; Denne sløyfen kjører koden for å angi utgang 1 av vår Explorer pHAT slik at den blinker hvert halve sekund. Vi lager nå en variabel, en beholder som kan lagre alle typer data - i dette tilfellet bruker vi den til å lagre et tilfeldig tall, et heltall, mellom 1 og 5.

Innrykk av kode er viktig, og Python 3 vil hjelpe deg når du skriver.

Forrige Side 8 av 11 Neste Forrige Side 8 av 11 Neste

8. Flytte R2-D2

For vår neste del av kode, slår vi på motoren og styrer R2-D2.

Vi begynner med å slå begge motorer på og fremover med 20% strøm, en fin glide for R2-D2 å bevege seg videre. Hvis motoren din går i feil retning, bytt ledningene til den motoren slik at de vender tilbake i Explorer pHAT.

Med motorene på bruker vi en forsinkelse, sove, for å hindre at motorene stopper. Vi bruker det tilfeldige tallet som er lagret i variabelen, varighet, for å kontrollere hvor lenge R2 vil løpe for. Deretter kjører vi en motor bakover for å aktivere R2 å slå på stedet; Dette styres også for en bestemt varighet.

Forrige Side 9 av 11 Neste Forrige Side 9 av 11 Neste

9. Teste koden din

Denne neste delen av koden finnes utenfor den ekte sløyfen.

Vi startet koden ved å bruke en test, prøv, nå må vi legge til et unntak - i dette tilfellet når vi trykker CTRL + C for å stoppe koden som kjører. Når dette skjer, forteller vi at motorene slår stopp, og for utgangen slås av, stopper øynene med å blinke R2-D2.

Lagre koden din og klargjøre for å teste R2-enheten din! For de beste resultatene hold deg til R2-D2-enheten, ellers vil den løpe bort.

Forrige Side 10 av 11 Neste Forrige Side 10 av 11 Neste

10. Kontroll R2-D2

Med koden er ferdig kan du nå kjøre koden ved å klikke på Kjør> Kjør modul i menyen. R2-D2 skal bevege seg fremover i noen sekunder, så sving til venstre.

Denne koden vil da gjenta til du trykker på CTRL + C. For en virkelig bærbar løsning kan du bruke en USB-batteripakke, som for eksempel de som brukes til å lade opp mobilenheter, for å drive Raspberry Pi. Du kan også kontrollere R2 over en Wi-Fi-tilkobling ved hjelp av teknologier som SSH og VNC.

Og der har du det - din egen R2-D2-enhet, klar til å svare på kommandoene dine!

  • Finn ut hva annet du kan gjøre med den lille PCen med vår samling av Raspberry Pi-prosjekter
Forrige Side 11 av 11 Neste Forrige Side 11 av 11 Neste
aksjer