
Obsah:
- Krok 1: Potřebujete nějaké materiály a nástroje…
- Krok 2: Pojďme navrhnout cool pouzdro QuizzPi…
- Krok 3: Výroba překližkového pouzdra …
- Krok 4: Zapojení GPIO pinů, montáž Raspberry+LCD…
- Krok 5: Baterie, tlačítka, přepínač a konektor USB…
- Krok 6: Rasbian Image a programování Quiz Engine…
- Krok 7: Ukázka…
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-23 14:38


QuizzPi je triviální hra arkádového typu. QuizzPi se narodil, protože jsem měl potřebu dát své dceři zábavu. Je jí 7 let a již požaduje použití nových technologií. Cílem bylo vytvořit něco, co by bylo zábavné i poučné.
Požadavky projektu:
- Snadné použití
- Přenosný
- Snadné vylepšení sady otázek a odpovědí
- Tabulka s vysokým skóre
Více položek lze konfigurovat. Můžete si vytvořit vlastní databázi otázek/odpovědí nebo můžete použít jeden z více serverů, které nabízejí databázi, kde se rozhodujete o typu otázek, obtížných … Vytvořil jsem pro svou dceru databázi otázek prvního stupně, ale můžeme změňte konfiguraci a získejte dotazy o drobnostech ze serveru oline. Tato instruktážní verze získává dotazy ze společných otázek a odpovědí, otevřené databáze Trivia. Vybral jsem otázky obecných znalostí, ale můžete si vybrat filmové, sportovní nebo náboženské otázky.
Omlouvám se za svou špatnou angličtinu. Jsem Španěl, ale upřednostňuji vytvořit tento návod v angličtině, aby se mohl dostat k více lidem.
Pojďme!
Krok 1: Potřebujete nějaké materiály a nástroje…

Většinu materiálu máte určitě doma …
- Raspberry Pi 2/3 s 8 GB nebo více SD kartou (35 $)
- 3,5palcový LCD displej Raspberry Pi s pouzdrem (11 $). Viz (toto je volitelné, můžete použít jakýkoli displej, který máte, stačí pro něj upravit pouzdro QuizzPi)
- Baterie. Můžete použít powerbanku nebo můžete použít vlastní baterii 18650 (5 $). V mém případě jsem použil jednu powerbanku Aukey 5000 mAh (12 $). Vidět
- Čtyři arkádová tlačítka. Tyto mám doma (3 $, 12 tlačítek za 10 $). Vidět
- Jeden spínač zapnutí/vypnutí (0,25 $). Vidět
- Dva konektory USB (0,50 $)
- Jeden kabel USB/micro USB
- Jeden levný reproduktor (volitelný) (0,25 $). Vidět
- Jeden zesilovač PAM8403 (volitelný) (0,80 $). Vidět
- Některé vodiče pro propojení tlačítek, USB konektoru a přepínače zapnutí/vypnutí na piny GPIO (1 $?)
- Čtyři neodymové magnety nebo můžete k zavření zadních dveří použít cokoli. Vidět
-
Překližka. Použil jsem 5mm překližku, ale můžete použít jakoukoli, kterou máte doma (2 $)
Potřebujete také nějaké nástroje…
- Nástroje pro pájení
- Šroubováky
- Horkovzdušná pistole
- 3D tiskárna (volitelně)
Pojďme!
Krok 2: Pojďme navrhnout cool pouzdro QuizzPi…


První věc, kterou potřebujeme, je vědět, kolik místa potřebujeme na zahrnutí hardwaru (Raspberry + obrazovka + tlačítka + baterie + vodiče). S ohledem na části popsané v předchozím kroku jsem vytvořil 3D návrh pouzdra pomocí bezplatného online 3D návrháře Tinkercad (viz). Chcete -li vytisknout 3D model pouzdra, můžete si jej stáhnout z přiloženého souboru Pouzdro QuizzPi.stl.
V tu chvíli jsem se musel rozhodnout, zda model vytisknu na své 3D tiskárně, nebo ho vyrobím z překližky. Myslel jsem, že když jsem pro svou dceru, mohl bych strávit trochu víc času výrobou z překližky. Získávám tedy plány z 3D modelu a řezám dřevo.
Dalším krokem je lepení dílů za tepla…
Krok 3: Výroba překližkového pouzdra …




Jakmile jsem odřízl všechny části překližky plánů, dalším krokem je jejich lepení za tepla. V některých spojeních jsem dal výztuhy, aby byla krabice silnější. Do lunety nakreslím tužkou obrys obrazovky LCD a vystřihnu ji. Udělám čtyři otvory pro šrouby. Pokud používáte jinou obrazovku, musíte tuto věc upravit.
Zadní dveře se zavírají dvěma magnety nalepenými na dveřích a dvěma magnety nalepenými na pouzdru, takže se vyhýbám používání pantů.
Případ QuizzPi je dokončen…
Krok 4: Zapojení GPIO pinů, montáž Raspberry+LCD…



Potřebujeme připojit tlačítka k Raspberry Pi, aby věděla, jaká tlačítka jsou stisknuta. Tlačítka jsou připojena k pinům GPIO. Potřebujeme čtyři IN GPIO piny plus jeden Gnd GPIO pin. Pro červené, žluté, zelené a modré tlačítko jsem použil GPIO pin 31 (GPIO6), 33 (GPIO13), 35 (GPIO19), 37 (GPIO26) a 39 (Gnd). Tato obrazovka má rozhraní SPI. To znamená, že je připojen k GPIO bance, takže nejprve jsem vložil vodiče zakončené čtvercem do kolíků tlačítek a poté jsem připojil LCD obrazovku.
Dalším krokem bylo připevnění pouzdra Raspberry+LCD+na čelní kryt. Použil jsem vlastní šrouby pouzdra Raspberry Pi.
QuizzPi je namontován…
Krok 5: Baterie, tlačítka, přepínač a konektor USB…



Znovu jsem použil Tinkercad k návrhu klipu, který drží powerbanku v pouzdře. Klip jsem vytiskl svou 3D tiskárnou a připojil se k pouzdru horkou lepicí pistolí. Níže přikládám soubor.stl modelu. Pokud nemáte přístup k 3D tiskárně, můžete se připojit k powerbance pomocí pásky na suchý zip.
Dalším krokem je připojení vypínače mezi power bankou a Raspberry Pi. Vzal jsem USB kabel a přestřihl jsem jen napájecí vodič, pak jsem jeden konec drátu připájel k jednomu kolíku vypínače a druhý konec vodiče k druhému kolíku vypínače. Takže když vypínač ve vypnutém stavu neprochází přepínačem a Raspberry je vypnutý a když zapnuté napájení prochází přepínačem a Raspberry je zapnutý.
Když je vybití powerbanky problém vytáhnout z pouzdra a nabít, nechtěl jsem jej vytáhnout pokaždé, když se nabíjí. Problém byl v tom, že nabíjecí port powerbanky je USC typu C a já jsem měl jen kabel powerbanky. Pájel jsem tedy dva ženské USB konektory a vložil do pouzdra. Konektor uvnitř pro připojení kabelu napájecí banky a vnější konektor pro připojení napájecího kabelu USB.
Umístění tlačítek a jejich zapojení bylo snadné. Tlačítka mají 2 piny, jeden kolík každého tlačítka se připojuje ke společnému kabelu, který vede k uzemněnému kolíku GPIO, a druhý kolík tlačítka se připojuje k příslušnému kolíku GPIO na malině. Schéma zapojení je uvedeno na přiloženém schématu.
Zvukový systém je založen na PAM8403, levném zesilovači zvuku. Je to nutné, protože zvuk získaný z konektoru Raspberry Pi není příliš silný, aby fungoval reproduktor. Musíte jej napájet 5V nebo více. Na přiložených obrázcích vidíte, jak zapojit zesilovač a reproduktor. K připojení audio/video konektoru Rapberry potřebujeme 3,5 mm konektor. Ke konektoru jsem připájel 3 dráty: audio, video a uzemnění. Přiložený diagram ukazuje, jaký pin je každý. Poté jsem připájel vodič k vypínači pro zapnutí napájení a další vodič k uzemňovacímu kabelu z napájecího kabelu. Poté připojím vodiče z reproduktoru k výstupům zesilovače. Nejjednodušší je přidělit zvukový systém v pouzdře. Na obrázcích můžete vidět.
QuizzPi je namontovaný, na poslední fotografii můžeme stále vidět značky tužky na dřevě, ale je čas na software … pojďme vytvořit malý kvízový engine …
Krok 6: Rasbian Image a programování Quiz Engine…




Stiskněte tlačítko napájení. Nic se neděje. Ó můj bože! To nejde! Co může být špatně? Nějaký kabel bez připojení? Nebojte se, musíme nainstalovat obrázek na SD kartu…
Kvízový engine je napsán v Pythonu 3, takže potřebujeme obrázek Raspbian s nainstalovaným kompilátorem Pythonu. V tomto okamžiku musíme vzít v úvahu typ obrazovky, kterou jsme nainstalovali. Moje obrazovka je rozhraní SPI a prodejce poskytuje obrázek Raspbian se všemi nainstalovanými ovladači obrazovky. Tato verze Raspbian má také Python engine. Tento obrázek si můžete stáhnout v tomto odkazu.
Pokud máte obrazovku HDMI nebo RCA, můžete si stáhnout poslední obrázek Raspbian, který je k dispozici na webu raspberrypi.org. Upozornění: potřebujete verzi Desktop Rasbian, takže se vyhněte stahování obrazu Lite Raspbian. Tyto obrázky obsahují kompilátor Pythonu.
K instalaci obrazu na kartu SD můžeme použít libovolnou aplikaci. Používám Win32diskimager. Poté vložíme SD kartu do Raspberry a stiskneme vypínač. Funguje to! Nyní musíme vytvořit program Python pomocí kvízového enginu.
Dalším krokem je stažení souborů kvízového enginu. Připojil jsem zdrojový kód do souboru QuizzPi.zip. Stáhněte si zdroj a vytvořte složku v Raspberry Pi:
# mkdir/home/pi/QuizzPi
a rozbalte soubor stažený do této složky.
QuizzPi.zip obsahuje tyto soubory:
- QuizzPi.py - obsahuje kód
- Soubory obrázků-p.webp" />
- Zvukové soubory MP3 - můžete si je přizpůsobit
- losmejores.txt - obsahuje tabulku High Scores, můžete ji smazat pro inicializaci tabulky
- Instructions.txt
Nebudu podávat vyčerpávající vysvětlení toho, jak jsem naprogramoval kód motoru v Pythonu, protože je to těžké pro lidi bez znalosti programování. Potřebují pouze uložit soubory do Raspberry. Lidé s znalostmi programování to budou moci upravit bez jakéhokoli vysvětlení;)
Otázky a odpovědi pocházejí ze společné databáze otázek a odpovědí s názvem Open Trivia Database, kterou najdete zde. Můžete změnit kategorii a obtížnost otázek změnou řádku v souboru QuizzPi.py:
#Cargo desde URLurl = 'https://opentdb.com/api.php?amount=10&type=multiple'
změna pomocí adresy URL získané z konfigurátoru API
Herní obrazovky jsem navrhl ve Photoshopu, můžete je upravit. Musíte pouze zachovat některé bílé oblasti na obrazovce s otázkami, na obrazovce s výsledky a na obrazovkách s nejvyšším skóre, protože na ně píše herní engine.
Zvuky hry si můžete také přizpůsobit. Musíte pouze změnit soubory.mp3 ostatními, které chcete, musíte zachovat stejná jména. Z online databází můžete získat spoustu zvuků, já získávám miny z Free Sound Effects.
Nyní musíte svůj Raspbian upravit, aby automaticky spustil QuizzPi. Můžete si přečíst tento článek, kde vysvětlete, jak na to:
Skončili jsme!!!
Krok 7: Ukázka…


Chcete -li dokončit tento návod, můžete se podívat na toto video. Vidíte, že se snadno používá a obtížná otázka závisí na vás…
Upravit: video bylo nyní aktualizováno se zvukem!

Runner Up in the Microcontroller Contest
Doporučuje:
DIY 37 Leds Arduino Roulette Game: 3 Steps (with Pictures)

DIY 37 Leds Arduino Roulette Game: Roulette je kasinová hra pojmenovaná podle francouzského slova, které znamená malé kolečko
Crack the Code Game, Arduino Based Puzzle Box: 4 Steps (with Pictures)

Crack the Code Game, Arduino Based Puzzle Box: V tomto Instructable vám ukážu, jak si vytvořit vlastní crack kódovou hru, ve které pomocí otočného ovladače kodéru uhádnete náhodně generovaný kód do trezoru. Na přední straně trezoru je 8 LED diod, které vám řeknou, kolik z
My DIY Steampunk Operation Game, Arduino Based: 9 Steps (with Pictures)

My DIY Steampunk Operation Game, Arduino Based: Tento projekt je poměrně rozsáhlý. Nevyžaduje mnoho nástrojů ani předchozí znalosti, ale někoho (včetně mě) toho hodně naučí v mnoha různých odděleních výroby! Jako Captive-sensing s Arduino, multitasking s Arduino
The Memento Game: 7 Steps (with Pictures)

The Memento Game: Pravděpodobně znáte ty hry, kde si hráč pamatuje sled barev a zvuků a musí je hrát, ne? Memento Game přidává ceny za extra zábavu! Jakmile hráč dosáhne předem stanoveného skóre, vyhraje hru a pole se otevře, odhalí
Tlačítka odpovědi na Trivia Game: 8 kroků (s obrázky)

Trivia Game Answer Buttons: S tímto okruhem budete moci spustit svou vlastní herní show. Když stisknete jedno z tlačítek přehrávače na obou stranách pole, rozsvítí se odpovídající kontrolka a druhé tlačítko se deaktivuje, aby se ukázalo, kdo odpověděl na otázky