Índice:
- Etapa 1: você precisa de alguns materiais e ferramentas …
- Etapa 2: vamos projetar um caso legal do QuizzPi …
- Etapa 3: fazendo a caixa de madeira compensada …
- Etapa 4: Fiação dos pinos GPIO, montagem do Raspberry + LCD …
- Etapa 5: bateria, botões, interruptor e conector USB …
- Etapa 6: imagem Rasbian e programação do mecanismo de teste …
- Etapa 7: Demonstração …
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03
QuizzPi é um jogo de trivia tipo arcade. O QuizzPi nasceu porque tive a necessidade de divertir a minha filha. Ela tem 7 anos e já exige o uso de novas tecnologias, a ideia era criar algo que fosse divertido e educativo.
Requisitos do projeto:
- Fácil de usar
- Portátil
- Fácil de atualizar o conjunto de perguntas e respostas
- Tabela de altas pontuações
Vários itens são configuráveis. Você pode criar seu próprio banco de dados de perguntas / respostas ou você pode usar um dos vários servidores que oferece um banco de dados, onde você decide o tipo de perguntas, difícil,… Eu criei para minha filha um banco de dados de perguntas de primeiro grau, mas podemos alterar a configuração para obter perguntas triviais de um servidor oline. Esta versão instrutível obtém as perguntas de perguntas e respostas colaborativas, o Open Trivia Database. Eu escolhi questões de conhecimento geral, mas você pode escolher questões sobre filmes, esportes ou religião.
Peço desculpas pelo meu pobre inglês. Sou espanhol, mas preferi criar este instrutível em inglês para que possa chegar a mais pessoas.
Vamos lá!
Etapa 1: você precisa de alguns materiais e ferramentas …
Você tem a maior parte do material em casa com certeza …
- Raspberry Pi 2/3 com um cartão SD de 8 Gb ou mais ($ 35)
- LCD Raspberry Pi de 3,5 polegadas com estojo (11 $). Veja (isso é opcional, você pode usar qualquer monitor que tiver, você só precisa modificar o caso do QuizzPi para ele)
- Baterias. Você pode usar um banco de energia ou uma bateria diy 18650 (5 $). No meu caso, usei um banco de energia Aukey 5000mah (12 $). Ver
- Quatro botões de arcade. Tenho estes em casa (3 $, 12 botões por 10 $). Ver
- Um botão liga / desliga (0,25 $). Ver
- Dois conectores USB (0,50 $)
- Um cabo USB / micro USB
- Um alto-falante barato (opcional) ($ 0,25). Ver
- Um amplificador PAM8403 (opcional) ($ 0,80). Ver
- Alguns fios para ligar botões, conector USB e interruptor liga / desliga para pinos GPIO (1 $?)
- Quatro ímãs de neodímio ou você pode usar qualquer coisa para fechar a porta dos fundos. Ver
-
Madeira compensada. Usei compensado de 5 mm, mas você pode usar qualquer um que tiver em casa (2 $)
Você também precisa de algumas ferramentas …
- Utilitários de solda
- Chaves de fenda
- Pistola de cola quente
- Impressora 3D (opcional)
Vamos lá!
Etapa 2: vamos projetar um caso legal do QuizzPi …
A primeira coisa que precisamos é saber quanto espaço precisamos para incluir o hardware (Raspberry + tela + botões + bateria + fios). Levando em consideração as partes descritas na etapa anterior, fiz um design 3D da caixa usando o designer 3D online gratuito Tinkercad (ver)..stl.
Naquele momento, tive que decidir se imprimiria o modelo na minha impressora 3D ou em compensado. Achei que, sendo para minha filha, eu poderia ficar um pouco mais de tempo fazendo de compensado. Pego os planos do modelo 3D e corto a madeira.
A próxima etapa é colar as peças com cola quente …
Etapa 3: fazendo a caixa de madeira compensada …
Depois de cortar todas as partes de madeira compensada das plantas, o próximo passo é colá-las com cola quente. Em algumas junções coloquei reforços para tornar a caixa mais forte. Na moldura, desenho com o lápis o contorno da tela LCD e recorto. Eu faço quatro furos para os parafusos. Se você usar uma tela diferente, você deve modificar isso.
A porta traseira fecha com dois ímãs colados na porta e dois ímãs colados na caixa, então evito o uso de dobradiças.
O caso QuizzPi está concluído …
Etapa 4: Fiação dos pinos GPIO, montagem do Raspberry + LCD …
Precisamos conectar os botões ao Raspberry Pi para que ele possa saber quais botões foram pressionados. Os botões são conectados aos pinos GPIO. Precisamos de quatro pinos IN GPIO mais um pino Gnd GPIO. Usei GPIO pino 31 (GPIO6), 33 (GPIO13), 35 (GPIO19), 37 (GPIO26) e 39 (Gnd) para os botões vermelho, amarelo, verde e azul, respectivamente. Esta tela possui interface SPI. Isso significa que ele está conectado ao banco GPIO, então primeiro coloquei os fios terminados em quadrados nos pinos dos botões e depois conectei a tela LCD.
O próximo passo foi montar a caixa Raspberry + LCD + no painel. Usei os próprios parafusos da capa do Raspberry Pi.
O QuizzPi está montado…
Etapa 5: bateria, botões, interruptor e conector USB …
Usei o Tinkercad novamente para projetar um clipe para prender o banco de potência ao gabinete. Imprimi o clipe com a minha impressora 3D e juntei à caixa com a pistola de cola quente. Anexei o arquivo.stl do modelo abaixo. Se não tiver acesso a uma impressora 3D você pode juntar o banco de energia com fita velcro.
O próximo passo é conectar o botão liga / desliga entre o banco de energia e o Raspberry Pi. Peguei um cabo USB e cortei apenas o fio de alimentação, depois soldei uma extremidade do fio a um pino do botão liga / desliga e a outra ponta do fio ao outro pino do botão liga / desliga. Portanto, quando o interruptor de alimentação não passa pelo interruptor e o Raspberry está desligado e quando o interruptor de alimentação é ligado e o Raspberry está ligado.
Quando o banco de energia descarrega é um problema tirar do gabinete para carregá-lo, então eu não queria tirá-lo toda vez para carregar. O problema era que a porta de carga do banco de potência é USC tipo C e eu só tinha o cabo do banco de potência. Soldei dois conectores USB fêmeas e coloquei no gabinete. O conector interno para conectar o cabo do banco de alimentação e o conector externo para conectar um cabo de alimentação USB.
Colocar os botões e ligá-los foi fácil. Os botões têm 2 pinos, um pino de cada botão se conecta a um cabo comum que vai para um pino GPIO aterrado, e o outro pino do botão se conecta ao seu respectivo pino GPIO do framboesa. O diagrama de fiação é mostrado no diagrama anexo.
O sistema de som é baseado no PAM8403, um amplificador de som barato. É necessário porque o som que sai da tomada do Raspberry Pi não é muito potente para fazer um alto-falante funcionar. Você precisa alimentá-lo com 5v ou mais. Nas imagens anexas você pode ver como conectar o amplificador e o alto-falante. Precisamos de um conector macho de 3,5 mm para conectar ao conector de áudio / vídeo do Rapberry. Soldei 3 fios ao conector: áudio, vídeo e aterramento. O diagrama em anexo mostra o que é o pino de todos. Em seguida, soldei um fio ao interruptor liga / desliga para obter energia e outro fio ao fio terra do cabo do banco de energia. Então eu conecto os fios do alto-falante às saídas do amplificador. A parte fácil é alocar o sistema de som no case. Você pode ver nas imagens.
O QuizzPi está montado, na última foto ainda podemos ver marcas de lápis na madeira, mas é hora do software … vamos criar um minúsculo motor de quiz …
Etapa 6: imagem Rasbian e programação do mecanismo de teste …
Pressionamos o botão liga / desliga. Nada acontece. Oh meu Deus! Não funciona! O que pode estar errado? Algum cabo sem conexão? Não se preocupe, precisamos instalar uma imagem no cartão SD …
O mecanismo de teste é escrito em Python 3, portanto, precisamos de uma imagem Raspbian com o compilador Python instalado. Neste ponto, devemos levar em consideração o tipo de tela que instalamos. Minha tela é uma interface SPI, e o vendedor dá uma imagem Raspbian com todos os drivers de tela instalados. Esta versão do Raspbian também possui mecanismo Python. Você pode baixar esta imagem neste link.
Se você tem uma tela HDMI ou RCA você pode baixar a última imagem do Raspbian disponível no site raspberrypi.org. Atenção: você precisa da versão Desktop Rasbian, por isso evite baixar a imagem Lite Raspbian. Esta imagem contém o compilador Python.
Para instalar a imagem no cartão SD podemos usar qualquer aplicativo. Eu uso o Win32diskimager. Em seguida, inserimos o cartão SD no Raspberry e pressionamos o botão liga / desliga. Funciona! Agora precisamos criar um programa Python com o motor quizz.
O próximo passo é baixar os arquivos do mecanismo de teste. Anexei o código-fonte no arquivo QuizzPi.zip. Baixe o código-fonte e crie uma pasta no Raspberry Pi:
# mkdir / home / pi / QuizzPi
e descompacte o arquivo baixado nesta pasta.
QuizzPi.zip contém estes arquivos:
- QuizzPi.py - contém o código
- Arquivos de imagem-p.webp" />
- Arquivos de som MP3 - você pode alterar para personalizar
- losmejores.txt - contém a tabela de recordes, você pode excluí-lo para inicializar a tabela
- Instruções.txt
Não vou dar uma explicação exaustiva de como programei o código do motor em Python porque é muito difícil para pessoas sem conhecimento de programação. Eles só precisam salvar os arquivos no Raspberry. Pessoas com conhecimento de programação serão capazes de modificá-lo sem qualquer explicação;)
As perguntas e respostas são de um banco de dados colaborativo de perguntas e respostas chamado Open Trivia Database, que você pode encontrar aqui. Você pode alterar a categoria e dificuldade das questões mudando uma linha no arquivo QuizzPi.py:
#Cargo desde URLurl = 'https://opentdb.com/api.php?amount=10&type=multiple'
alterando com a url obtida do configurador de API
Eu projetei as telas do jogo no Photoshop, você pode modificá-las. Você só deve preservar algumas áreas em branco na tela da pergunta, na tela de resultados e nas telas de altas pontuações porque o motor do jogo escreve nelas.
Você também pode personalizar os sons do jogo. Você só deve alterar os arquivos.mp3 por outros que você deseja, você deve preservar os mesmos nomes. Você pode obter muitos sons de bancos de dados online, eu recebo minas do Free Sound Effects.
Agora você deve modificar seu Raspbian para executar o QuizzPi automaticamente. Você pode ler este artigo onde explica como fazer isso:
Terminamos!!!
Etapa 7: Demonstração …
Para terminar este instrutível você pode ver este vídeo. Você pode ver que é fácil de usar e a dificuldade das perguntas depende de você …
Editar: vídeo atualizado agora com som!
Vice-campeão no concurso de microcontroladores
Recomendado:
Jogo eletrônico do jogo da velha em uma caixa de madeira: 5 etapas
Jogo eletrônico do jogo da velha em uma caixa de madeira: Olá, eu apresento o jogo engraçado do jogo da velha em uma nova edição. Pesquisei na web por projetos semelhantes, mas a ideia aqui é única. ESPERO:) Então, vamos começar agora
Jogo Aruduino LED Jogo de dois jogadores com cliques rápidos: 8 etapas
Aruduino LED Game Jogo de dois jogadores com cliques rápidos: Este projeto é inspirado em @HassonAlkeim. Se você estiver disposto a dar uma olhada profunda, aqui está um link que você pode verificar https://www.instructables.com/id/Arduino-Two-Player-Fast-Button-Clicking-Game/. Este jogo é uma versão melhorada do Alkeim. É um
Controlador de jogo DIY baseado em Arduino - Controlador de jogo Arduino PS2 - Jogando Tekken com gamepad Arduino DIY: 7 etapas
Controlador de jogo DIY baseado em Arduino | Controlador de jogo Arduino PS2 | Jogando Tekken com DIY Arduino Gamepad: Olá pessoal, jogar é sempre divertido, mas jogar com seu próprio controlador de jogo DIY personalizado é mais divertido. Portanto, faremos um controlador de jogo usando arduino pro micro neste instructables
Controlador de jogo Arduino com luzes que respondem ao seu jogo Unity :: 24 etapas
Controlador de jogo Arduino com luzes que respondem ao seu jogo Unity :: Primeiro, escrevi isso em palavras. Esta é a primeira vez que uso instructable so sempre que digo: escreva código assim, saiba que estou me referindo à imagem no topo dessa etapa. Neste projeto eu uso 2 arduino ’ s para executar 2 bits separados
Como fazer um jogo simples de curiosidades em lote: 7 etapas
Como fazer um jogo simples de perguntas e respostas em lote: Esta é uma maneira muito simples de fazer um jogo de perguntas e respostas. Espero que você goste. A propósito, eu também postei um jogo de perguntas e respostas, então se você não quiser fazer o seu, basta acessar este site https://www.instructables.com/id/Trivia_Game/ o site postado acima de nós