Obsah:
- Krok 1: Potrebujete nejaké materiály a nástroje …
- Krok 2: Poďme navrhnúť cool puzdro QuizzPi…
- Krok 3: Výroba preglejky …
- Krok 4: Zapojenie GPIO pinov, montáž Raspberry+LCD…
- Krok 5: Batéria, tlačidlá, prepínač a konektor USB …
- Krok 6: Rasbian Image a programovanie kvízového motora …
- Krok 7: Ukážka…
Video: QuizzPi, Raspberry Pi Trivia hra s Pythonom: 7 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-31 10:24
QuizzPi je triviálna hra arkádového typu. QuizzPi sa narodil, pretože som mal potrebu poskytnúť svojej dcére zábavu. Má 7 rokov a už požaduje používanie nových technológií. Cieľom bolo vytvoriť niečo, čo by bolo zábavné aj poučné.
Požiadavky projektu:
- Jednoduché použitie
- Prenosný
- Ľahko aktualizujte sadu otázok a odpovedí
- Tabuľka vysokých skóre
Viaceré položky sú konfigurovateľné. Môžete si vytvoriť vlastnú databázu otázok/odpovedí alebo môžete použiť jeden z viacerých serverov, ktoré ponúkajú databázu, kde sa rozhodnete pre typ otázok, ťažké, … Vytvoril som pre svoju dcéru databázu otázok prvého stupňa, ale môžeme zmeňte konfiguráciu, aby ste dostávali kvízové otázky zo servera oline. Táto inštrukčná verzia získava otázky z kolaboratívnych otázok a odpovedí, otvorenej databázy znalostí. Vybral som si otázky všeobecného vedomia, ale môžete si vybrať filmové, športové alebo náboženské otázky.
Ospravedlňujem sa za moju zlú angličtinu. Som Španiel, ale uprednostnil som vytvoriť tento návod v angličtine, aby sa mohol dostať k väčšiemu počtu ľudí.
Poďme!
Krok 1: Potrebujete nejaké materiály a nástroje …
Väčšinu materiálu máte určite doma …
- Raspberry Pi 2/3 s kartou SD 8 Gb alebo viac (35 $)
- 3,5 palcový LCD displej Raspberry Pi s puzdrom (11 $). Pozrite sa (toto je voliteľné, môžete použiť ľubovoľný displej, ktorý máte, stačí k nemu upraviť puzdro QuizzPi)
- Batérie. Môžete použiť power banku alebo môžete použiť vlastnú batériu 18650 (5 $). V mojom prípade som použil jednu power banku Aukey 5000 mAh (12 $). Viď
- Štyri arkádové tlačidlá. Tieto mám doma (3 $, 12 tlačidiel za 10 $). Viď
- Jeden prepínač zapnutia/vypnutia (0,25 $). Viď
- Dva konektory USB (0,50 $)
- Jeden kábel USB/micro USB
- Jeden lacný reproduktor (voliteľný) (0,25 $). Viď
- Jeden zosilňovač PAM8403 (voliteľný) (0,80 $). Viď
- Niektoré káble na prepojenie tlačidiel, konektora USB a vypínača/prepínača na kolíky GPIO (1 $?)
- Štyri neodymové magnety alebo môžete na zatvorenie zadných dverí použiť čokoľvek. Viď
-
Preglejka. Použil som 5 mm preglejku, ale môžete použiť akúkoľvek, ktorú máte doma (2 $)
Potrebujete aj nejaké nástroje …
- Pomôcky na spájkovanie
- Skrutkovače
- Horúca lepiaca pištoľ
- 3D tlačiareň (voliteľné)
Poďme!
Krok 2: Poďme navrhnúť cool puzdro QuizzPi…
Prvá vec, ktorú potrebujeme, je vedieť, koľko miesta potrebujeme na zahrnutie hardvéru (malina + obrazovka + tlačidlá + batéria + vodiče). Vzhľadom na časti popísané v predchádzajúcom kroku som vytvoril 3D návrh puzdra pomocou bezplatného online 3D návrhára Tinkercad (pozri). Ak si chcete vytlačiť 3D model puzdra, môžete si ho stiahnuť z priloženého súboru Puzdro QuizzPi.stl.
V tej chvíli som sa musel rozhodnúť, či model vytlačím na 3D tlačiarni alebo ho vyrobím z preglejky. Myslel som si, že keď som pre svoju dcéru, môžem stráviť trochu viac času jej výrobou z preglejky. Dostávam teda plány z 3D modelu a pílim drevo.
Ďalším krokom je lepenie dielov za tepla …
Krok 3: Výroba preglejky …
Akonáhle som odrezal všetky časti preglejky plánov, ďalším krokom je ich lepenie za tepla. Do niektorých spojení som vložil výstuhy, aby bola krabica pevnejšia. Do lunety nakreslím ceruzkou obrys obrazovky LCD a vystrihnem ju. Robím štyri otvory pre skrutky. Ak používate inú obrazovku, musíte túto vec upraviť.
Zadné dvere sa zatvárajú dvoma magnetmi prilepenými k dverám a dvoma magnetmi prilepenými k puzdru, takže sa vyhýbam používaniu pántov.
Prípad QuizzPi je dokončený …
Krok 4: Zapojenie GPIO pinov, montáž Raspberry+LCD…
Potrebujeme pripojiť tlačidlá k Raspberry Pi, aby vedel, aké tlačidlo je stlačené. Tlačidlá sú pripojené k pinom GPIO. Potrebujeme štyri IN GPIO piny plus jeden Gnd GPIO pin. Na červené, žlté, zelené a modré tlačidlo som použil GPIO pin 31 (GPIO6), 33 (GPIO13), 35 (GPIO19), 37 (GPIO26) a 39 (Gnd). Táto obrazovka má rozhranie SPI. To znamená, že je pripojený k banke GPIO, takže najskôr som vložil vodiče zakončené štvorcom do kolíkov tlačidiel a potom som pripojil obrazovku LCD.
Ďalším krokom bolo namontovanie puzdra Raspberry+LCD+na rám. Použil som vlastné skrutky skrinky Raspberry Pi.
QuizzPi je namontovaný…
Krok 5: Batéria, tlačidlá, prepínač a konektor USB …
Tinkercad som znova použil na navrhnutie klipu, ktorý držal power banku v puzdre. Klip som vytlačil svojou 3D tlačiarňou a horúcou lepiacou pištoľou sa pripojil k puzdru. Nižšie prikladám súbor.stl modelu. Ak nemáte prístup k 3D tlačiarni, môžete sa pripojiť k powerbanke pomocou pásky na suchý zips.
Ďalším krokom je pripojenie vypínača medzi power banku a Raspberry Pi. Vzal som kábel USB a prestrihol som iba napájací vodič, potom som jeden koniec drôtu spájkoval na jeden kolík vypínača a druhý koniec drôtu na druhý kolík vypínača. Takže keď vypínač pri vypnutí neprejde prepínačom a Raspberry je vypnutý a keď vypínač pri zapnutí prejde prepínačom a Raspberry je zapnutý.
Keď je vybitie powerbanky problém vybrať ho z obalu a nabiť ho, nechcel som ho vyberať vždy na nabíjanie. Problém bol v tom, že nabíjací port powerbanky je USC typu C a ja som mal iba kábel powerbanky. Preto som spájkoval dva ženské konektory USB a vložil do puzdra. Vnútorný konektor na pripojenie kábla napájacej banky a vonkajší konektor na pripojenie napájacieho kábla USB.
Umiestnenie tlačidiel a ich zapojenie bolo jednoduché. Tlačidlá majú 2 piny, jeden kolík každého tlačidla sa pripája na spoločný kábel, ktorý smeruje k uzemnenému kolíku GPIO, a druhý kolík tlačidla sa pripája k príslušnému kolíku GPIO maliny. Schéma zapojenia je znázornená na priloženom diagrame.
Zvukový systém je založený na lacnom zosilňovači zvuku PAM8403. Je to nevyhnutné, pretože zvuk získavaný z konektora Raspberry Pi nie je príliš silný na to, aby reproduktor fungoval. Musíte ho napájať 5 V alebo viac. Na priložených obrázkoch vidíte, ako prepojiť zosilňovač a reproduktor. Na pripojenie k audio/video konektoru Rapberry potrebujeme mužský 3,5 mm konektor. Do konektora som spájkoval 3 vodiče: audio, video a uzemnenie. Priložený diagram ukazuje, aký pin je každý. Potom som k prepínaču zapnutia/vypnutia spájkoval drôt, z ktorého som odoberal energiu, a ďalší kábel k uzemňovaciemu káblu z napájacej banky. Potom zapojím vodiče z reproduktora do výstupov zosilňovača. Najjednoduchšou súčasťou je priradenie zvukového systému k puzdru. Môžete to vidieť na obrázkoch.
QuizzPi je namontovaný, na poslednej fotografii môžeme stále vidieť značky ceruzky na dreve, ale je čas na softvér … poďme vytvoriť malý kvízový engine …
Krok 6: Rasbian Image a programovanie kvízového motora …
Stlačíme vypínač. Nič sa nedeje. Bože môj! Nejde to! Čo môže byť zlé? Nejaký kábel bez pripojenia? Nebojte sa, musíme nainštalovať obrázok na kartu SD …
Kvízový engine je napísaný v Pythone 3, takže potrebujeme obrázok Raspbian s nainštalovaným kompilátorom Pythonu. V tomto mieste musíme vziať do úvahy typ obrazovky, ktorú sme nainštalovali. Moja obrazovka je rozhranie SPI a predajca poskytuje obrázok Raspbian so všetkými nainštalovanými ovládačmi obrazovky. Táto verzia Raspbian má aj engine Python. Tento obrázok si môžete stiahnuť v tomto odkaze.
Ak máte obrazovku HDMI alebo RCA, môžete si stiahnuť posledný obrázok Raspbian, ktorý je k dispozícii na webe raspberrypi.org. Upozornenie: Potrebujete verziu Desktop Rasbian, preto sa vyhnite sťahovaniu obrazu Lite Raspbian. Tieto obrázky obsahujú kompilátor Pythonu.
Na inštaláciu obrazu na kartu SD môžeme použiť ľubovoľnú aplikáciu. Používam Win32diskimager. Potom vložíme SD kartu do Raspberry a stlačíme vypínač. Funguje to! Teraz musíme vytvoriť program Python s kvízovým nástrojom.
Ďalším krokom je stiahnutie súborov kvízového jadra. Priložil som zdrojový kód do súboru QuizzPi.zip. Stiahnite si zdroj a vytvorte priečinok v Raspberry Pi:
# mkdir/home/pi/QuizzPi
a rozbaľte súbor stiahnutý do tohto priečinka.
QuizzPi.zip obsahuje tieto súbory:
- QuizzPi.py - obsahuje kód
- Súbory-p.webp" />
- Zvukové súbory MP3 - môžete prispôsobiť a prispôsobiť
- losmejores.txt - obsahuje tabuľku najvyšších skóre, môžete ju odstrániť a inicializovať tabuľku
- Instructions.txt
Nebudem podávať vyčerpávajúce vysvetlenie toho, ako som naprogramoval kód motora v Pythone, pretože je to ťažké pre ľudí bez znalosti programovania. Potrebujú iba uložiť súbory do Raspberry. Ľudia s programovacími znalosťami ho budú môcť upraviť bez akéhokoľvek vysvetlenia;)
Otázky a odpovede pochádzajú z databázy otázok a odpovedí s názvom Open Trivia Database, ktorú nájdete tu. Kategóriu a náročnú otázku môžete zmeniť zmenou riadka v súbore QuizzPi.py:
#Cargo desde URLurl = 'https://opentdb.com/api.php?amount=10&type=multiple'
zmena pomocou adresy URL získanej z konfigurátora rozhrania API
Herné obrazovky som navrhol vo Photoshope, môžete ich upravovať. Musíte iba zachovať niektoré biele oblasti na obrazovke s otázkami, na obrazovke s výsledkami a na obrazovkách s najvyšším skóre, pretože na ne píše herný engine.
Môžete si tiež prispôsobiť zvuky hry. Súbory.mp3 musíte zmeniť iba inými osobami, ktoré chcete, a zachovať rovnaké názvy. Z online databáz môžete získať veľa zvukov, ja získavam míny z bezplatných zvukových efektov.
Teraz musíte svoj Raspbian upraviť, aby automaticky spustil QuizzPi. Tento článok si môžete prečítať a vysvetliť, ako na to:
Skončili sme !!!
Krok 7: Ukážka…
Ak chcete dokončiť tento návod, môžete si pozrieť toto video. Vidíte, že sa ľahko používa a zložité otázky závisia od vás …
Upraviť: video bolo aktualizované so zvukom!
Druhé miesto v súťaži o mikrokontrolér
Odporúča:
Synchronizácia priečinkov s Pythonom: 5 krokov
Synchronizácia priečinkov s Pythonom: Tento návod vám ukáže, ako synchronizovať dva priečinky (a všetky priečinky v nich), aby jeden bol priamou kópiou druhého. Ideálne na lokálne zálohovanie práce na cloudový/sieťový server alebo USB disk. Žiadne skúsenosti s programovaním nie sú
Hra Crack the Code, logická hra založená na Arduine: 4 kroky (s obrázkami)
Hra Crack the Code, logická škatuľka založená na Arduine: V tomto návode vám ukážem, ako si vytvoriť vlastnú crackovú hru, v ktorej pomocou otočného voliča uhádnete náhodne vygenerovaný kód do sejfu. Na prednej strane trezoru je 8 LED diód, ktoré vám informujú, koľko z
Aruduino LED hra Rýchle kliknutie Hra pre dvoch hráčov: 8 krokov
Aruduino LED hra Rýchle kliknutie Hra pre dvoch hráčov: Tento projekt je inšpirovaný @HassonAlkeim. Ak ste ochotní sa podrobne pozrieť, tu je odkaz, ktorý si môžete pozrieť https://www.instructables.com/id/Arduino-Two-Player-Fast-Button-Clicking-Game/. Táto hra je vylepšenou verziou hry Alkeim's. Jedná sa o
Začíname s Pythonom: 7 krokov (s obrázkami)
Začíname s Pythonom: Programovanie je úžasné! Je kreatívne, zábavné a dodáva vášmu mozgu mentálne cvičenie. Mnohí z nás sa chcú dozvedieť niečo o programovaní, ale presvedčiť samých seba, že to nedokážu. Možno má príliš veľa matematiky, možno žargón, ktorý sa hádže okolo, vydesí
PiTanq - Robotický tank s Raspberry Pi a Pythonom na naučenie AI: 10 krokov
PiTanq-Robot-tank S Raspberry Pi a Python na učenie AI: Pitanq je robotický tank s kamerou poháňanou Raspberry Pi. Cieľom je pomôcť naučiť sa umelej inteligencii vlastného riadenia. AI v nádrži je podporovaná OpenCV a Tensoflow postavenými špeciálne pre Raspbian Jessie. Na základe odolného hliníkového