Sisukord:

OreServer - Raspberry Pi spetsiaalne Minecrafti server LED -mängija indikaatoriga: 9 sammu (piltidega)
OreServer - Raspberry Pi spetsiaalne Minecrafti server LED -mängija indikaatoriga: 9 sammu (piltidega)

Video: OreServer - Raspberry Pi spetsiaalne Minecrafti server LED -mängija indikaatoriga: 9 sammu (piltidega)

Video: OreServer - Raspberry Pi spetsiaalne Minecrafti server LED -mängija indikaatoriga: 9 sammu (piltidega)
Video: What is a Server? Servers vs Desktops Explained 2024, November
Anonim

MrJymmFollow About: Palju ideid, kunagi pole piisavalt aega. Lisateave MrJymmi kohta »

Juuli 2020 UPDATE - enne selle projektiga alustamist pidage meeles, et erinevates tarkvaratööriistades, mida selle loomiseks kasutasin üle kahe aasta tagasi, on tehtud palju muudatusi ja värskendusi. Seetõttu ei tööta paljud sammud enam nii, nagu on kirjutatud. Projekti saab veel lõpule viia ja see on endiselt lõbus, kuid oodake, et peate kõik ise toimima, et kõik toimiks. Mõningaid lahendusi võib leida hiljutistest kommentaaridest juhendi lõpus. Aitäh ja head kaevandamist

Kui olete Minecrafti mängimise fänn, olete ilmselt mõelnud, kui lõbus oleks oma isiklik server oma sõpradega jagada. Mu pojad küsisid minult pidevalt oma jagatud maailma ja lõpuks tekkis nende huvi Minecrafti vastu koos minu huviga Raspberry Pi vastu ning OreServeri idee sündis.

See projekt näitab teile, kuidas seadistada lõbusa ja ainulaadse funktsiooniga Minecrafti server - see on ehitatud meenutama maakivi ja see süttib erinevate värvidega, sõltuvalt sellest, kui palju inimesi teie maailmas praegu mängib!

Kuid see ei lõpe seal! Samuti teeme serveri Minecrafti arvutiväljaandega kõigile kättesaadavaks, nii et saate oma serveri aadressi jagada ja sõpru oma maailma kutsuda. See töötab ööpäevaringselt, nii et isegi kui olete hõivatud või kodust väljas, saavad teie sõbrad edasi ehitada. Ja me seadistame automaatsed varukoopiad igaks juhuks, kui juhtub tragöödia (see TNT kahur kõlas toona hea mõttena …), et saaksite eelmiste päevade töö lähtestada.

Samm: osade ja tööriistade loend

Osade ja tööriistade loend
Osade ja tööriistade loend

Need on osad, tööriistad ja tarkvara, mida vajate selle projekti lõpuleviimiseks. Olen lisanud viitamiseks linke, kuid enamik neist tarvikutest on saadaval mitmelt müüjalt, nii et otsige need sealt, kus teile kõige lihtsam / odavam on.

Osad:

  • Raspberry Pi 3 ja toiteallikas

    Need on saadaval ka komplektina

  • Micro USB täisnurga adapter
  • MicroSD kaart

    Vähemalt 8 GB, kuid soovitatav on kvaliteetne 16 või 32 GB kaart

  • Adafruit Neopixel juveel
  • Kolm lühikest GPIO juhet
  • Hõbedane või hall 3D -printimisniit (mis tahes tüüpi)
  • 2,5 mm kruvid (x4)
  • Pärgamentpaber või valge siidpaber

Tööriistad:

  • MicroSD kaardilugeja
  • Jootmisseadmed
  • Väike kruvikeeraja
  • 3D printer

Tarkvara:

  • Minecraft (Java PC Edition)
  • Raspbian Lite ISO

    MITTE "töölauaga" versioon

  • söövitaja.io
  • Putty või sarnane SSH terminali klient
  • Filezilla või sarnane FTP klient

Samm: seadistage ja valmistage ette Raspberry Pi

Seadistage ja valmistage ette Raspberry Pi
Seadistage ja valmistage ette Raspberry Pi
Seadistage ja valmistage ette Raspberry Pi
Seadistage ja valmistage ette Raspberry Pi
Seadistage ja valmistage ette Raspberry Pi
Seadistage ja valmistage ette Raspberry Pi
Seadistage ja valmistage ette Raspberry Pi
Seadistage ja valmistage ette Raspberry Pi

Enne serveri installimise alustamist peame Pi põhiseadistamise ja konfigureerimise etapid lõpule viima.

1. Valmistage ette MicroSD -kaart

Esiteks peame lisama Rasbiani operatsioonisüsteemi oma MicroSD -kaardile, kasutades etcher.io.

  1. Sisestage oma MicroSD -kaart kaardilugejasse ja kaardilugeja arvuti USB -porti
  2. Käivitage etcher ja kasutage nuppu Valige pilt, et laadida Rasbian Lite ISO
  3. Valige installiseadme jaoks MicroSD -kaart
  4. Klõpsake nuppu Flash!

Kui protsess lõpeb, eemaldab söövitaja MicroSD -draivi süsteemist, kuid peame lisama veel ühe faili, nii et lihtsalt eemaldage see vooluvõrgust ja ühendage see uuesti. Kaart loetakse nüüd draiviks, millel on silt "boot". Kopeerige alglaadimisseadmesse tühi fail nimega "ssh" ja seejärel eemaldage MicroSD -draiv uuesti süsteemist. MicroSD -kaart on nüüd valmis Raspberry Pi -sse liikuma.

** Kui te ei saa faili "ssh" alla laadida, on tühja tekstifaili ümbernimetamisega lihtne seda ise teha. Kustutage kindlasti laiend.txt. Kui see töötab, muutub ikoon tühjaks nagu ekraanipildil. **

2. Ühendage Pi terminaliga

Nüüd, kui Pi -l on operatsioonisüsteem, lülitame selle sisse!

  1. Ühendage nii juhtmega Etherneti kaabel kui ka toiteallikas Rasberry Pi -ga. Kuigi Pi 3-l on sisseehitatud WiFi-tugi, on traadiga ühendus meie serveri jaoks tugevam ja eelistatavam.
  2. Järgmisena peame Pi ruuterist IP -aadressi tooma. See samm erineb veidi sõltuvalt teie ruuteri kaubamärgist - minu puhul sisestan oma brauserisse 192.168.1.1, et logida sisse ruuteri juhtpaneelile. Otsite DHCP klientide loendit ja kirjet nimega "raspberrypi". Pange tähele määratud IP -aadressi, minu näites on see 192.168.1.115. Nüüd on ka hea võimalus määrata IP -aadressiks "reserveeritud" või "alaline", et sellele ei määrataks hiljem teist aadressi. Kui teil on selle sammuga raskusi, siis vaadake üksikasju oma ruuteri dokumentatsioonist või tugisaidilt.
  3. Nüüd saame Putty avada, sisestada väljale "Host Name" Pi IP -aadressi ja klõpsata "Open".

Nüüd peaksite vaatama musta ekraani, millel on "login as:". See on teie Pi terminal ja see on koht, kus me teeme ülejäänud töö serveri seadistamisel. Pidage meeles, et terminaliekraanid on mõeldud klaviatuuridele! Teie hiirest pole siin palju kasu.

3. Raspi-config

Esialgse seadistuse lõpuleviimiseks peame vaikimisi sisse logima:

logige sisse kui: pi

parool: vaarikas

Nüüd saame Pi vaikeseadete põhiseadistuse läbida, sisestades järgmise

sudo raspi-config

Peame tegema mitmeid muudatusi ja ma viin teid läbi samas järjekorras, nagu need on konfiguratsiooniekraanil nummerdatud.

  1. Kasutaja parooli muutmine - see on kohustuslik! Kõik teavad vaikimisi parooli, nii et vahetage see kohe.
  2. Võrgu valikud

    Hostinimi - vaikimisi on see "raspberrypi", kuid soovi korral saate seda muuta kirjeldavamaks

  3. -(ei ole muutust)-
  4. Lokaliseerimise valikud - kui te pole Ühendkuningriigis, soovite need oma riigiks muuta. Minu näited eeldavad, et see on USA.

    1. Muuda lokaati - kasutage allanoolt, et leida kirje "en_GB", mille kõrval on *. Kasutage tühikut, et see * eemaldada, seejärel minge veidi alla jaotisse „en_US. UTF-8” ja märkige see uuesti tühikuga *.
    2. Muuda ajavööndit - selle seadistamine on oluline, et meie ajastatud ülesanded töötaksid õigesti
    3. Muuda klaviatuuri paigutust - võib -olla saate selle vahele jätta, kuid kui see jäetakse Ühendkuningriiki, liigutatakse seal mõnda klaviatuuri sümbolit
  5. Liidese valikud

    1. -(ei ole muutust)-
    2. SSH - lubage see, et saaksite pärast Pi taaskäivitamist Putty kasutamist jätkata.
  6. -(ei ole muutust)-
  7. Täpsemad valikud

    1. Laiendage failisüsteemi - see tagab, et Pi saab kasutada kogu SD -kaardil saadaolevat ruumi
    2. -(ei ole muutust)-
    3. Mälu jagatud - muutke see 16 -ks, et vabastada Minecrafti jaoks rohkem mälu.

Nüüd valige "Lõpeta" ja seejärel taaskäivitamiseks "Jah".

See lõpetab teie seansi Putty'is. Lihtsalt andke talle hetk taaskäivituse lõpuleviimiseks, seejärel avage uuesti Putty ja ühendage uuesti Pi IP -aadressiga. Ärge unustage oma uut parooli kasutada!

Samm: installige spetsiaalne server

Serveritarkvara seadistamine on pikim, kuid ka kõige olulisem samm. Me kulutame palju aega hunniku igavate Linuxi käskude sisestamisele. Ära lase sel end hirmutada! Niikaua kui saate kopeerida ja kleepida, saate selle osa läbi.

Minecrafti server on üsna keeruline ja selle käitamine nii väikeses arvutis kui Raspberry Pi nõuab mõningast sujuvamaks muutmist. Alustasin selle James Chambersi fantastilise õpetusega, sest tal on mitmeid suurepäraseid näpunäiteid serveri jõudluse maksimeerimiseks. Teen kokkuvõtte allpool tema installiprotsessist ja toon välja mõned tehtud muudatused ja värskendused, kuid soovitan tungivalt lugeda tema lehte, et saada rohkem üksikasju.

Nüüd, kui olete vaikimisi "pi" ja uue parooli abil uuesti sisse loginud, võime hakata sisestama käske serverifailide installimiseks.

Oluline - paljud neist käskudest on pikad ja keerulised ning terminaliaknasse trükkimine oleks tõeline piin. Nii et ärge tehke seda! Tõstke selles aknas esile käsu tekst, kopeerige see klahvikombinatsiooniga ctrl-c ja seejärel klõpsake terminaliaknas teksti kleepimiseks hiire parema nupuga. Vaata, see hiir on millekski hea!

Selle sammu ülejäänud ajal kopeerite kõik nendes koodikastides olevad käsud.

Annan lühikesed selgitused selle kohta, mida me teeme.

Alustame oma tarkvara ajakohastamisega.

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

Kui näete installimise kinnitamise taotlust, tippige "y" ja vajutage nõustumiseks ja jätkamiseks sisestusklahvi.

Minecraft töötab Javaga, kuid meie "Lite" Rasbiani install ei sisaldanud seda, nii et võtame selle.

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

Märkus ** Kui Java värskendatakse uuemale versioonile, võib see käsk vananeda. Kui saate veateate, peate käsu värskendama uusima versiooni jaoks. Külastage Oracle'i Java allalaadimislehte, klõpsake nuppu "Nõustu litsentsilepinguga" ja paremklõpsake uusima linux-arm32 faili linki ja valige kopeeri link. Peate seda värskendatud linki kasutama ülaltoodud käsu teksti asendamiseks, alustades aadressist http. **

Nüüd saame installida just allalaaditud Java -failid.

sudo mkdir /usr /java

cd /usr /java

Kui pidite uue versiooni allalaadimislingi muutma, muutke kindlasti järgmiste käskude versiooninumber sobivaks.

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

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

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

cd ~

Ja lõpuks, peamine sündmus, mida olete nii kannatlikult oodanud, installime Minecrafti serveri. See on serveri spetsiaalne versioon nimega Paper ja see on täis optimeeringuid jõudluse parandamiseks.

mkdir paber

wget

unzip master.zip -d paber

mv ~/Paber/RaspberryPiMinecraft-master/* ~/Paber/

cd paber

chmod +x start.sh

wget

java -jar -Xms512M -Xmx800M kirjaklamber.jar

See viimane käsk käivitab serveri esimest korda ja mõne hetke pärast kuvatakse tõrge, mis ütleb, et peate EULA -ga nõustuma. Avage EULA järgmise käsuga:

nano eula.txt

Muutke rida "eula = false" asemel "eula = true". Salvestage muudatused, vajutades klahvikombinatsiooni ctrl-x, seejärel Y ja seejärel sisestusklahvi.

Märkus ** James Chambers mainib oma juhendi punktis SD -kaardi kiirendamise meetodit. Ma pole seda sammu isiklikult proovinud, sest see nõuab kvaliteetset kaarti ja see, mida mul oli kasutada, pole midagi erilist. Usun, et kiirendus parandaks kindlasti jõudlust veelgi, kuid isegi ilma ülekiirendamiseta töötab server piisavalt hästi, nii et ma pole sellel mängivatelt lastelt kaebusi saanud. **

Vaatame kiiresti serveri atribuute ja teeme paar muudatust.

nano server.omadused

Siin on pikk nimekiri asjadest, mida saate oma serveris muuta, näiteks serveri nime ja MOTD isikupärastamine, mängurežiimi muutmine või PvP või käsuplokkide lubamine. Saate kohe oma eelistusi muuta või avada selle faili, et hiljem rohkem muudatusi teha, kuid teeme kohe kaks muudatust.

max mängijad = 8

serveriport = 25565

Kaheksa mängijat on kõrgeim, mida ma soovitaksin, mis tahes kõrgem ja tõenäoliselt näete serveri jõudluse aeglustumist, isegi kui kõik optimeerimised on tehtud, et asju Pi -s käivitada.

Serveriporti tuleks muuta, sest nagu vaarika vaikeparool, teavad kõik vaikimisi kasutatavat pordi 25565. Isegi väike muudatus 26565 -le aitab teie serverit turvalisena hoida. Kirjutage pordi number selle juurde, kuhu Pi IP -aadress salvestati. Mõlemat vajate hiljem.

Kui olete seadete värskendamise lõpetanud, salvestage muudatused, vajutades klahvikombinatsiooni Ctrl-x, seejärel Y ja seejärel sisestusklahvi.

Järgmine samm teie serveri ettevalmistamisel võtab ka pärast käivitamist kõige kauem aega, tõenäoliselt umbes tund. Need käsud genereerivad teie maailma ette, mis tähendab, et server ei pea kogu seda tööd hiljem tegema, kui teie ja teie sõbrad uurite.

cd ~/Paber/pistikprogrammid

wget --content -disposition -E

sudo apt-get installiekraan

cd paber

./start.sh

Tundub, et midagi pole juhtunud, kuid teie server on nüüd käivitunud! Serveriga suhtlemiseks peame seda käsku kasutama

ekraan -või minecraft

Ja siis loome maailma ette:

wb maailma komplekt 1000 kudema

wb maailm täitke 1000

wb täitmine kinnita

See on osa, mis võtab kaua aega. Mine haara suupisteid ja vaata hiljem tagasi! Kui protsess on lõpetatud, sulgege server väga lihtsa käsuga

peatus

See salvestab ja sulgeb serveri ning viib teid tagasi Raspberry Pi terminali.

Meie viimane ülesanne on seadistada server automaatselt käivituma, kui Raspberry Pi ühendatakse või taaskäivitatakse. Seda saame teha lihtsa skripti loomisega.

cd ~

nano käivitamine.sh

Oleme varem paari faili redigeerimiseks kasutanud nanot, kuid seekord loome selle nullist, nii et aken jääb tühjaks. Kopeerige need kaks rida faili:

cd/home/pi/Paper

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

Seejärel salvestage uus skript, vajutades klahvikombinatsiooni ctrl-x, seejärel Y ja seejärel sisestusklahvi.

chmod +x startup.sh

chmod +x /etc/rc.local

sudo nano /etc/rc.local

Faili rc.local viimane rida ütleb "exit 0". Otse selle joone kohal lisame selle:

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

Ja veel kord salvestame failimuudatused klahvikombinatsiooniga ctrl-x, seejärel Y ja seejärel sisestame.

sudo taaskäivitamine

Saate teate, et ühendus on suletud, ja saate akna Putty sulgeda.

See on kõik! Olete igavast osast läbi saanud! Nüüd oleme valmis oma serverit testima!

Samm: testige oma serverit ja kutsuge oma sõpru

Testige oma serverit ja kutsuge oma sõpru
Testige oma serverit ja kutsuge oma sõpru
Testige oma serverit ja kutsuge oma sõpru
Testige oma serverit ja kutsuge oma sõpru
Testige oma serverit ja kutsuge oma sõpru
Testige oma serverit ja kutsuge oma sõpru
Testige oma serverit ja kutsuge oma sõpru
Testige oma serverit ja kutsuge oma sõpru

Järgmisena kontrollime, kas server töötab, ja veenduge, et meie sõbrad saaksid sellega liituda.

Avage oma arvutis Minecrafti käivitaja ja klõpsake nuppu Esita. Veenduge, et kasutate paberiserverile vastavat uusimat versiooni.

Valige põhiekraanil Mitmikmäng ja seejärel Lisa server. Sisestage nimi, mille soovite oma serverite loendisse lisada, ja serveri aadressi jaoks sisestage oma Pi IP ja pordi number. Minu näites kasutame 192.168.1.115:26565. Veenduge, et IP -aadressi ja pordinumbri vahel oleks koolon ning tühikuid poleks. Klõpsake nuppu Valmis ja seejärel nuppu Esita oma serveris. Mõne hetke pärast leiad end oma uude maailma!

Oota, tule tagasi! Ära hakka ise kõike ehitama, kutsume mõned sõbrad! Kahjuks ei saa nad kasutada sama IP -aadressi, mida teie. Nii et selle toimimiseks peate esmalt oma ruuterile ütlema, et teie majast väljaspool asuvad inimesed saavad Pi -ga ühenduse luua. Seda nimetatakse pordi edastamiseks ja täpne protsess sõltub teie ruuterist pisut. Lisasin ekraanipildi, kuidas see minu TP Linki kaubamärgi ruuteril välja näeb, kuid võib -olla peate lisateabe saamiseks kontrollima oma ruuterite tugisaiti.

Sisestage oma portide edastamise seadetes oma serveri jaoks valitud pordi number ja seejärel oma Raspberry Pi IP -aadress. Teie ruuter teab nüüd, et kui teie sõbrad proovivad selle pordinumbriga ühendust luua, tuleks nad suunata Pi -le.

Järgmisena peame kasutama oma ainulaadse aadressi, mida nimetatakse hostinimeks, loomiseks tasuta teenust, näiteks No-IP. Samuti seadistate oma ruuteri või arvuti, et hoida hosti nime IP -aadress ajakohasena.

Järgige kohe nende seadistusjuhendis toodud juhiseid.

Kui olete oma No-IP konto seadistamise lõpetanud, saavad teie sõbrad teie serveriga ühenduse luua, sisestades oma uue hostinime ja pordi numbri oma Minecrafti mitme mängija ekraani sektsiooni Server Address. Näiteks hostinimi.ddns.net:26565.

Samm: päästa maailm! (automaatse varundamisega)

Päästa maailma! (automaatse varundamisega)
Päästa maailma! (automaatse varundamisega)

See samm on valikuline, kuid see on potentsiaalne elupäästja. Teie maailm seisab silmitsi tõsiste riskidega, olgu siis rikutud MicroSD -kaardi, juhusliku pahanduse või leinaga või lihtsalt nende tüütute roomikutega. Kogu teie raske töö kaitsmiseks laseme serveril igal õhtul automaatselt teie maailmafaili salvestada. Teie MicroSD -kaardi täitumise vältimiseks kustutame ka kõik üle nädala vanused varukoopiad. Pärast seda saate need veelgi turvalisemaks muutmiseks hõlpsasti oma arvutisse või mõnda teise varukettale kopeerida.

Alustuseks kasutame Puttyt, et taasühendada meie Pi, et luua uus skript.

nano dailybackup.sh

Kopeerige skripti järgmised käsud:

# Peatage Minecrafti server

ekraan -x minecraft -X kraam peatub^M unerežiim 5 # Copy Paper kataloog varundamiseks/PaperYYDDMM cp -a Paper/. backup/Paper $ (kuupäev +%F) # Kustuta üle 7 päeva vanad varukoopiad leia varukoopia/* -mindepth 0 -maxdepth 0 -type d -ctime +7 -exec rm -rf {};

Ja siis öelge seda minuga - salvestage oma fail, vajutades klahve ctrl -x, Y, sisestusklahvi.

Nüüd loome korduva ülesande, et käivitada igal õhtul varukoopia skripti abil crontab.

crontab -e

Selle käsu esmakordsel käivitamisel saate valida redaktorite hulgast, valige Nano jaoks number 2.

See avab ülesannete ajastamiseks spetsiaalse faili. Selle faili lõppu lisage järgmised read:

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

15 0 * * * sudo taaskäivitamine

Esimene rida käsib Pi -l igal õhtul kell 12.05 varukoopiat käivitada. Teine rida käsib Pi -l kümme minutit hiljem taaskäivitada. Kui soovite varundamiseks ja taaskäivitamiseks erinevat aega, saate neid ridu oma eelistuste järgi muuta. Pidage meeles, et esimene number on minut ja teine number on tund 24h formaadis. Kolm tärni tagavad, et see skript töötab iga päev.

Kui teie süsteem on mõnda aega töötanud, võiksite harjuda varukoopiate salvestamisega Pi asukohast MicroSD -kaardilt teise kohta. See ülesanne on väga lihtne, kui ühendate oma serveriga Filezilla abil. Lihtsalt lohistage varukoopia Filezilla paremalt küljelt ja laske see arvutisse. Kui see kopeerib kõik failid, saate neid säilitada nii kaua kui soovite!

Ja kui kunagi juhtub tragöödia ja peate mõne oma salvestusfaili juurde tagasi pöörduma, on see kiire ja lihtne protseduur. Esmalt veenduge, et olete serveri peatanud:

ekraan -või minecraft

peatus

Seejärel kasutage Filezilla abil kataloogi Paper kustutamiseks ja selle asendamiseks, lohistades ühe oma salvestatud kataloogist tagasi pi. Veenduge, et kustutate kataloogi nimest kuupäeva, et see saaks uuesti nimeks lihtsalt Paber. Seejärel saate oma serveri taaskäivitada

./startup.sh

Ja niisama saate naasta ehituse juurde!

Samm: ühendage LED -id

Ühendage LED -id
Ühendage LED -id
Ühendage LED -id
Ühendage LED -id
Ühendage LED -id
Ühendage LED -id

Aeg lisada mõned tuled! Siin hakkab teie server muutuma rohkem kui lihtsalt tolmu kogujaks teie monitori taga. See samm näitab teile, kuidas Neopixel Jewel juua ja Raspberry Pi külge kinnitada ning seejärel LED -ide käitamiseks vajalik tarkvara installida. Varsti pärast seda ei pea te kunagi mõtlema, kas keegi ootab võrgus teiega mängimist, sest teie server ütleb teile vaid pilguga!

Adafruit'i Neopixelid on fantastilised LED -id. Need on RGB -d, mis tähendab, et nad võivad süttida mis tahes soovitud värviga. Need on adresseeritavad, mis tähendab, et saate tarkvarakäske kasutada nende värvi muutmiseks igal ajal. Kui soovite palju rohkem teavet selle kohta, kuidas Neopixels koos Raspberry Pi -ga töötavad, vaadake Adafruit ametlikku juhendit.

Jewelil on 7 LED -i, mis annavad meile palju tugevat eredat värvi. Samuti on viis jootmispunkti, kuid me kasutame ainult kolme. Soovitan tungivalt kasutada kolme erinevat värvi juhet, et vältida nende segunemist, kui ühendate need hiljem Pi -ga. Oma näitefotodel kasutasin punast, musta ja pruuni.

Enne selle sammu alustamist soovite, et Raspberry Pi oleks täielikult välja lülitatud. Sisestage need käsud ja seejärel ühendage Pi toide lahti.

ekraan -või minecraft

peatus

sudo shutdown -h nüüd

Katkestage kolm emast GPIO -juhet, piisavalt pikad, et teil oleks jootmise ajal palju juhtmeid. Alati saab üleliigse kokku ajada nagu mina. Jootke juhtmed ettevaatlikult juveeli kontaktide külge. Seejärel kinnitage naissoost pistikud Raspberry Pi GPIO tihvtide külge:

PWR kuni tihvti 1 = 3,3 V.

GND kuni tihvti 6 = maapind

IN kuni tihvti 12 = GPIO18

Kui Jewel on paigas, saate Pi uuesti ühendada ja kasutada LED -tarkvara ühendamiseks ja installimiseks Puttyt järgmiste käskudega. Jälgige kohti, mis võivad installimise jätkamiseks paluda sisestada Y.

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

sudo apt-get install scons

sudo apt-get install swig

git kloon

cd rpi_ws281x

scons

Tähtis ** Järgmises etapis teeme neopikseliteeki väikese täienduse. See on vajalik, et vältida mälutõrkeid, mis mind mitu päeva hulluks ajasid. Ilma selleta töötavad LED -id paar tundi ja lõpetavad seejärel õige värskendamise. **

cd python

python setup.py build

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

Liikuge allanoolega mööda rida, mis ütleb: Adafruit_NeoPixel klass (objekt): jaotis, täpselt nagu ülaltoodud ekraanipildil näidatud.

ws.ws2811_fini (self._leds)

Ja veel kord peame muudatused salvestama klahvikombinatsiooniga ctrl-x, Y, sisestama.

cd ~

cd rpi_ws281x/python

sudo python setup.py install

Järgmisena peame testfailile ütlema, kui palju LED -e meil on, siis saame need põlema panna!

cd näited

sudo nano strandtest.py

Leidke rida LED_COUNT = 16 ja muutke see LED_COUNT = 7, seejärel salvestage ctrl-x, Y, sisestage.

sudo python strandtest.py

Kui kõik on läinud õigesti, olete pimestanud vilkuva vikerkaare plahvatuse. Kui näete uuesti, vajutage tulede peatamiseks ctrl-c. LED -id ei lülitu välja, kuid lõpetavad vilkumise ja see on praegu piisavalt hea.

Samm: programmeerige valgusdioodid serveri oleku kontrollimiseks

Programmeerige valgusdioodid serveri oleku kontrollimiseks
Programmeerige valgusdioodid serveri oleku kontrollimiseks

Kui meie LED -id on paigaldatud ja valmis, on aeg panna need serverile reageerima. Täpsemalt paneme nad näitama serveris mängijate praegust arvu:

Mängijad = Maak

  • 0 = punane kivi
  • 1-2 = raud
  • 3-4 = kuld
  • 5-6 = smaragd
  • 7-8 = teemant

Kui server ei tööta, on Oreblock süsi (LED -id ei põle). Ja lisaboonusena, kui olekontroll ei leia Interneti -ühendust, vilguvad LED -id kollaselt!

Mängijate arvu serverist toomiseks installime mcstatuse Mojangi ühe mänguarendaja Nathan Adamsi käest.

sudo apt-get install python-pip

sudo pip install mcstatus

Seejärel peame kopeerima kaks allpool toodud pythoni skripti mcled.py ja ledoff.py oma serverisse koos Filezillaga. Lihtsalt lohistage kaks skripti paremal asuvasse kasti, nagu on näidatud ekraanipildil.

Minge edasi ja katsetage ledoff.py kohe, et saaksime eelmises etapis sisse lülitatud LED -id välja lülitada.

sudo python ledoff.py

Skripte käsitsi sel viisil käivitades kuvatakse teade „Segmenteerimisviga”. See on Neopixel.py raamatukogus lahendamata probleem, mis ei mõjuta meie tegemisi.

Kui olete huvitatud nende skriptide toimimisest, saate need avada oma arvuti mis tahes tekstiredaktoriga või terminali ekraanil nano abil. Lihtsalt olge ettevaatlik, et mitte kogemata salvestada muudatusi, mis võivad nende töötamise takistada!

Märkus ** mcled.py eeldab, et kasutate minu näite porti 26565. Kui kasutate mõnda muud porti, peate skripti muutma järgmiste sammudega vastavaks **

sudo nano mcled.py

Leidke punane tekstirida, mis ütleb "# Get server player count", ja selle all näete rida, mis sisaldab rohelist teksti "localhost" ja pordi number selle kõrval. Muutke pordi number omale sobivaks ja nagu alati, salvestage muudatused, vajutades klahvikombinatsiooni Ctrl-x, Y, sisestades.

Serveri oleku pidevate värskenduste saamiseks ütleme Pi -le, et ta käivitaks skripti mcled.py iga minut ja see tähendab veel paari rea seadistamist crontabis.

crontab -e

Näete kahte rida, mille oleme varem varundamise ja taaskäivitamise ajastamiseks lisanud. Nüüd lisame veel kaks:

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

0 21 * * * sudo python ledoff.py

Esimene rida käsib Pi -l käivitada iga tunni tagant mcled.py ajavahemikus 6.00 kuni 20.59. Teine rida käsib Pi -l LED -id välja lülitada kell 21.00. See on isiklik eelistus, sest selleks ajaks ei mängi mu lapsed enam Minecrafti, kuigi server töötab edasi. Samuti on meie teleri kohal nähtaval kohal OreServer ja ere valgus muutub õhtul ärritavaks. Loomulikult saate neid kahte rida muuta, et LED-id töötaksid pidevalt, või lülituvad välja hiljem või mis iganes teie eesmärkide jaoks sobib.

Varsti pärast muudatuste salvestamist (kas olete haige ctrl-x, Y, sisestage veel?) Kutsutakse skript ja teie Jewel süttib uuesti. Suure tõenäosusega on punane, mis näitab, et server töötab, kuid pole kasutusel. Võtke hetk Minecrafti käivitamiseks ja liituge serveriga, nagu tegime oma varasema testi ajal. Varsti pärast liitumist peaksid valgusdioodid valgeks muutuma ja ühenduse katkestamisel punaseks muutuma.

8. samm: valmistage maakivikarp

Tehke maagiümbris
Tehke maagiümbris
Tehke maagiümbris
Tehke maagiümbris
Tehke maagiümbris
Tehke maagiümbris
Tehke maagiümbris
Tehke maagiümbris

Viimane lihv, et see kõik kokku viia, on Raspberry Pi oreblock -ümbris. Ore'i korpuse valmistamiseks kasutasin Lulzbot TAZ6 3D -printerit oma kohalikus tegijate ruumis RiverCityLabs. Esitasin oma prinditavad. STL -failid allpool ja ülaosas. Kui teil pole oma 3D -printerit, kontrollige oma piirkonnas tegijate kogukonda, need on suurepärased! Või võib teil olla kohalik raamatukogu või kool, kus printerid on avalikkusele kättesaadavad. Samuti on mitmeid veebipõhiseid 3D -printimisteenuseid, mille abil saate kujunduse printida ja saata. Või võite olla loov! Miski ei takista teid kartongist või hallist legost hunnikust või muust käepärast valmistamast.

Mõned olulised märkused 3D -printerifailide seadistamisel:

  • Printige fail ilma mastaabimuudatusteta, et veenduda, et kinnitusavad on kohakuti Pi -ga.
  • Pöörake ülemine osa tagurpidi, nii et avatud ots jääb ülespoole.
  • Lülitage kindlasti sisse oma tugiseaded, et seinte üleulatuvad osad ei läheks sassi.

Kui printimine on lõpule jõudnud, saate Pi kinnitada nelja 2,5 mm kruviga aluse külge. Ma ei leia linki tegelikule tootele, kuid leidsin need 2 pakendis Menardis, mis oli palju parem kui Amazonist 100 -se karbi tellimine.

Eemaldage ülaosast kogu tugimaterjal ja lõigake sisse küpsetuspaberi leht või valge siidpaber. See hajutab LED -tulesid, mistõttu helendav efekt näeb miljon korda parem välja kui lihtsalt aukude lahti jätmine.

Kinnitage õige nurga all olev MicroUSB -adapter toitepordi külge nii, et kaabel väljub korpuse tagant Etherneti pordi kõrval.

Nüüd saate toite- ja Etherneti juhtmed uuesti ühendada, topsi paika panna ja nautida!

Samm: kokkuvõte, lisamõtteid ja tänu

Minecraft Challenge 2018 peaauhind

Soovitan: