Innholdsfortegnelse:

The OreServer - en Raspberry Pi dedikert Minecraft -server med LED -spillerindikator: 9 trinn (med bilder)
The OreServer - en Raspberry Pi dedikert Minecraft -server med LED -spillerindikator: 9 trinn (med bilder)

Video: The OreServer - en Raspberry Pi dedikert Minecraft -server med LED -spillerindikator: 9 trinn (med bilder)

Video: The OreServer - en Raspberry Pi dedikert Minecraft -server med LED -spillerindikator: 9 trinn (med bilder)
Video: ETS15@EDU Panel: Universities & Community Colleges: Opportunities, Challenges, Lessons Learned 2024, November
Anonim

Av MrJymmFollow About: Mange ideer, aldri nok tid. Mer om MrJymm »

OPPDATERING i juli 2020 - Før du starter med dette prosjektet, må du være oppmerksom på at det er MYE endringer og oppdateringer i de forskjellige programvareverktøyene jeg brukte for å lage dette for over to år siden. Som et resultat fungerer ikke mange av trinnene lenger som skrevet. Prosjektet kan fremdeles fullføres, og er fremdeles masse moro, men forvent at du må gjøre din egen tinkering for å få alt til å fungere. Noen løsninger kan bli funnet i de siste kommentarene på slutten av instruksjonsboken. Takk, og god gruvedrift

Hvis du er fan av å spille Minecraft, har du sannsynligvis tenkt på hvor morsomt det ville være å ha din egen personlige server å dele med vennene dine. Mine sønner ba meg stadig om sin egen delte verden, og etter hvert ble deres interesse for Minecraft kombinert med min interesse for Raspberry Pi, og ideen til OreServer født.

Dette prosjektet vil vise deg hvordan du konfigurerer en Minecraft -server med en morsom og unik funksjon - den er bygget for å ligne en malmblokk, og den lyser med forskjellige farger avhengig av hvor mange mennesker som spiller på din verden for tiden!

Men det stopper ikke der! Vi vil også gjøre serveren tilgjengelig for alle med PC -utgaven av Minecraft, slik at du kan dele serveradressen din og invitere venner til din verden. Det vil kjøre døgnet rundt, så selv om du er opptatt eller er ute av huset, kan vennene dine fortsette å bygge. Og vi vil sette opp automatiske sikkerhetskopier bare i tilfelle tragedie skulle ramme (den TNT -kanonen hørtes ut som en god idé den gangen …), slik at du kan tilbakestille fra tidligere dager.

Trinn 1: Deler og verktøyliste

Deler og verktøyliste
Deler og verktøyliste

Dette er delene, verktøyene og programvaren du trenger for å fullføre dette prosjektet. Jeg har lagt til lenker for referanse, men de fleste av disse rekvisitaene er tilgjengelige fra flere leverandører, så hent dem hvor det er enklest / billigste for deg.

Deler:

  • Raspberry Pi 3 og strømforsyning

    Disse er også tilgjengelige som sett

  • Micro USB rettvinklet adapter
  • MicroSD -kort

    Minimum 8 GB, men et 16 eller 32 GB kort av høy kvalitet anbefales

  • Adafruit Neopixel Jewel
  • Tre korte GPIO -ledninger
  • Sølv eller grå 3D -filament (alle typer)
  • 2,5 mm skruer (x4)
  • Bakepapir eller hvitt silkepapir

Verktøy:

  • MicroSD -kortleser
  • Loddeutstyr
  • Liten skrutrekker
  • 3D -skriver

Programvare:

  • Minecraft (Java PC Edition)
  • Raspbian Lite ISO

    IKKE versjonen "med skrivebord"

  • etcher.io
  • Kitt eller en lignende SSH terminal klient
  • Filezilla eller lignende FTP -klient

Trinn 2: Konfigurer og forbered Raspberry Pi

Sett opp og forbered Raspberry Pi
Sett opp og forbered Raspberry Pi
Sett opp og forbered Raspberry Pi
Sett opp og forbered Raspberry Pi
Sett opp og forbered Raspberry Pi
Sett opp og forbered Raspberry Pi
Sett opp og forbered Raspberry Pi
Sett opp og forbered Raspberry Pi

Før vi kan begynne å installere serveren må vi fullføre noen grunnleggende oppsett og konfigurasjonstrinn på Pi.

1. Klargjør MicroSD -kortet

Først må vi sette Rasbian -operativsystemet på MicroSD -kortet vårt ved å bruke etcher.io.

  1. Sett MicroSD -kortet inn i kortleseren, og kortleseren i en USB -port på PCen
  2. Kjør etser og bruk Select Image -knappen for å laste inn Rasbian Lite ISO
  3. Velg MicroSD -kortet for installasjonsstasjonen
  4. Klikk på Flash!

Når prosessen er fullført, vil eteren koble MicroSD -stasjonen fra systemet, men vi må legge til en fil til, så bare koble den fra og plugg den inn igjen. Kortet vil nå bli lest som en stasjon merket "boot". Kopier en tom fil med navnet "ssh" til oppstartsstasjonen, og koble deretter MicroSD -stasjonen fra systemet igjen. MicroSD -kortet er nå klart til å flytte inn i Raspberry Pi.

** Hvis du ikke kan laste ned "ssh" -filen, er det enkelt å lage din egen ved ganske enkelt å gi nytt navn til en tom tekstfil. Sørg for å slette utvidelsen ".txt". Når det fungerer, blir ikonet tomt som på skjermbildet. **

2. Koble til Pi -terminalen

Nå som Pi har et operativsystem, la oss slå den på!

  1. Koble til både en kablet ethernet -kabel og strømforsyningen til Rasberry Pi. Selv om Pi 3 har innebygd Wi-Fi-støtte, er en kablet tilkobling mer robust og å foretrekke for serveren vår.
  2. Deretter må vi hente Pi -IP -adressen fra ruteren din. Dette trinnet vil variere noe avhengig av rutermerket ditt - i mitt tilfelle skriver jeg inn 192.168.1.1 i nettleseren min for å logge på ruterkontrollpanelet. Du ser etter en DHCP -klientliste og en oppføring med navnet "raspberrypi". Legg merke til den tildelte IP -adressen, i mitt eksempel er den 192.168.1.115. Nå er også en god mulighet til å angi IP -adressen som "reservert" eller "permanent" slik at den ikke får tildelt en annen adresse senere. Hvis du har problemer med dette trinnet, vil du sjekke ruterdokumentasjonen eller støttesiden for detaljer.
  3. Nå kan vi åpne Putty, skrive inn Pi -IP -adressen i "Host Name" -feltet, og klikk "Open".

Du bør nå se på en svart skjerm med "logg inn som:". Dette er din Pi -terminal, og det er her vi skal gjøre resten av arbeidet med å sette opp serveren. Husk at terminalskjermene er for tastaturer! Musen din kommer ikke til å bli mye brukt her.

3. Raspi-konfigurasjon

For å fullføre det første oppsettet må vi logge på med standardinnstillingene:

logg inn som: pi

passord: bringebær

Nå kan vi gå gjennom noen grunnleggende oppsett av Pi -standardinnstillingene ved å skrive inn følgende

sudo raspi-config

Vi må gjøre flere endringer, og jeg skal ta deg gjennom dem i samme rekkefølge som de er nummerert på konfigurasjonsskjermen.

  1. Endre brukerpassord - Dette er et must! Alle kjenner standardpassordet, så endre det umiddelbart.
  2. Nettverksalternativer

    Vertsnavn - som standard er dette "raspberrypi", men hvis du ønsker det kan du endre det til å være mer beskrivende

  3. -(ingen endring)-
  4. Lokaliseringsalternativer - hvis du ikke er i Storbritannia, vil du endre disse til ditt eget land. Mine eksempler antar at det er USA.

    1. Endre sted - bruk nedoverpilen for å finne en oppføring for "en_GB" med en * ved siden av. Bruk mellomromstasten for å fjerne det *, og gå deretter litt lenger ned til "no_US. UTF-8" og bruk mellomromstasten for å markere det med *.
    2. Endre tidssone - dette er viktig for at våre tidsbestemte oppgaver skal fungere riktig
    3. Endre tastaturoppsett - du kan kanskje hoppe over dette, men hvis det blir igjen i Storbritannia, er det noen tastatursymboler som flyttes rundt
  5. Grensesnittalternativer

    1. -(ingen endring)-
    2. SSH - Aktiver dette slik at du kan fortsette å bruke Putty etter omstart av Pi.
  6. -(ingen endring)-
  7. Avanserte instillinger

    1. Utvid filsystemet - dette sikrer at Pi kan bruke all ledig plass på SD -kortet
    2. -(ingen endring)-
    3. Memory Split - endre dette til 16 for å frigjøre mer minne til bruk av Minecraft.

Velg nå "Fullfør", og velg deretter "Ja" for å starte på nytt.

Dette vil avslutte økten din i Putty. Bare gi det et øyeblikk å fullføre omstarten, åpne deretter Putty igjen og koble til Pi -IP -adressen på nytt. Husk å bruke det nye passordet ditt!

Trinn 3: Installer den dedikerte serveren

Konfigurering av serverprogramvaren er det lengste trinnet, men også det viktigste. Vi kommer til å bruke mye tid på å skrive inn en haug med kjedelige Linux -kommandoer. Ikke la det skremme deg! Så lenge du kan kopiere og lime inn, kan du komme deg gjennom denne delen.

En Minecraft -server er ganske kompleks, og å kjøre den på en datamaskin så liten som en Raspberry Pi krever litt effektivisering. Jeg startet med denne fantastiske opplæringen av James Chambers, fordi han har flere gode tips for å maksimere serverytelsen. Jeg kommer til å oppsummere installasjonsprosessen hans nedenfor, og markere noen endringer og oppdateringer jeg har gjort, men jeg anbefaler på det sterkeste at du leser siden hans for flere detaljer.

Nå som du har logget deg på igjen med standard "pi" og det nye passordet ditt, kan vi begynne å skrive inn kommandoene for å installere serverfilene.

Viktig - Mange av disse kommandoene er lange og komplekse og ville være en skikkelig smerte å skrive inn i terminalvinduet. Så ikke gjør det! Uthev kommandoteksten i dette vinduet, kopier den med ctrl-c, og høyreklikk deretter med musen i terminalvinduet for å lime inn teksten. Se, den musen er tross alt bra for noe!

For resten av dette trinnet vil du kopiere hver av kommandoene i disse kodetekstboksene.

Jeg skal gi korte forklaringer på hva vi gjør underveis.

Vi starter med å gjøre programvaren vår oppdatert.

sudo apt-get update && sudo apt-get upgrade

Når du ser en forespørsel om installasjonsgodkjenning, skriver du "y" og trykker enter for å godta og fortsette.

Minecraft kjører på Java, men vår "Lite" Rasbian -installasjon inkluderte den ikke, så la oss ta det.

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense = accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808 /jdk-8u161-linux-arm32-vfp-hflt.tar.gz

Merk ** Når Java blir oppdatert til en nyere versjon, kan kommandoen bli utdatert. Hvis du får en feilmelding, må du oppdatere kommandoen for den nyeste versjonen. Besøk Oracles Java-nedlastingsside, klikk på "Godta lisensavtale" -knappen, og høyreklikk deretter på lenken til den nyeste linux-arm32-filen og velg kopieringslenke. Du må bruke den oppdaterte lenken for å erstatte teksten i kommandoen ovenfor, som starter med http. **

Nå kan vi installere Java -filene vi nettopp lastet ned.

sudo mkdir /usr /java

cd /usr /java

Hvis du måtte endre nedlastingskoblingen for en ny versjon, må du kontrollere at du endrer versjonsnummeret i disse neste kommandoene for å matche.

sudo tar xf ~/jdk-8u161-linux-arm32-vfp-hflt.tar.gz

sudo update-alternativer-install/usr/bin/java java /usr/java/jdk1.8.0_161/bin/java 1000

sudo update-alternativer-install/usr/bin/javac javac /usr/java/jdk1.8.0_161/bin/javac 1000

cd ~

Og til slutt, hovedbegivenheten du har ventet så tålmodig på, la oss installere Minecraft -serveren. Dette er en spesialisert versjon av serveren kalt Paper, og den er full av optimaliseringer for å forbedre ytelsen.

mkdir Paper

wget

pakke ut master.zip -d Paper

mv ~/Paper/RaspberryPiMinecraft-master/* ~/Paper/

cd Papir

chmod +x start.sh

wget

java -jar -Xms512M -Xmx800M paperclip.jar

Den siste kommandoen starter serveren for første gang, og etter noen få minutter får du en feilmelding som sier at du må godta EULA. Åpne EULA med den neste kommandoen:

nano eula.txt

Endre linjen som sier "eula = false" til "eula = true". Lagre endringene ved å trykke ctrl-x, deretter Y, og skriv deretter inn.

Merk ** James Chambers nevner en metode for overklokking av SD -kortet ditt på dette tidspunktet i guiden hans. Jeg har ikke personlig prøvd det trinnet, fordi det krever et kort av høy kvalitet, og det jeg hadde tilgjengelig å bruke er ikke noe spesielt. Jeg tror at overklokking absolutt ville forbedre ytelsen ytterligere, men selv uten overklokking kjører serveren godt nok til at jeg ikke har fått klager fra barna som leker på den. **

La oss raskt ta en titt på serveregenskapene og gjøre et par endringer.

nano server.properties

Det er en lang liste over ting du kan endre om serveren din her, for eksempel å tilpasse servernavnet og MOTD, endre gamemodus eller aktivere PvP- eller kommandoblokker. Du kan endre ting til dine preferanser nå, eller du kan åpne denne filen for å gjøre flere endringer senere, men det er to endringer vi vil gjøre umiddelbart.

maks-spillere = 8

server-port = 25565

Åtte spillere er det høyeste jeg vil anbefale, noe høyere, og du vil sannsynligvis se at serverytelsen blir treg, selv med alle optimaliseringene som er gjort for å kjøre ting på Pi.

Serverporten bør endres fordi alle, i likhet med standard "bringebær" -passord, vet standardporten på 25565. Selv en mindre endring til 26565 vil bidra til å holde serveren din sikker. Skriv ned portnummeret ved siden av der du lagret Pi -IP -adressen. Du trenger begge disse senere.

Når du er ferdig med å oppdatere innstillingene, lagrer du endringene ved å trykke ctrl-x, deretter Y, og deretter angi.

Det neste trinnet i å forberede serveren din vil også ta lengst tid når den starter, sannsynligvis omtrent en time. Disse kommandoene vil generere verden på forhånd, noe som betyr at serveren ikke trenger å gjøre alt dette arbeidet senere mens du og vennene dine utforsker.

cd ~/Papir/plugins

wget --content -disposition -E

sudo apt-get installeringsskjerm

cd Papir

./start.sh

Det vil ikke se ut som om det har skjedd noe, men serveren din har nå startet! For å samhandle med serveren må vi bruke denne kommandoen

skjerm -r minecraft

Og så vil vi forhåndsgenerere verden:

wb world set 1000 spawn

wb verden fyll 1000

wb fyll bekreft

Dette er delen som vil ta lang tid. Ta en matbit og sjekk tilbake senere! Når prosessen er ferdig, må du slå av serveren med en veldig enkel kommando

Stoppe

Dette vil lagre og lukke serveren og returnere deg til Raspberry Pi -terminalen.

Vår siste oppgave er å sette serveren til å starte automatisk når Raspberry Pi er plugget inn eller startet på nytt. Vi kan gjøre dette ved å lage et enkelt skript.

cd ~

nano oppstart.sh

Vi har brukt nano til å redigere et par filer før, men denne gangen lager vi en fra bunnen av, så vinduet blir tomt. Kopier disse to linjene til filen:

cd/home/pi/Paper

skjerm -dmS minecraft java -server -Dfile.encoding = UTF -8 -Xms512M -Xmx800M -XX: NewSize = 300M -XX: MaxNewSize = 500M -XX:+CMSIncrementalMode -XX:+UseConcMarkSweepGC -XX:+UsePar CMSIncrementalPacing -XX: ParallelGCThreads = 4 -XX:+AggressiveOpts -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX: SurvivorRatio = 16 -XX: TargetSurvivorRatio = 90 -jar /home/pi/

Lagre det nye skriptet ved å trykke ctrl-x, deretter Y, og skriv deretter inn.

chmod +x oppstart.sh

chmod +x /etc/rc.local

sudo nano /etc/rc.local

Den aller siste linjen i rc.local -filen sier "exit 0". Rett over den linjen skal vi legge til dette:

su pi -c /home/pi/startup.sh

Og nok en gang lagrer vi filendringene med ctrl-x, deretter Y, og skriv deretter inn.

sudo omstart

Du får en melding om at tilkoblingen er stengt, og du kan lukke Putty -vinduet.

Det er det! Du har klart det kjedelige! Nå er vi klare til å teste serveren vår!

Trinn 4: Test serveren din og inviter vennene dine

Test serveren din og inviter vennene dine
Test serveren din og inviter vennene dine
Test serveren din og inviter vennene dine
Test serveren din og inviter vennene dine
Test serveren din og inviter vennene dine
Test serveren din og inviter vennene dine
Test serveren din og inviter vennene dine
Test serveren din og inviter vennene dine

Deretter skal vi sjekke at serveren fungerer og sørge for at vennene våre kan bli med.

Åpne Minecraft -lanseringen på PCen og klikk på Spill. Sørg for at du bruker den nyeste versjonsversjonen for å matche papirserveren.

Velg Multiplayer på hovedskjermen, deretter Add Server. Skriv inn navnet du vil ha på serverlisten din, og for Serveradresse skriver du inn Pi -IP -en og portnummeret. For mitt eksempel bruker vi 192.168.1.115:26565. Sørg for at du har et kolon mellom IP -adressen og portnummeret, og at det ikke er mellomrom. Klikk Ferdig, og klikk deretter spill på serveren din. Etter noen få øyeblikk finner du deg selv falt inn i din splitter nye verden!

Vent, kom tilbake! Ikke begynn å bygge helt selv, la oss invitere noen venner! Dessverre kan de ikke bruke den samme IP -adressen som du gjør. Så for å få dette til å fungere, må du først fortelle ruteren din at det er OK for folk som er utenfor huset ditt å koble til Pi. Dette kalles Port Forwarding, og den eksakte prosessen vil variere litt avhengig av ruteren din. Jeg har lagt ved et skjermbilde av hvordan det ser ut på TP Link -ruteren min, men du må kanskje sjekke støttesiden for rutere for mer informasjon.

I innstillingene for portvideresending skriver du inn portnummeret du valgte for serveren din, og deretter IP -adressen til Raspberry Pi. Ruteren din vet nå at når vennene dine prøver å koble til det portnummeret, bør de rettes til Pi.

Deretter må vi bruke en gratis tjeneste som No-IP for å lage din egen unike adresse, kalt et vertsnavn. Du vil også sette opp enten ruteren eller PCen for å holde vertsnavnets IP -adresse oppdatert.

Følg trinnene i installasjonsguiden nå.

Når du er ferdig med å konfigurere din No-IP-konto, vil vennene dine kunne koble seg til serveren din ved å skrive inn det nye vertsnavnet og portnummeret i Server Address-delen på Minecraft-flerspillerskjermen. For eksempel, hostname.ddns.net:26565.

Trinn 5: Redd verden! (med automatiske sikkerhetskopier)

Redde verden! (med automatiske sikkerhetskopier)
Redde verden! (med automatiske sikkerhetskopier)

Dette trinnet er valgfritt, men det er en potensiell livredder. Verden din står overfor noen alvorlige risikoer, enten det skyldes et ødelagt MicroSD -kort, sporadisk uhell eller sorg, eller bare de irriterende krypene. For å beskytte alt ditt harde arbeid, vil vi la serveren automatisk lagre verdensfilen hver kveld. For å forhindre at MicroSD -kortet fylles opp, sletter vi også sikkerhetskopier som er mer enn en uke gamle. Etter det kan du enkelt kopiere dem til din egen PC eller en annen sikkerhetskopistasjon for enda mer sikkerhet.

Vi starter med å bruke Putty for å koble til Pi igjen for å lage et nytt skript.

nano dailybackup.sh

Kopier følgende kommandoer til skriptet:

# Stopp Minecraft -serveren

skjerm -x minecraft -X ting stopper^M dvale 5 # Kopier papirkatalog til backup/PaperYYDDMM cp -a Paper/. backup/Paper $ (date +%F) # Slett sikkerhetskopier eldre enn 7 dager finn backup/* -mindepth 0 -maxdepth 0 -type d -ctime +7 -exec rm -rf {};

Og så si det med meg - lagre filen ved å trykke ctrl -x, Y, enter.

Nå skal vi lage en tilbakevendende oppgave for å kjøre backup -skriptet hver kveld ved hjelp av crontab.

crontab -e

Du får valg av redaktører første gang du kjører denne kommandoen, velg nummer 2 for Nano.

Dette åpner en spesiell fil for planlegging av oppgaver. Legg til følgende linjer nederst i denne filen:

5 0 * * * /home/pi/dailybackup.sh

15 0 * * * sudo omstart

Den første linjen forteller Pi å kjøre backup -skriptet klokken 12:05 hver kveld. Den andre linjen forteller Pi om å starte på nytt ti minutter senere. Hvis du foretrekker et annet tidspunkt for sikkerhetskopiering og omstart, kan du endre disse linjene slik at de passer dine preferanser. Bare husk at det første tallet er minuttet og det andre tallet er timen i 24 -timers format. De tre stjernene sørger for at dette skriptet kjøres hver dag.

Når systemet ditt har kjørt en stund, vil du kanskje ha for vane å lagre sikkerhetskopiene til et annet sted utenfor Pi's MicroSD -kort. Denne oppgaven er veldig enkel ved å koble til serveren din ved hjelp av Filezilla. Bare dra sikkerhetskopimappen fra høyre side av Filezilla og slipp den til PCen. Når den har kopiert alle filene, kan du lagre dem så lenge du vil!

Og hvis tragedien noen gang rammer, og du må gå tilbake til en av lagringsfilene dine, er det en rask og enkel prosedyre. Sørg først for at du har stoppet serveren:

skjerm -r minecraft

Stoppe

Bruk deretter Filezilla til å slette papirkatalogen og erstatt den ved å dra en av de lagrede katalogene tilbake til Pi. Sørg for at du sletter datoen fra katalognavnet, slik at den igjen bare heter Papir. Deretter kan du starte serveren på nytt med

./startup.sh

Og akkurat slik kan du komme tilbake til byggingen!

Trinn 6: Koble til lysdiodene

Koble til lysdiodene
Koble til lysdiodene
Koble til lysdiodene
Koble til lysdiodene
Koble til lysdiodene
Koble til lysdiodene

På tide å legge til litt lys! Det er her serveren din begynner å bli mer enn bare en støvoppsamler bak skjermen. Dette trinnet viser deg hvordan du lodder og fester Neopixel Jewel til Raspberry Pi, og installerer deretter programvaren som trengs for å kjøre lysdiodene. Like etterpå trenger du aldri å lure på om noen er online og venter på å spille med deg, fordi serveren din vil fortelle deg det med et blikk!

Adafruit's Neopixel er fantastiske lysdioder. De er RGB, noe som betyr at de kan lyse opp i hvilken som helst farge du vil. De er adresserbare, noe som betyr at du kan bruke programvarekommandoer til å endre farge når du vil. For mye mer flott informasjon om hvordan Neopixels fungerer med Raspberry Pi, ta en titt på den offisielle Adafruit -guiden.

Juvelen har 7 lysdioder som vil gi oss mange sterke, lyse farger. Det er også fem loddekontaktpunkter, men vi bruker bare tre. Jeg anbefaler på det sterkeste at du bruker tre forskjellige fargede ledninger for å unngå å blande dem når du kobler dem til Pi senere. I eksemplene mine brukte jeg rød, svart og brun.

Før du begynner dette trinnet, vil du ha Raspberry Pi helt slått av. Skriv inn disse kommandoene og koble deretter fra Pi -strømforsyningen.

skjerm -r minecraft

Stoppe

sudo shutdown -h nå

Klipp av tre kvinnelige GPIO -ledninger, lange nok til at du har rikelig med ledninger å jobbe med mens du lodder. Du kan alltid sløyfe overflødig som jeg gjorde. Lodd forsiktig ledningene til kontaktene på Jewel. Fest deretter hunkontaktene til Raspberry Pi GPIO -pinnene:

PWR til pin 1 = 3,3V

GND til pin 6 = Jord

IN til pin 12 = GPIO18

Når Jewel er på plass, kan du koble Pi til igjen og bruke Putty til å koble til og installere LED -programvaren med følgende kommandoer. Se etter steder som kan be deg om å angi Y for å fortsette installasjonen.

sudo apt-get install build-essential python-dev git

sudo apt-get install scons

sudo apt-get install swig

git -klon

cd rpi_ws281x

scons

Viktig ** I neste trinn skal vi gjøre et mindre tillegg til biblioteket for neopiksel. Dette er nødvendig for å unngå en minnefeil som gjorde meg gal i flere dager. Uten det vil lysdiodene fungere i noen timer og deretter slutte å oppdatere riktig. **

cd python

python setup.py build

sudo nano build/lib.linux-armv7l-2.7/neopixel.py

Bruk pil ned for å bla forbi linjen som sier klasse Adafruit_NeoPixel (objekt):. Ikke langt forbi finner du en seksjon med blå tekst som sier def _cleanup (self). Du kopierer følgende linje til denne delen, akkurat som vist på skjermbildet ovenfor.

ws.ws2811_fini (self._leds)

Og nok en gang må vi lagre endringene med ctrl-x, Y, enter.

cd ~

cd rpi_ws281x/python

sudo python setup.py installere

Deretter må vi fortelle testfilen antall lysdioder vi har, så kan vi tenne dem!

cd -eksempler

sudo nano strandtest.py

Finn linjen som sier LED_COUNT = 16 og endre den til LED_COUNT = 7, deretter ctrl-x, Y, enter for å lagre.

sudo python strandtest.py

Hvis alt har gått riktig, har du nettopp blitt blendet av en blinkende regnbueeksplosjon. Når du kan se igjen, trykker du på ctrl-c for å stoppe lysene. Lysdiodene slås ikke av, men de slutter å blinke, og det er bra nok for nå.

Trinn 7: Programmer lysdiodene til å kontrollere serverstatusen

Programmer lysdiodene til å kontrollere serverstatusen
Programmer lysdiodene til å kontrollere serverstatusen

Med lysdiodene våre installert og klare, er det på tide å få dem til å reagere på serveren. Spesielt vil vi få dem til å angi det nåværende antallet spillere på serveren:

Spillere = malm

  • 0 = Redstone
  • 1-2 = Jern
  • 3-4 = Gull
  • 5-6 = Smaragd
  • 7-8 = Diamant

Hvis serveren ikke kjører, vil Oreblock være kull (lysdioder av). Og som en ekstra bonus, hvis statuskontrollen ikke finner en internettforbindelse, vil LEDene blinke gult!

For å hente spillertellingen fra serveren skal vi installere mcstatus fra Nathan Adams, en av Mojangs spillutviklere.

sudo apt-get install python-pip

sudo pip installer mcstatus

Da må vi kopiere de to python -skriptene nedenfor, mcled.py og ledoff.py, til serveren vår med Filezilla. Bare dra og slipp de to skriptene i boksen til høyre, som vist på skjermbildet.

Prøv ledoff.py nå, så vi kan slå av lysdiodene som ble igjen i forrige trinn.

sudo python ledoff.py

Når du kjører skriptene manuelt som dette, vil du motta en melding som sier "Segmenteringsfeil". Dette er et uløst problem i biblioteket Neopixel.py som ikke har noen effekt på det vi gjør.

Hvis du er nysgjerrig på hvordan disse skriptene fungerer, kan du åpne dem med hvilken som helst tekstredigerer på din PC, eller ved å bruke nano på terminalskjermen. Bare vær forsiktig så du ikke ved et uhell lagrer endringer som kan stoppe dem fra å fungere!

Merk ** mcled.py forutsetter at du bruker port 26565 fra mitt eksempel. Hvis du bruker en annen port, må du endre skriptet slik at det samsvarer med følgende trinn **

sudo nano mcled.py

Finn en rød tekstlinje som sier "# Get server player count", og under det vil du se en linje som inneholder grønn tekst som sier "localhost" og portnummeret ved siden av. Endre portnummeret for å matche ditt, og lagre endringene som alltid med ctrl-x, Y, enter.

For å få konstante oppdateringer på serverstatusen, skal vi be Pi om å kjøre mcled.py -skriptet hvert minutt, og det betyr at du setter opp et par flere linjer i crontab.

crontab -e

Du ser de to linjene vi la til tidligere for planlegging av sikkerhetskopier og omstart. Nå vil vi legge til to til:

* 6-20 * * * sudo python mcled.py

0 21 * * * sudo python ledoff.py

Den første linjen forteller Pi å kjøre mcled.py hvert minutt i hver time mellom kl. 06.00 og 20.59. Den andre linjen forteller Pi å slå av lysdiodene klokken 21.00. Det er en personlig preferanse, for på den tiden spiller barna mine ikke lenger Minecraft, selv om serveren fortsetter å kjøre. Vi har også OreServer fremtredende vist over TV -en, og det sterke lyset blir irriterende om kvelden. Du kan selvsagt endre disse to linjene for å få lysdiodene til å kjøre non-stop, eller slå seg av senere, eller hva som passer dine egne formål.

Kort tid etter at endringene er lagret (er du lei av ctrl-x, Y, skriv inn ennå?) Blir manuset kalt og juvelen din lyser opp igjen. Det vil mest sannsynlig være rødt for å indikere at serveren kjører, men ikke er i bruk. Ta et øyeblikk nå for å starte Minecraft og bli med på serveren slik vi gjorde under vår tidligere test. Kort tid etter at du har blitt med, bør lysdiodene bytte til hvitt og deretter tilbake til rødt når du kobler fra.

Trinn 8: Lag malmhuset

Lag malmkassen
Lag malmkassen
Lag malmkassen
Lag malmkassen
Lag malmhuset
Lag malmhuset
Lag malmkassen
Lag malmkassen

Den siste berøringen for å bringe alt sammen er oreblock -saken til Raspberry Pi. For å lage Ore -saken brukte jeg Lulzbot TAZ6 3D -skriveren på min lokale makerpace, RiverCityLabs. Jeg har levert mine utskrivbare. STL -filer for bunnen og toppen nedenfor. Hvis du ikke har din egen 3D -skriver, kan du se etter et produsentfellesskap i området ditt, de er flotte! Eller du kan ha et lokalt bibliotek eller en skole som har skrivere tilgjengelig for publikum. Det er også flere online 3D -utskriftstjenester som kan skrive ut og sende deg et design. Eller du kan bli kreativ! Det er ingenting som hindrer deg i å lage saken av papp eller en haug med grå Lego eller hva du ellers har nær hånden.

Noen viktige notater for når du konfigurerer 3D -skriverfilene:

  • Skriv ut filen uten endringer i skalering for å sikre at monteringshullene er på linje med Pi.
  • Snu toppen opp ned slik at den åpne enden vender opp.
  • Sørg for å slå på støtteinnstillingene, slik at overhengene på veggene ikke blir rotete.

Når utskriften er fullført, kan du feste Pi til basen med fire 2,5 mm skruer. Jeg finner ikke en lenke til det faktiske produktet, men jeg fant disse i en 2 -pakning på Menards, som var mye bedre enn å bestille en eske med 100 fra Amazon.

Fjern alt støttematerialet fra toppen, og skjær et ark med bakepapir eller hvitt silkepapir for å passe innvendig. Dette vil spre LED -lysene, noe som får den glødende effekten til å se en million ganger bedre ut enn å bare la hullene stå åpne.

Fest den riktige vinkel MicroUSB -adapteren til strømporten slik at kabelen går ut på baksiden av saken ved siden av ethernet -porten.

Nå kan du koble til strøm- og ethernet -ledningene igjen, sette toppen på plass og nyte!

Trinn 9: Oppsummering, flere tanker og takk

Storpris i Minecraft Challenge 2018

Anbefalt: