Sisällysluettelo:

QuizzPi, Raspberry Pi triviapeli Pythonilla: 7 vaihetta (kuvilla)
QuizzPi, Raspberry Pi triviapeli Pythonilla: 7 vaihetta (kuvilla)

Video: QuizzPi, Raspberry Pi triviapeli Pythonilla: 7 vaihetta (kuvilla)

Video: QuizzPi, Raspberry Pi triviapeli Pythonilla: 7 vaihetta (kuvilla)
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Heinäkuu
Anonim
QuizzPi, Raspberry Pi triviapeli Pythonilla
QuizzPi, Raspberry Pi triviapeli Pythonilla
QuizzPi, Raspberry Pi triviapeli Pythonilla
QuizzPi, Raspberry Pi triviapeli Pythonilla

QuizzPi on arcade -tyyppinen triviapeli. QuizzPi syntyi, koska minulla oli tarve tarjota tyttärelleni viihdettä. Hän on 7 -vuotias ja vaatii jo uuden teknologian käyttöä, ajatuksena oli luoda jotain, joka oli sekä hauskaa että opettavaista.

Projektin vaatimukset:

  • Helppokäyttöinen
  • Kannettava
  • Kysymyksiä ja vastauksia on helppo päivittää
  • Huipputulostaulukko

Useita kohteita voidaan määrittää. Voit luoda oman kysymysten/vastausten tietokannan tai käyttää yhtä useista palvelimista, jotka tarjoavat tietokannan, jossa päätät, millaiset kysymykset ovat vaikeita,… Olen luonut tyttärelleni ensimmäisen luokan kysymysten tietokannan, mutta voimme muuta asetuksia saadaksesi trivia -kysymyksiä oline -palvelimelta. Tämä opettavainen versio saa kysymykset yhteistyökysymyksistä ja vastauksista, Open Trivia Database. Olen valinnut yleistä tietoa koskevia kysymyksiä, mutta voit valita elokuviin, urheiluun tai uskontoon liittyviä kysymyksiä.

Pyydän anteeksi huonoa englantiani. Olen espanjalainen, mutta olen mieluummin luonut tämän ohjeen englanniksi, jotta se voi tavoittaa enemmän ihmisiä.

Mennään!

Vaihe 1: Tarvitset joitain materiaaleja ja työkaluja…

Tarvitset joitain materiaaleja ja työkaluja…
Tarvitset joitain materiaaleja ja työkaluja…

Sinulla on varmasti suurin osa materiaaleista kotona…

  • Raspberry Pi 2/3 8 Gt tai enemmän SD -kortilla (35 $)
  • Raspberry Pi 3,5 tuuman LCD -kotelo (11 dollaria). Katso (tämä on valinnainen, voit käyttää mitä tahansa näyttöä, sinun tarvitsee vain muokata QuizzPi -koteloa)
  • Paristot. Voit käyttää virtapankkia tai diy 18650 -akkua (5 dollaria). Minun tapauksessani käytin yhtä Aukey 5000mah -pankkia (12 dollaria). Katso
  • Neljä arcade -painiketta. Minulla on nämä kotona (3 dollaria, 12 painiketta 10 dollaria). Katso
  • Yksi on/off -kytkin (0,25 $). Katso
  • Kaksi USB -liitintä (0,50 $)
  • Yksi USB-/mikro -USB -kaapeli
  • Yksi halpa kaiutin (valinnainen) (0,25 $). Katso
  • Yksi PAM8403 -vahvistin (valinnainen) (0,80 $). Katso
  • Jotkut johdot linkityspainikkeisiin, usb -liittimeen ja virtakytkimeen GPIO -nastoihin (1 $?)
  • Neljä neodyymimagneettia tai voit käyttää mitä tahansa saadaksesi takaoven kiinni. Katso
  • Vaneri. Käytin 5 mm vaneria, mutta voit käyttää mitä tahansa kotona (2 $)

Tarvitset myös työkaluja…

  • Juotosapuohjelmat
  • Ruuvimeisselit
  • Hotglue -ase
  • 3D -tulostin (valinnainen)

Mennään!

Vaihe 2: Suunnitellaan viileä QuizzPi -kotelo…

Suunnitellaan viileä QuizzPi -kotelo…
Suunnitellaan viileä QuizzPi -kotelo…
Suunnitellaan viileä QuizzPi -kotelo…
Suunnitellaan viileä QuizzPi -kotelo…

Ensimmäinen asia, jonka tarvitsemme, on tietää, kuinka paljon tilaa tarvitsemme laitteiston sisältämiseksi (Vadelma + näyttö + painikkeet + akku + johdot). Ottaen huomioon edellisessä vaiheessa kuvatut osat tein kotelosta 3D -suunnittelun käyttämällä ilmaista online -3D -suunnittelijaa Tinkercadia (katso). Jos haluat tulostaa kotelon 3D -mallin, voit ladata sen liitteenä olevasta QuizzPi -kotelosta.stl.

Tuolloin minun piti päättää, tulostanko mallin 3D -tulostimellani vai tehdäänkö se vanerista. Ajattelin, että tyttärelleni voisin viettää hieman enemmän aikaa vanerin tekemiseen. Joten haen suunnitelmat 3D -mallista ja leikkaan puuta.

Seuraava vaihe on osien kuumaliimaus…

Vaihe 3: Vanerikotelon tekeminen…

Vanerikotelon tekeminen…
Vanerikotelon tekeminen…
Vanerikotelon tekeminen…
Vanerikotelon tekeminen…
Vanerikotelon tekeminen…
Vanerikotelon tekeminen…
Vanerikotelon tekeminen…
Vanerikotelon tekeminen…

Kun olin leikannut kaikki vaneriosat suunnitelmista, seuraava vaihe on liimata ne kuumaliimalla. Joissakin liitoksissa laitoin vahvistuksia laatikon vahvistamiseksi. Kehyksessä piirrän kynällä LCD -näytön ääriviivat ja leikkaan sen pois. Teen neljä reikää ruuveille. Jos käytät toista näyttöä, sinun on muokattava tätä.

Takaovi sulkeutuu kahdella magneetilla, jotka on liimattu oveen ja kahdella magneetilla, jotka kiinnittyvät koteloon, joten vältän saranoiden käyttöä.

QuizzPi -kotelo on valmis…

Vaihe 4: GPIO -nastojen kytkentä, vadelma+nestekidenäyttö …

Johdotus GPIO -nastat, vadelma+nestekidenäyttö…
Johdotus GPIO -nastat, vadelma+nestekidenäyttö…
Johdotus GPIO -nastat, vadelma+nestekidenäyttö…
Johdotus GPIO -nastat, vadelma+nestekidenäyttö…
Johdotus GPIO -nastat, vadelma+nestekidenäyttö…
Johdotus GPIO -nastat, vadelma+nestekidenäyttö…

Meidän on yhdistettävä painikkeet Raspberry Pi: hen, jotta se voi tietää, mitä painiketta painetaan. Painikkeet on kytketty GPIO -nastoihin. Tarvitsemme neljä IN GPIO -tappia ja yhden Gnd GPIO -tapin. Käytin GPIO -nastaista 31 (GPIO6), 33 (GPIO13), 35 (GPIO19), 37 (GPIO26) ja 39 (Gnd) punaista, keltaista, vihreää ja sinistä painiketta varten. Tässä näytössä on SPI -liitäntä. Tämä tarkoittaa, että se on kytketty GPIO -pankkiin, joten aluksi laitoin neliönmuotoiset johdot painikkeisiin ja sitten liitin nestekidenäytön.

Seuraava askel oli Raspberry+LCD+-kotelon asentaminen kehykseen. Käytin Raspberry Pi -kotelon omia ruuveja.

QuizzPi on asennettu…

Vaihe 5: Akku, painikkeet, kytkin ja USB -liitin …

Akku, painikkeet, kytkin ja USB -liitin …
Akku, painikkeet, kytkin ja USB -liitin …
Akku, painikkeet, kytkin ja USB -liitin…
Akku, painikkeet, kytkin ja USB -liitin…
Akku, painikkeet, kytkin ja USB -liitin…
Akku, painikkeet, kytkin ja USB -liitin…

Suunnittelin jälleen Tinkercadia leikkeen pitämiseksi virtapankissa kotelossa. Tulostin leikkeen 3D -tulostimella ja liitin koteloon kuumaliimapistoolilla. Liitän alla olevan mallin.stl -tiedoston. Jos sinulla ei ole pääsyä 3D -tulostimeen, voit liittyä virtapankkiin tarranauhalla.

Seuraava vaihe on kytkeä virtakytkin virtapankin ja Raspberry Pi: n välille. Otin USB -kaapelin ja katkaisin vain virtajohdon, sitten juotin yhden johdon pään virtakytkimen yhteen napaan ja toisen johdon pään virtakytkimen toiseen nastaan. Joten kun virrankatkaisu ei mene kytkimen läpi ja Vadelma on pois päältä ja kun virran kytkeminen päälle menee kytkimen läpi ja Vadelma on päällä.

Kun varavirtalähteen purkautuminen on ongelma, ota se kotelosta ja lataa se, joten en halunnut ottaa sitä pois joka kerta ladataksesi. Ongelmana oli, että virtapankin latausportti on USC -tyyppi C, ja minulla oli vain virtapankin kaapeli. Joten juotin kaksi naaras -USB -liitintä ja laitoin kotelon. Sisäinen liitin virtapankin kaapelin liittämiseen ja ulkoinen liitin USB -virtajohdon liittämiseen.

Painikkeiden sijoittaminen ja johdotus oli helppoa. Painikkeissa on 2 nastaa, yksi tappi jokaisesta painikkeesta kytketään yhteiseen kaapeliin, joka menee maadoitettuun GPIO -nastaan, ja toinen painikkeen nasta liittyy vastaavaan vadelman GPIO -nastaan. Kytkentäkaavio näkyy liitteenä olevassa kaaviossa.

Äänijärjestelmä perustuu halpaan PAM8403 -vahvistimeen. Se on välttämätöntä, koska Raspberry Pi -liittimen ääni ei ole liian voimakas, jotta kaiutin toimisi. Sinun on syötettävä virtaa 5 voltilla tai enemmän. Liitetyistä kuvista näet, miten vahvistin ja kaiutin kytketään. Tarvitsemme 3,5 mm: n urosliitännän, jotta voimme muodostaa yhteyden Rapberryn ääni-/videoliitäntään. Juotin liittimeen 3 johtoa: ääni, video ja maa. Oheinen kaavio osoittaa, mikä nasta on jokainen. Sitten juotin johdon virtakytkimeen virran ottamiseksi ja toisen johdon maadoitusjohtoon virtapankkikaapelista. Liitän sitten kaiuttimen johdot vahvistimen lähtöihin. Helppo osa on kohdistaa äänijärjestelmä koteloon. Näet kuvista.

QuizzPi on asennettu, viimeisessä kuvassa näemme edelleen kynän jälkiä puussa, mutta on ohjelmistoaika … luodaan pieni tietokilpailukone …

Vaihe 6: Rasbian -kuva ja tietokilpailukoneen ohjelmointi…

Rasbian -kuva ja tietokilpailukoneen ohjelmointi…
Rasbian -kuva ja tietokilpailukoneen ohjelmointi…
Rasbian -kuva ja tietokilpailukoneen ohjelmointi…
Rasbian -kuva ja tietokilpailukoneen ohjelmointi…
Rasbian -kuva ja tietokilpailukoneen ohjelmointi…
Rasbian -kuva ja tietokilpailukoneen ohjelmointi…
Rasbian -kuva ja tietokilpailukoneen ohjelmointi…
Rasbian -kuva ja tietokilpailukoneen ohjelmointi…

Painamme virtapainiketta. Mitään ei tapahdu. Herranjumala! Se ei toimi! Mikä voi olla vialla? Onko kaapelia ilman liitäntää? Älä huoli, meidän on asennettava kuva SD -kortille …

Tietokilpailukone on kirjoitettu Python 3: een, joten tarvitsemme Raspbian -kuvan, johon on asennettu Python -kääntäjä. Tässä vaiheessa meidän on otettava huomioon asennetun näytön tyyppi. Näyttöni on SPI -käyttöliittymä, ja myyjä antaa Raspbian -kuvan, jossa kaikki näytönohjaimet on asennettu. Tässä Raspbian -versiossa on myös Python -moottori. Voit ladata tämän kuvan tästä linkistä.

Jos sinulla on HDMI- tai RCA -näyttö, voit ladata viimeisen raspbian -kuvan, joka on saatavilla raspberrypi.org -sivustosta. Huomio: tarvitset työpöytärasbian -version, joten vältä Lite Raspbian -kuvan lataamista. Nämä kuvat sisältävät Python -kääntäjän.

Jos haluat asentaa kuvan SD -kortille, voimme käyttää mitä tahansa sovellusta. Käytän Win32diskimageria. Aseta sitten SD -kortti vadelmaan ja paina virtakytkintä. Se toimii! Nyt meidän on luotava Python -ohjelma quizz -moottorilla.

Seuraava vaihe on ladata tietokilpailukoneen tiedostot. Olen liittänyt lähdekoodin tiedostoon QuizzPi.zip. Lataa lähde ja luo kansio Raspberry Pi: hen:

# mkdir/home/pi/QuizzPi

ja pura tähän kansioon ladattu tiedosto.

QuizzPi.zip sisältää seuraavat tiedostot:

  • QuizzPi.py - se sisältää koodin
  • MP3 -äänitiedostot - voit muuttaa niitä mukautettaviksi
  • losmejores.txt - se sisältää huippupisteet -taulukon, voit poistaa sen alustamaan taulukon
  • Instructions.txt

En anna tyhjentävää selitystä siitä, miten olen ohjelmoinut moottorikoodin Pythonissa, koska se on vaikeaa ihmisille, joilla ei ole ohjelmointitietoa. Heidän tarvitsee vain tallentaa tiedostot Raspberryyn. Ihmiset, joilla on ohjelmointitaito, voivat muokata sitä ilman selityksiä;)

Kysymykset ja vastaukset ovat Kysymysten ja vastausten yhteistyötietokannasta nimeltä Open Trivia Database, löydät täältä. Voit muuttaa luokkaa ja vaikeita kysymyksiä vaihtamalla rivin tiedostossa QuizzPi.py:

#Cargo desde URLurl = 'https://opentdb.com/api.php?amount=10&type=multiple'

muutos api -konfiguraattorilta saadulla URL -osoitteella

Suunnittelin pelinäytöt Photoshopissa, voit muokata niitä. Sinun tarvitsee vain säilyttää joitakin valkoisia alueita kysymysnäytössä, tulosnäytössä ja huippupisteet -näytöissä, koska pelimoottori kirjoittaa niihin.

Voit myös muokata pelin ääniä. Sinun tarvitsee vain muuttaa haluamiasi.mp3 -tiedostoja, sinun on säilytettävä samat nimet. Voit saada paljon ääniä online -tietokannoista, minä saan miinoja Free Sound Effectsistä.

Nyt sinun on muokattava Raspbian -ohjelmasi, jotta QuizzPi voidaan suorittaa automaattisesti. Voit lukea tämän artikkelin, jossa kerrotaan, miten se tehdään:

Olemme lopettaneet !!!

Vaihe 7: Esittely…

Image
Image

Voit lopettaa tämän ohjeen katsomalla tämän videon. Näet, että sitä on helppo käyttää ja kysymysten vaikeus riippuu sinusta…

Edit: video päivitetty nyt äänellä!

Mikrokontrollerikilpailu
Mikrokontrollerikilpailu

Mikroohjauskilpailun toinen sija

Suositeltava: