Satura rādītājs:

QuizzPi, Raspberry Pi nieku spēle ar Python: 7 soļi (ar attēliem)
QuizzPi, Raspberry Pi nieku spēle ar Python: 7 soļi (ar attēliem)

Video: QuizzPi, Raspberry Pi nieku spēle ar Python: 7 soļi (ar attēliem)

Video: QuizzPi, Raspberry Pi nieku spēle ar Python: 7 soļi (ar attēliem)
Video: Makeblock Untimate Robot Kit Part 2 : Robtic Arm Explaine, Software, Code App and Having Fun demo 2024, Novembris
Anonim
QuizzPi, Raspberry Pi nieku spēle ar Python
QuizzPi, Raspberry Pi nieku spēle ar Python
QuizzPi, Raspberry Pi nieku spēle ar Python
QuizzPi, Raspberry Pi nieku spēle ar Python

QuizzPi ir arkādes tipa nieki. QuizzPi piedzima, jo man vajadzēja izklaidēt savu meitu. Viņai ir 7 gadi, un viņa jau pieprasa jaunu tehnoloģiju izmantošanu, ideja bija radīt kaut ko jautru un izglītojošu.

Projekta prasības:

  • Viegli izmantot
  • Pārnēsājams
  • Viegli uzlabot jautājumu un atbilžu kopumu
  • Augstāko rezultātu tabula

Vairāki vienumi ir konfigurējami. Jūs varat izveidot savu jautājumu/atbilžu datubāzi vai izmantot vienu no vairākiem serveriem, kas piedāvā datubāzi, kurā jūs izlemjat, kāda veida jautājumi ir grūti,… Es savai meitai izveidoju pirmās klases jautājumu datu bāzi, bet mēs varam mainīt konfigurāciju, lai saņemtu niekus no olīna servera. Šī pamācāmā versija iegūst jautājumus no sadarbības jautājumiem un atbildēm, Atvērto sīkumu datu bāzi. Man ir jāizvēlas vispārējo zināšanu jautājumi, bet jūs varat izvēlēties jautājumus par filmu, sportu vai reliģiju.

Es atvainojos par savu slikto angļu valodu. Es esmu spānis, bet esmu izvēlējies izveidot šo pamācību angļu valodā, lai tā varētu sasniegt vairāk cilvēku.

Ejam!

Solis: jums ir nepieciešami daži materiāli un rīki…

Jums nepieciešami daži materiāli un instrumenti…
Jums nepieciešami daži materiāli un instrumenti…

Jums noteikti ir lielākā daļa materiālu mājās…

  • Raspberry Pi 2/3 ar 8 GB vai vairāk SD karti (35 USD)
  • Raspberry Pi 3,5 collu LCD ar korpusu (11 USD). Skatiet (tas nav obligāti, jūs varat izmantot jebkuru displeju, kas jums ir, jums tikai jāpārveido QuizzPi korpuss)
  • Baterijas. Jūs varat izmantot strāvas banku vai arī izmantot DIY 18650 akumulatoru (5 USD). Manā gadījumā es izmantoju vienu Aukey 5000mah jaudas banku (12 USD). Skat
  • Četras arkādes pogas. Man tādas ir mājās (3 USD, 12 pogas par 10 USD). Skat
  • Viens ieslēgšanas/izslēgšanas slēdzis (0,25 USD). Skat
  • Divi USB savienotāji (0,50 ASV dolāri)
  • Viens USB/mikro USB kabelis
  • Viens lēts skaļrunis (pēc izvēles) (0,25 USD). Skat
  • Viens PAM8403 pastiprinātājs (pēc izvēles) (0,80 USD). Skat
  • Daži vadi, lai savienotu pogas, USB savienotāju un ieslēgšanas/izslēgšanas slēdzi ar GPIO tapām (1 USD?)
  • Četri neodīma magnēti vai arī jūs varat izmantot jebkuru lietu, lai aizvērtu aizmugurējās durvis. Skat
  • Saplāksnis. Es izmantoju 5 mm saplāksni, bet jūs varat izmantot jebkuru, kas jums ir mājās (2 USD)

Jums ir nepieciešami arī daži rīki…

  • Lodēšanas komunālie pakalpojumi
  • Skrūvgrieži
  • Karstās līmes lielgabals
  • 3D printeris (pēc izvēles)

Ejam!

2. solis: noformēsim foršu QuizzPi korpusu…

Izstrādāsim foršu QuizzPi futrāli…
Izstrādāsim foršu QuizzPi futrāli…
Izstrādāsim foršu QuizzPi futrāli…
Izstrādāsim foršu QuizzPi futrāli…

Vispirms mums jāzina, cik daudz vietas mums ir jāiekļauj aparatūrā (aveņu + ekrāns + pogas + akumulators + vadi). Ņemot vērā iepriekšējā solī aprakstītās daļas, es izveidoju lietas 3D dizainu, izmantojot bezmaksas tiešsaistes 3D dizaineru Tinkercad (skat.). Ja vēlaties izdrukāt lietas 3D modeli, varat to lejupielādēt no pievienotā QuizzPi faila.stl.

Tajā brīdī man bija jāizlemj, vai drukāt modeli ar savu 3D printeri vai izgatavot to no saplākšņa. Es domāju, ka, būdama meitai, es varētu pavadīt nedaudz vairāk laika, lai to izgatavotu no saplākšņa. Tāpēc es saņemu plānus no 3D modeļa un sagriež koku.

Nākamais solis ir detaļu karsta līmēšana…

3. darbība: saplākšņa korpusa izgatavošana…

Saplākšņa korpusa izgatavošana…
Saplākšņa korpusa izgatavošana…
Saplākšņa korpusa izgatavošana…
Saplākšņa korpusa izgatavošana…
Saplākšņa korpusa izgatavošana…
Saplākšņa korpusa izgatavošana…
Saplākšņa korpusa izgatavošana…
Saplākšņa korpusa izgatavošana…

Kad es biju sagriezis visas saplākšņa daļas plānos, nākamais solis ir to karsta līmēšana. Dažos savienojumos es ievietoju pastiprinājumus, lai padarītu kasti stiprāku. Rāmī ar zīmuli uzzīmēju LCD ekrāna kontūru un izgriezu to. Es izveidoju četrus caurumus skrūvēm. Ja izmantojat citu ekrānu, šī lieta ir jāmaina.

Aizmugurējās durvis aizveras ar diviem magnētiem, kas pielīmēti pie durvīm, un diviem magnētiem, kas pielīmēti pie korpusa, tāpēc es izvairos no eņģu izmantošanas.

QuizzPi lieta ir pabeigta …

4. solis: GPIO tapu pieslēgšana, aveņu+LCD uzstādīšana…

Vadu GPIO tapas, aveņu+LCD montāža…
Vadu GPIO tapas, aveņu+LCD montāža…
Vadu GPIO tapas, aveņu+LCD montāža…
Vadu GPIO tapas, aveņu+LCD montāža…
Vadu GPIO tapas, aveņu+LCD montāža…
Vadu GPIO tapas, aveņu+LCD montāža…

Mums ir jāpievieno pogas Raspberry Pi, lai tā varētu zināt, kura poga tiek nospiesta. Pogas ir savienotas ar GPIO tapām. Mums vajag četras IN GPIO tapas plus vienu Gnd GPIO tapu. Sarkanām, dzeltenām, zaļām un zilām pogām es izmantoju GPIO pin 31 (GPIO6), 33 (GPIO13), 35 (GPIO19), 37 (GPIO26) un 39 (Gnd). Šim ekrānam ir SPI interfeiss. Tas nozīmē, ka tas ir savienots ar GPIO banku, tāpēc vispirms es ievietoju vadus, kas beidzās ar kvadrātveida pogām, un tad es pievienoju LCD ekrānu.

Nākamais solis bija uzstādīt Raspberry+LCD+korpusu uz rāmja. Es izmantoju Raspberry Pi korpusa pašas skrūves.

QuizzPi ir uzstādīts…

5. darbība: akumulators, pogas, slēdzis un USB savienotājs …

Akumulators, pogas, slēdzis un USB savienotājs…
Akumulators, pogas, slēdzis un USB savienotājs…
Akumulators, pogas, slēdzis un USB savienotājs…
Akumulators, pogas, slēdzis un USB savienotājs…
Akumulators, pogas, slēdzis un USB savienotājs…
Akumulators, pogas, slēdzis un USB savienotājs…

Es atkal izmantoju Tinkercad, lai izstrādātu klipu, lai turētu barošanas bloku pie korpusa. Es izdrukāju klipu ar savu 3D printeri un pievienojos korpusam ar karstās līmes pistoli. Es pievienoju zemāk redzamā modeļa.stl failu. Ja jums nav piekļuves 3D printerim, varat pievienoties strāvas bankai ar velcro lenti.

Nākamais solis ir ieslēgt/izslēgt slēdzi starp barošanas banku un Raspberry Pi. Es paņēmu USB kabeli un pārgriezu tikai strāvas vadu, pēc tam vienu stieples galu pielodēju pie ieslēgšanas/izslēgšanas slēdža vienas tapas, bet otru - pie ieslēgšanas/izslēgšanas slēdža citas tapas. Tātad, kad izslēgšanas strāvas slēdzis neiziet cauri slēdžam un aveņu ir izslēgta, un, ieslēdzot strāvu, iet caur slēdzi un aveņu ir ieslēgta.

Ja strāvas bankas izlāde ir problēma, lai to izņemtu, lai to uzlādētu, tāpēc es negribēju to izņemt katru reizi, lai uzlādētu. Problēma bija, ka strāvas bankas uzlādes ports ir C tipa USC, un man bija tikai strāvas bankas kabelis. Tāpēc es lodēju divus sieviešu USB savienotājus un ievietoju korpusā. Iekšējais savienotājs, lai pievienotu strāvas bankas kabeli, un ārējais savienotājs, lai pievienotu USB strāvas kabeli.

Pogu novietošana un vadu ievietošana bija vienkārša. Pogām ir 2 tapas, viena katras pogas tapa ir savienota ar kopēju kabeli, kas iet uz zemētu GPIO tapu, bet otra pogas tapa - ar attiecīgo aveņu GPIO tapu. Elektroinstalācijas shēma ir parādīta pievienotajā shēmā.

Skaņas sistēmas pamatā ir lēts skaņas pastiprinātājs PAM8403. Tas ir nepieciešams, jo Raspberry Pi ligzdas skaņa nav pārāk spēcīga, lai skaļrunis darbotos. Jums ir nepieciešams barot ar 5 V vai vairāk. Pievienotajos attēlos varat redzēt, kā savienot pastiprinātāju un skaļruni. Lai izveidotu savienojumu ar Rapberry audio/video ligzdu, mums ir nepieciešama 3,5 mm ligzda. pie ligzdas es lodēju 3 vadus: audio, video un zemi. Pievienotajā diagrammā parādīts, kāda tapa ir ikviens. Tad es pielodēju vadu pie ieslēgšanas/izslēgšanas slēdža, lai saņemtu strāvu, un citu vadu pie zemējuma vada no strāvas bankas kabeļa. Tad es pievienoju vadus no skaļruņa pie pastiprinātāja izejām. Vieglā daļa ir skaņas sistēmas iedalīšana korpusā. Jūs varat redzēt attēlos.

QuizzPi ir uzstādīts, pēdējā fotoattēlā mēs joprojām varam redzēt zīmuļa zīmes uz koka, bet ir programmatūras laiks … sāksim izveidot nelielu viktorīnas motoru …

6. darbība. Rasbiešu attēls un viktorīnas dzinēja programmēšana…

Rasbiešu attēls un viktorīnas dzinēja programmēšana…
Rasbiešu attēls un viktorīnas dzinēja programmēšana…
Rasbiešu attēls un viktorīnas dzinēja programmēšana…
Rasbiešu attēls un viktorīnas dzinēja programmēšana…
Rasbiešu attēls un viktorīnas dzinēja programmēšana…
Rasbiešu attēls un viktorīnas dzinēja programmēšana…
Rasbiešu attēls un viktorīnas dzinēja programmēšana…
Rasbiešu attēls un viktorīnas dzinēja programmēšana…

Mēs nospiežam barošanas pogu. Nekas nenotiek. Ak mans Dievs! Tas nedarbojas! Kas var būt nepareizi? Kāds kabelis bez savienojuma? Neuztraucieties, mums ir jāinstalē attēls SD kartē …

Viktorīnas dzinējs ir rakstīts Python 3, tāpēc mums ir nepieciešams Raspbian attēls ar instalētu Python kompilatoru. Šajā brīdī mums jāņem vērā mūsu instalētā ekrāna veids. Mans ekrāns ir SPI interfeiss, un pārdevējs sniedz Raspbian attēlu ar visiem instalētajiem ekrāna draiveriem. Arī šai Raspbian versijai ir Python dzinējs. Šo attēlu varat lejupielādēt šajā saitē.

Ja jums ir HDMI vai RCA ekrāns, varat lejupielādēt pēdējo Raspbian attēlu, kas pieejams vietnē raspberrypi.org. Uzmanību: jums ir nepieciešama darbvirsmas rasbiešu versija, tāpēc izvairieties no Lite Raspbian attēla lejupielādes. Šie attēli satur Python kompilatoru.

Lai instalētu attēlu SD kartē, mēs varam izmantot jebkuru lietojumprogrammu. Es izmantoju Win32diskimager. Tad mēs ievietojam SD karti avenē un nospiediet ieslēgšanas/izslēgšanas slēdzi. Tas strādā! Tagad mums ir jāizveido Python programma ar viktorīnas dzinēju.

Nākamais solis ir lejupielādēt viktorīnas dzinēja failus. Esmu pievienojis avota kodu failā QuizzPi.zip. Lejupielādējiet avotu un izveidojiet mapi Raspberry Pi:

# mkdir/home/pi/QuizzPi

un izpakojiet šajā mapē lejupielādēto failu.

QuizzPi.zip satur šādus failus:

  • QuizzPi.py - tajā ir kods
  • MP3 skaņas faili - jūs varat tos mainīt, lai personalizētu
  • losmejores.txt - tajā ir tabula ar augstiem rezultātiem, varat to izdzēst, lai inicializētu tabulu
  • Instrukcijas.txt

Es nesniegšu izsmeļošu skaidrojumu par to, kā esmu ieprogrammējis dzinēja kodu programmā Python, jo cilvēkiem bez programmēšanas zināšanām tas ir grūti. Viņiem tikai jāsaglabā faili Raspberry. Cilvēki ar programmēšanas zināšanām varēs to mainīt bez jebkādiem paskaidrojumiem;)

Jautājumi un atbildes ir no jautājumu un atbilžu sadarbības datubāzes ar nosaukumu Atvērto datu bāze, kuru varat atrast šeit. Jūs varat mainīt kategoriju un sarežģītos jautājumus, mainot rindiņu failā QuizzPi.py:

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

mainot ar URL, kas iegūts no api konfigurētāja

Es izveidoju spēļu ekrānus Photoshop, jūs varat tos mainīt. Jums tikai jāsaglabā daži baltie laukumi jautājumu ekrānā, rezultātu ekrānā un labāko rezultātu ekrānos, jo uz tiem raksta spēles dzinējs.

Varat arī personalizēt spēles skaņas. Jums tikai jāmaina.mp3 faili ar citiem, kurus vēlaties, un jāsaglabā tie paši nosaukumi. Jūs varat iegūt daudz skaņu no tiešsaistes datu bāzēm, es saņemu mīnas no bezmaksas skaņas efektiem.

Tagad jums ir jāmaina Raspbian, lai automātiski palaistu QuizzPi. Jūs varat izlasīt šo rakstu, kur paskaidrots, kā to izdarīt:

Esam beiguši !!!

7. solis: demonstrācija…

Image
Image

Lai pabeigtu šo pamācību, varat redzēt šo videoklipu. Jūs varat redzēt, ka to ir viegli lietot, un jautājumu sarežģītība ir atkarīga no jums …

Edit: video tagad ir atjaunināts ar skaņu!

Mikrokontrolleru konkurss
Mikrokontrolleru konkurss

Otrā vieta mikrokontrolleru konkursā

Ieteicams: