Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Labirinto do labirinto de mármore Arduino

Componentes e suprimentos

Arduino UNO
× 1
Micro servo motor SG90
× 2
Breadboard (genérico)
× 1
Modulo Joystick
× 1
Fios de jumpers (genérico)
× 1

Ferramentas e máquinas necessárias

Pistola de cola quente (genérica)
Faca de lâmina afiada

Aplicativos e serviços online

Arduino IDE

Sobre este projeto


Eu mostro como fazer um jogo de tabuleiro Marble Maze Labyrinth controlado por Arduino que é super fácil e divertido de fazer. E a melhor parte é que ele é feito em papelão.

A ideia do jogo é navegar pela bola de gude pelo labirinto para chegar ao portal no final para vencer o jogo.

Claro que existem muitas ideias para melhorar este jogo e torná-lo mais divertido, como pudim de alguns sensores no final, campainha para tocar um tom durante o jogo ou até mesmo beliscar alguns buracos no próprio labirinto.





A ideia


Fiquei entediado com os jogos eletrônicos e comecei a pesquisar sobre os jogos de habilidade física, então encontrei o Labirinto e gostei.

O que é o labirinto ?

Labirinto é um jogo de habilidade física que consiste em uma caixa com um labirinto no topo com buracos e uma bola de gude de aço. O objetivo do jogo é tentar inclinar o campo de jogo para guiar a bola de gude até o final do labirinto, sem deixá-la cair em nenhum dos buracos. Algumas versões do jogo apresentam uma superfície de labirinto suspensa que gira em dois eixos, cada um controlado por um botão. São vendidas pequenas versões portáteis do jogo, com a caixa totalmente fechada com uma tampa transparente na parte superior. O jogo foi desenvolvido pela BRIO na Suécia e lançado pela primeira vez lá em 1946.





Design


Comecei a projetar meu próprio labirinto de labirinto usando o Sketch Up Pro para imaginar como será este jogo. E eu tive o cuidado de dar um tamanho adequado e torná-lo bem fácil, porque as crianças podem começar a construir seu próprio labirinto também.

Os arquivos de design estão disponíveis para download para fazer seu próprio jogo de papelão em apenas 1 hora.

Ferramentas e materiais

· Papelão 3mm

· Cola quente

· Faca de lâmina afiada

· Governante

· Lápis

Componentes

Arduino (qualquer tipo de placa)

Mini tábua de pão

Fios de ligação

2X servo motor 9g

Módulo Joystick

2 parafusos e porcas de 12 mm por 3 mm





Corte a forma






Imprima o arquivo anexado e siga as seguintes instruções para recortar o papelão:

1. Corte um quadrado de 20 cm por 20 cm para a base do labirinto.

2. Corte dois trapézios isósceles de 14 cm por 16 cm para as laterais do labirinto.

3. Faça um orifício retângulo em uma dessas duas peças para o servo motor (eixo X).

4. Faça um orifício de 3 mm na outra peça exatamente no meio para ficar contra o servo eixo do outro lado (eixo X).

5. Em seguida, você precisará cortar quatro retângulos de 14 cm por 4 cm para o suporte no interior do labirinto.

6. Faça um furo de 3 mm na outra peça exatamente no meio para ficar contra o servo eixo do outro lado (eixo Y).

7. Faça um furo retângulo no meio, conforme mostrado em uma dessas quatro peças para o servomotor (eixo Y).

8. Escolha seu próprio labirinto nos arquivos anexados ao artigo e, em seguida, corte um quadrado de 12 cm por 12 cm para o labirinto.

9. Dica * Cole o labirinto de papel como um guia para você.

10. Você precisará cortar pelo menos oito retângulos de 1,5 cm por 12 cm para as paredes do labirinto. Em seguida, você precisará cortá-los para que tenham o tamanho certo e caibam no seu labirinto.

11. Siga as linhas-guia e cole as peças no lugar para formar a parede do labirinto.

12. Cole os servo motores em seu lugar, conforme mostrado.

13. Cole a buzina do servo motor nas peças do retângulo.






Fiação


Conecte os fios dos servos e joystick conforme mostrado

Arduino pino 8 para fio amarelo no servo 1 (eixo X)

Arduino pino 9 para fio amarelo no servo 1 (eixo Y)

Fios vermelhos e marrons para protoboard.

Arduino Pin A0 para Joystick pin VRx

Arduino Pin A1 para Joystick pin VRy

Joystick VCC e GND para breadboard.

Arduino 5V e GND para breadboard.





Código


Conecte sua placa Arduino ao PC usando o cabo USB.

Abra o Arduino IED

Copie e cole o código em um novo esboço

Certifique-se do nome da porta serial clicando no menu Ferramentas> placa> escolha a porta serial ativa

Clique no botão circular superior para fazer o upload do código.

Depois de terminar a mensagem, você está pronto para ir.

Código

  • contol labirinto com joystick
labirinto de controle com joystick Arduino
 #include  Servo myServoX; // define servo motor para o eixo X Servo myServoY; // define servo motor para o eixo Y int ServoXPin =8; // define a localização do eixo X ServoYPin =9; // define a localização do eixo Y ServoXHomePos =90; // define a posição inicial para o servosinto ServoYHomePos =90; int ServoXPos =103; int ServoYPos =135; int XAxlePin =A0; // define o controle de pino do eixo X para joystick A0int YAxlePin =A1; // define o controle de pino do eixo Y para joystick A1int XAxleValue =0; // define o valor inicial para joystickint YAxleValue =0; int Direction =0; int range =12; // intervalo de saída de movimento de X ou Y centro =intervalo / 2; // posição de repouso valueint threshold =range / 4; // configuração de thresholdvoid em repouso () {myServoX.attach (ServoXPin); // anexando servo X myServoY.attach (ServoYPin); // anexando servo YServoXPos =ServoXHomePos; // atualiza o ServoXPos com a posição inicial como startupServoYPos =ServoYHomePos; // atualiza o ServoYPos com a posição inicial como startupmyServoX.write (ServoXPos); myServoY.write (ServoYPos); Serial.begin (9600);} void loop () {XAxleValue =readAxis (XAxlePin); YAxleValue =readAxialPin); .print (XAxleValue, DEC); Serial.print ("-"); Serial.println (YAxleValue, DEC); // verificar os valores do joystick e mover os servos suavemente com atraso de 100 milissegundos (XAxleValue> 0) {ServoXPos ++; myServoX.write (ServoXPos); atraso (100 * (7-XAxleValue)); } if (XAxleValue <0) {ServoXPos--; myServoX.write (ServoXPos); atraso (100 * (7 + XAxleValue)); } if (YAxleValue> 0) {ServoYPos ++; myServoY.write (ServoYPos); atraso (100 * (7-YAxleValue)); } if (YAxleValue <0) {ServoYPos--; myServoY.write (ServoYPos); atraso (100 * (7 + YAxleValue)); } if (ServoXPos> ServoXHomePos + 20) {ServoXPos =ServoXHomePos + 20; } if (ServoXPos  ServoYHomePos + 20) {ServoYPos =ServoYHomePos + 20; } if (ServoYPos  

Peças personalizadas e gabinetes

Esquemas


Processo de manufatura

  1. Detector de linguagem TinyML baseado em Edge Impulse e Arduino
  2. Jogo Arduino Gyroscope com MPU-6050
  3. Dados digitais Arduino
  4. Homem de Ferro
  5. Encontre-me
  6. Controle do umidificador Arduino
  7. Sonar usando arduino e exibição no IDE de processamento
  8. MobBob:DIY Arduino Robot Controlado por Smartphone Android
  9. Arduino Audio Reactive Desk Light
  10. NeoMatrix Arduino Pong