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

Construa Seu Próprio Jogo de Roleta com 37 LEDs e Arduino Nano

Componentes e Materiais

Ferramentas Necessárias

Aplicativos e Serviços Online

Sobre o Projeto

Roleta é um jogo de cassino nomeado após a palavra francesa que significa "pequena roda". Os jogadores apostam em um único número, agrupamentos, cores vermelho/preto, par/ímpar, ou números altos (19-36) ou baixos (1-18).

A maioria dos projetos de roleta usa 10 LEDs, mas decidi fazer com 37 LEDs como na roda original. Seguindo o princípio da roleta real, o movimento do LED simula uma bola cuja velocidade diminui gradualmente até parar em um número aleatório. A construção é muito simplificada com o uso de um microcontrolador Arduino.

O dispositivo é relativamente simples e consiste em poucos componentes:

Construa Seu Próprio Jogo de Roleta com 37 LEDs e Arduino Nano

Este é o layout estilo europeu com um único zero e 36 outros números. Ao pressionar o botão, lançamos a bola virtual, simulando a rotação pela iluminação sequencial dos LEDs. A rotação é acompanhada por efeito sonoro realista. Velocidade e tempo de rotação são facilmente ajustáveis no código.

O dispositivo final foi colocado em uma caixa de PVC adequada e revestida com papel de parede colorido.

Código

Código (C/C++)
int SER_Pin = 8;   // pino 14 no 74HC595
int RCLK_Pin = 9;  // pino 12 no 74HC595
int SRCLK_Pin = 10; // pino 11 no 74HC595

#define number_of_74hc595s 5
#define numOfRegisterPins number_of_74hc595s * 8

boolean registers[numOfRegisterPins];
int Randomwaarde;
int del = 5;

void setup() {
  pinMode(SER_Pin, OUTPUT);
  pinMode(RCLK_Pin, OUTPUT);
  pinMode(SRCLK_Pin, OUTPUT);
  clearRegisters();
  writeRegisters();
  randomSeed(analogRead(3));
  Randomwaarde = random(190, 210);
  Serial.println(Randomwaarde);
}

void clearRegisters() {
  for (int i = numOfRegisterPins - 1; i >= 0; i--) {
    registers[i] = LOW;
  }
}

void writeRegisters() {
  digitalWrite(RCLK_Pin, LOW);
  for (int i = numOfRegisterPins - 1; i >= 0; i--) {
    digitalWrite(SRCLK_Pin, LOW);
    int val = registers[i];
    digitalWrite(SER_Pin, val);
    digitalWrite(SRCLK_Pin, HIGH);
  }
  digitalWrite(RCLK_Pin, HIGH);
}

void setRegisterPin(int index, int value) {
  registers[index] = value;
}

void loop() {
  for (int x = 0; x <= 36; x++) {
    if (del <= Randomwaarde) {
      setRegisterPin(x, HIGH);
      writeRegisters();
      delay(del);
      setRegisterPin(x, LOW);
      writeRegisters();
      del = del + 1;
    } else {
      setRegisterPin(x, HIGH);
      writeRegisters();
      delay(10000);
      setRegisterPin(x, LOW);
      writeRegisters();
      del = 5;
    }
  }
}

Esquemático

Diagrama de conexões disponível na imagem do projeto original.

Processo de manufatura

  1. Construa Seu Próprio LUMAZOID: Visualizador de Música DIY com Arduino
  2. Construa um Jogo em Tempo Real com Giroscópio: Arduino Nano + Sensor MPU-6050
  3. Dados Digital com Arduino: Gere Números Aleatórios 1-6 em LCD 16x2
  4. Controle USB para Jogos DIY com Arduino – Construa Seu Próprio Gamepad de Alto Desempenho
  5. Jogo Interativo com Joystick e Arduino – Feedback com LEDs
  6. Detector de Alcance Portátil – Kit DIY Arduino Nano com HC-SR04, Bateria 18650 e Gabinete 3D
  7. MobBob: Construa Seu Próprio Robô Arduino, Controlado via Smartphone Android
  8. Pixel Chaser: Jogo LED Interativo de Um Toque com Arduino Nano
  9. Projeto de Galvanoplastia de Cobre: Construa um Sistema Inteligente com Arduino UNO
  10. Jogo Pong Neon em Matriz NeoPixel com Arduino Nano