Índice:

Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe: 5 etapas (com imagens)
Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe: 5 etapas (com imagens)

Vídeo: Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe: 5 etapas (com imagens)

Vídeo: Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe: 5 etapas (com imagens)
Vídeo: 3D4x Game: 3D 4x4x4 Tic-Tac-Toe - Making the Panels 2024, Novembro
Anonim
Image
Image
Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe
Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe
Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe
Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe
Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe
Jogo 3D4x: 3D 4x4x4 Tic-Tac-Toe

Você está cansado de jogar o mesmo jogo da velha, velho, chato e bidimensional? Bem, nós temos a solução para você! Jogo da velha em 3 dimensões !!! Para 2 jogadores, neste cubo 4x4x4, obtenha 4 LEDs em uma linha (em qualquer direção) e você ganha! Você fez isso. Você joga.

Etapa 1: reunir componentes e ferramentas

Reúna componentes e ferramentas
Reúna componentes e ferramentas

O componente mais essencial deste 3D Tic-Tac-Toe é o LED. Escolhemos o PL9823 que já possui um controlador integrado. Ele tem quatro pinos (entrada de dados, fonte de tensão, terra, saída de dados) e permite endereçar e controlar facilmente a cor do LED. A estrutura de grade pode ser construída de muitas maneiras diferentes, mas para nós esta foi a opção mais barata, mais resistente e mais estética.

Lista de componentes:

  • Arduino (usamos Uno)
  • LEDs PL9823 (pelo menos 64)
  • Palitos de espeto de madeira (24 cm de comprimento)
  • Fiação (usamos o interior de um cabo Ethernet antigo)
  • Botões (estado momentâneo)
  • 7 resistores (220Ohm)
  • Placas de ensaio (1 para botões e reprodução, 1 para conexões fáceis do painel com o Arduino)
  • Placa de espuma de poliestireno (~ 2x30x30cm para fazer os painéis)
  • Bloco de espuma de poliestireno (~ 7x25x25cm como base para toda a grade)

Lista de ferramentas:

  • Ferro de solda
  • Lata de solda
  • Cola
  • Straightedge com régua
  • Alicate
  • Decapantes de arame
  • Cortadores de arame
  • Tesoura
  • Marcador
  • Caneta
  • Pinças

Etapa 2: Faça a grade

Image
Image
Faça a grade
Faça a grade
Faça a grade
Faça a grade

Fabricamos 4 painéis de LEDs 4x4 individualmente.

  • 00: Pegue isopor para fazer o layout do painel. Desenhe o padrão. Neste caso, utilizamos espaçamento de 6cm entre os LEDs com 2cm nas extremidades.
  • 01: Insira os pinos do LED no isopor. Importante! Certifique-se de inserir todos os LEDs com a mesma orientação. Em nosso caso, escolhemos o pino de saída para a esquerda.
  • 02: Agora coloque os palitos de espeto de haste de madeira em ambos os lados dos LEDs em fileiras, certificando-se de que todas as pontas estejam voltadas para a mesma direção. Cole o palito nas laterais das lâmpadas LED e deixe secar.
  • 03: Faça o mesmo para as colunas de palitos de espeto de haste de madeira dos dois lados dos leds, certificando-se de que todas as pontas estejam voltadas para a mesma direção. Cole e deixe secar.
  • 04: Remova suavemente afrouxando os LEDs ao redor. Levante o painel e vire-o. Cole a parte traseira para que fique mais segura.
  • 05: Depois que tudo estiver seco, dobre os pinos para facilitar a soldagem e ajudar a evitar que os cabos elétricos se cruzem. Usamos uma pinça e dobramos o pino perto da base.
  • 06: Agora prepare os fios. Usamos um cabo Ethernet antigo que contém fios de 4 pares trançados. Remova o isolamento tomando cuidado para não cortar os fios pequenos. Em seguida, destorça, escolha suas cores para corresponder às diferentes linhas e corte no comprimento certo entre os LEDs. Em seguida, retire um pouco do isolamento das pontas. Escolhemos solo = verde, Vdc = azul, dados de entrada / saída = branco.
  • 07: Solda! Há muitas conexões (64x4), então tome cuidado para soldar corretamente.
  • 08: Retire o painel e coloque sobre a base de espuma!

Etapa 3: faça o joystick

Faça o Joystick
Faça o Joystick
Faça o Joystick
Faça o Joystick

Usamos um breadboard para fazer o joystick para navegar na grade e fazer a seleção. Colocamos jumpers, resistores e botões para formar o circuito (veja o diagrama) que define o controlador de direção (6 botões, 1 para cada direção) e o botão de seleção (entra no movimento do jogador). O 5V e o aterramento são conectados às portas relativas no Arduino. Para os pinos de entrada analógica e digital, escolhemos as portas A5 e 2 do Arduino, respectivamente.

O botão de seleção tem um esquema básico com o resistor anti-agrupamento. O comando de direção é baseado em uma escada de resistores que funciona como um circuito divisor de tensão: a tensão para a entrada analógica depende do botão pressionado e é interpretada pelo Arduino como uma direção de comando.

Etapa 4: Escreva o Código

Escreva o código
Escreva o código

Carregamos nosso código para você usar:) Primeiro, faça as conexões elétricas com o Arduino. Colocamos uma mini placa de ensaio ao lado do Arduino para torná-lo um pouco mais fácil. Conectamos o Arduino "GND" e "5V" a 2 linhas do breadboad onde conectamos o respectivo aterramento e Vdc de cada painel. Para Data-In e Data-Out, escolhemos 4 pinos Arduino diferentes, 13, 10, 7 e 4 para cada um dos painéis. Os LEDs PL9823 podem ser endereçados individualmente pela ordem numérica do LED em série. Por exemplo, se você deseja ligar o primeiro LED para uma determinada cor, enderece o LED [0]. Para o 16º LED, enderece o LED [15]. Agora você está pronto para codificar e brincar com as luzes bonitas! Abaixo está uma explicação geral do código do jogo 3D tic-tac-toe.

O código do jogo 3D4x

Utilizamos a biblioteca fastled.h que nos permite gerenciar os LEDs microcontrolados.

O cubo é memorizado virtualmente no array inteiro 3D “TTTMap”, onde cada elemento pode estar em 1 de 5 estados de acordo com a luz correspondente é possuída por: 0 = nenhum jogador, 1 = jogador 1, 2 = jogador 2, 3 = jogador 1 em uma combinação vencedora e 3 = jogador 2 em uma combinação vencedora. A fim de mapear os elementos do cubo virtual no TTTMap para os LEDs reais, os arranjos de inteiros LEDMap0, LEDMap1, LEDMap2, LEDMap3 são usados.

A função “setup” inicializa as portas do Arduino conectadas ao painel, inicializa todos os LEDs para “preto” e inicializa os elementos do array TTTMap para 0.

A função “loop” executa as funções “ReadButtonInput ()”, “SendLED ()” e, caso um jogador ganhe, a função “VictoryAnimation ()”. A primeira função lê a entrada analógica do comando de direção e a entrada digital do botão de seleção. As variáveis booleanas “ButtonPushed” e “SelectPushed” são usadas para evitar que o movimento se repita na velocidade do loop quando o botão é pressionado. A função “SendLED ()” atualiza os estados dos LEDs enviando o sinal de controle serial de acordo com os dados do TTTMap. Uma função fundamental é “CheckVictory ()” que é chamada por “ReadButtonInput ()” toda vez que o botão de seleção é pressionado. Esta função verifica se o ponto selecionado no espaço faz uma combinação vencedora com os pinos circundantes. Em caso de combinação vencedora, os pontos no TTTMap são assinados com o número 3 ou 4, de acordo com o jogador que ganha, e o emocionante “VictoryAnimation ()” é executado!

Para jogar novamente, basta apertar o botão de reset no Arduino:)

Etapa 5: Brinque com seus amigos

Jogue com seus amigos!
Jogue com seus amigos!
Jogue com seus amigos!
Jogue com seus amigos!
Jogue com seus amigos!
Jogue com seus amigos!

Nenhuma explicação aqui necessária … APROVEITE!

Recomendado: