산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

아두이노 나노로 37개 LED 룰렛 게임 만들기

필요한 부품 및 소모품

아두이노 나노 R3 (Arduino Nano R3) 1개
74HC595 시프트 레지스터 IC 5개
LED (일반) 37개
부저 (Buzzer) 1개
범용 NPN 트랜지스터 1개
순간 푸시버튼 스위치 1개

필요한 도구 및 기계

앱 및 온라인 서비스

프로젝트 소개

룰렛은 '작은 바퀴'라는 프랑스어에서 유래한 카지노 게임입니다. 기존 10개 LED 룰렛 프로젝트가 많은데, 본 프로젝트는 실제 룰렛 휠과 동일하게 37개 LED(유럽식: 0~36)로 구현했습니다.

아두이노 나노로 37개 LED 룰렛 게임 만들기

작동 원리

버튼을 누르면 가상 볼이 던져지며, LED가 순차 점멸하여 회전을 시뮬레이션합니다. 속도가 점차 감소하다가 난수로 생성된 숫자에서 멈춥니다. 회전 중 부저로 사운드 이펙트가 나와 현실감을 더합니다. 회전 속도와 시간은 코드에서 쉽게 조정 가능합니다.

구성 요소

최종적으로 PVC 플라스틱 박스에 넣고 컬러 시트지로 마감했습니다.

코드

아두이노 코드 (C/C++)
int SER_Pin = 8;   // 74HC595 핀 14
int RCLK_Pin = 9;  // 74HC595 핀 12
int SRCLK_Pin = 10; // 74HC595 핀 11

#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); // 정지 위치 랜덤 결정
}

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);
    digitalWrite(SER_Pin, registers[i]);
    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; // 리셋
    }
  }
}

회로도

회로도 이미지가 제공됩니다.

제조공정

  1. 나만의 LUMAZOID 만들기: DIY 아두이노 음악 비주얼라이저
  2. 아두이노 나노와 MPU-6050으로 실시간 자이로스코프 게임 만들기
  3. 아두이노 디지털 주사위: LCD 기반 랜덤 넘버 제너레이터 만들기
  4. DIY 아두이노 USB 게임 컨트롤러 - 나만의 고성능 게임패드 만들기
  5. 아두이노 조이스틱 인터랙티브 게임 - LED 피드백으로 방향 감지
  6. 휴대용 거리 감지기: HC-SR04, 18650 배터리, 3D 프린트 케이스의 아두이노 나노 DIY 키트
  7. MobBob: 아두이노 로봇 직접 만들기, 안드로이드 스마트폰으로 매끄럽게 제어
  8. 픽셀 체이서: 아두이노 나노로 만든 인터랙티브 원탭 LED 게임
  9. 구리 도금 프로젝트: 아두이노 우노로 만드는 스마트 전기분해 시스템
  10. 아두이노 나노와 네오픽셀 매트릭스로 만드는 네온 퐁 게임