工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

スマート貯金箱を作ろう:Arduino Nanoでコインアクセプターを制御

コンポーネントと用品

スマート貯金箱を作ろう:Arduino Nanoでコインアクセプターを制御 Arduino Nano R3 ×1
スマート貯金箱を作ろう:Arduino Nanoでコインアクセプターを制御 コインアクセプター ×1
スマート貯金箱を作ろう:Arduino Nanoでコインアクセプターを制御 4桁 TM1637 LEDディスプレイ ×1

アプリとオンラインサービス

スマート貯金箱を作ろう:Arduino Nanoでコインアクセプターを制御 Arduino IDE

このプロジェクトについて

このプロジェクトの目的は、Arduinoでコインアクセプターを制御するコードを書き、他のプロジェクトで使えるようにすることです。私が考えていた具体的なプロジェクトは、娘のために残高がわかるスマート貯金箱を作ることでした。

コード

Arduinoでコインアクセプターを制御 Arduino
// Mario's Ideas
// Arduinoでコインアクセプターを制御
#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() {
  // pinMode(2, INPUT_PULLUP);
  Serial.begin(9600);
  display.setBrightness(0x0f);
  // HIGHからLOWへの立ち下がりでIncomingImpuls関数を実行する割り込み(ピンD2)
  attachInterrupt(0, incomingImpuls, FALLING);
  EEPROM.get(0, total_amount);
  display.clear();
}

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

void loop() {
  i = i + 1;
  Serial.print("i=");
  Serial.print(i);
  Serial.print(" Impulses:");
  Serial.print(impulsCount);
  Serial.print(" Total:");
  Serial.println(total_amount);
  
  if (i >= 30 && impulsCount == 1) {
    total_amount = total_amount + 2;
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 2) {
    total_amount = total_amount + 1;
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 3) {
    total_amount = total_amount + 0.5;
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 4) {
    total_amount = total_amount + 0.2;
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 5) {
    total_amount = 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);
}

回路図

スマート貯金箱を作ろう:Arduino Nanoでコインアクセプターを制御

製造プロセス

  1. Arduino電源制御センター:N-FET/P-FET/リレー/RTC搭載キット
  2. ArduinoでBluetooth経由でLEDを制御 – シンプルDIYガイド
  3. DIY Arduino加湿器コントローラー:リレーを用いた安全な高電圧制御
  4. Arduino Nanoとジョイスティックで2軸ステッピングモーターを制御:Visuinoで簡単プログラミング
  5. ThimbleKrox: Arduino MicroとMPU-6050を用いた指装着型マウス制御
  6. Arduino UNOとEthernetシールドで太陽放射を測定する自作ピラノメーター
  7. Arduinoでゴキブリ制御システムを自作 - 30ドル以下で構築
  8. Arduino UnoとBluetoothでラジコンカーを遠隔操作:ステップバイステップガイド
  9. Arduinoロボットアーム「LittleArm」をAndroidアプリでBluetooth制御
  10. Arduino搭載HID UPS:ダミー電源をUSB対応バックアップにアップグレード
  11. Arduino Unoで25kHz 4ピンPWMファンを制御 – 製作・コード・テスト