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

스마트 저금통 만들기: 아두이노 나노로 동전 인식기 제어하기

부품 및 소모품

부품 수량
Arduino Nano R3 1
동전 인식기 (Coin Acceptor) 1
4자리 TM1637 LED 디스플레이 1

앱 및 온라인 서비스

프로젝트 소개

이 프로젝트의 목적은 아두이노로 동전 인식기를 제어하는 코드를 작성해 다른 프로젝트에서도 활용할 수 있게 하는 것입니다. 특히 딸을 위한 잔액 표시 기능이 있는 스마트 저금통을 만드는 것이 목표였습니다.

코드

아두이노로 동전 인식기 제어하기


// Mario's Ideas
// 아두이노로 동전 인식기 제어
#include <Arduino.h>
#include <TM1637Display.h>
#include <EEPROM.h>

// 모듈 연결 핀 (디지털 핀)
#define CLK 3
#define DIO 4

TM1637Display display(CLK, DIO);

// 임펄스 간격 측정용 변수
int i = 0;
// 감지된 임펄스 수
int impulsCount = 0;
// 투입된 모든 동전 합계
float total_amount = 0;

void setup() {
  Serial.begin(9600);
  display.setBrightness(0x0f);
  // 핀 D2(인터럽트 0)에 연결, HIGH→LOW 낙하 에지에서 incomingImpuls 실행
  attachInterrupt(0, incomingImpuls, FALLING);
  EEPROM.get(0, total_amount);
  display.clear();
}

void incomingImpuls() {
  impulsCount++;
  i = 0;
}

void loop() {
  i++;
  Serial.print("i="); Serial.print(i);
  Serial.print(" Impulses:"); Serial.print(impulsCount);
  Serial.print(" Total:"); Serial.println(total_amount);

  // 30카운트(약 0.3초) 동안 추가 임펄스 없으면 동전 1개로 판정
  if (i >= 30 && impulsCount == 1) { total_amount += 2; impulsCount = 0; EEPROM.put(0, total_amount); }
  if (i >= 30 && impulsCount == 2) { total_amount += 1; impulsCount = 0; EEPROM.put(0, total_amount); }
  if (i >= 30 && impulsCount == 3) { total_amount += 0.5; impulsCount = 0; EEPROM.put(0, total_amount); }
  if (i >= 30 && impulsCount == 4) { total_amount += 0.2; impulsCount = 0; EEPROM.put(0, total_amount); }
  if (i >= 30 && impulsCount == 5) { total_amount += 0.1; impulsCount = 0; EEPROM.put(0, total_amount); }

  // 디스플레이 출력 (소수점 처리)
  if (total_amount < 10)
    display.showNumberDecEx(total_amount * 10, 0b10000000, true, 2, 2);
  else
    display.showNumberDecEx(total_amount * 10, 0b00100000, false, 4, 0);
}

회로도

동전 인식기, TM1637 디스플레이, 아두이노 나노 간 연결 회로도가 제공됩니다.

제조공정

  1. 아두이노 파워 컨트롤 센터: N-FET, P-FET, 릴레이 & RTC 키트
  2. 아두이노 블루투스로 LED 제어하기 - HC-05 & MIT App Inventor 입문 가이드
  3. 아두이노 릴레이 제어 가습기 자동화 – 고전압 안전 설계
  4. 아두이노 나노와 조이스틱으로 2개 스테퍼 모터 제어하기 – 비주이노(Visuino) 튜토리얼
  5. ThimbleKrox: 아두이노 마이크로와 MPU-6050을 이용한 손가락 장착형 마우스 컨트롤
  6. 아두이노 우노와 이더넷 실드로 정확한 태양광 복사량 측정하기
  7. DIY 아두이노 바퀴벌레 제어 시스템 – 3만 원 미만으로 제작하기
  8. 아두이노 우노와 블루투스로 RC카 원격 제어하기: 단계별 가이드
  9. 전용 안드로이드 앱으로 아두이노 로봇팔 제어하기
  10. 아두이노 우노로 25kHz 4핀 PWM 팬 제어하기 - 제작, 코드 및 테스트