Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Slimme spaarpot bouwen: Muntenacceptor besturen met Arduino Nano

Onderdelen en benodigdheden

Arduino Nano R3 1
Muntenacceptor 1
4-digit TM1637 LED-display 1

Apps en online diensten

  • Arduino IDE

Over dit project

Het doel van dit project is code te schrijven om een muntenacceptor met Arduino te besturen, zodat het in andere projecten gebruikt kan worden. Het specifieke project dat ik in gedachten had was een balansbewuste spaarpot voor mijn dochter.

Code

// Mario's Ideas
// Muntenacceptor besturen met Arduino
#include 
#include 
#include 

// Module-aansluitpinnen (digitale pinnen)
#define CLK 3
#define DIO 4
TM1637Display display(CLK, DIO);

// Variabelen voor impulsmeting
int i = 0;                 // Interval tussen impulsen
int impulsCount = 0;       // Aantal gedetecteerde impulsen
float total_amount = 0;    // Totaal bedrag ingegooide munten

void setup() {
  Serial.begin(9600);
  display.setBrightness(0x0f);
  // Interrupt op pin D2 (interrupt 0) bij vallende flank
  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(" Impulsen:");
  Serial.print(impulsCount);
  Serial.print(" Totaal:");
  Serial.println(total_amount);

  // Na 30 loops (ongeveer 30ms per loop) evalueren we het aantal impulsen
  if (i >= 30 && impulsCount == 1) {
    total_amount += 2.0;      // 2 euro
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 2) {
    total_amount += 1.0;      // 1 euro
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 3) {
    total_amount += 0.5;      // 50 cent
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 4) {
    total_amount += 0.2;      // 20 cent
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }
  if (i >= 30 && impulsCount == 5) {
    total_amount += 0.1;      // 10 cent
    impulsCount = 0;
    EEPROM.put(0, total_amount);
  }

  // Weergave op 4-digit display met decimaal punt
  if (total_amount < 10)
    display.showNumberDecEx(total_amount * 10, 0b10000000, true, 2, 2);
  else
    display.showNumberDecEx(total_amount * 10, 0b00100000, false, 4, 0);
}

Schema

Slimme spaarpot bouwen: Muntenacceptor besturen met Arduino Nano

Productieproces

  1. Arduino Power Control Center: N-FET, P-FET, Relais & RTC Kit
  2. Een LED bedienen via Bluetooth met Arduino – Eenvoudige DIY Handleiding
  3. DIY Arduino Luchtbevochtiger Controller met Relais – Veilige Hoogspanningsopstelling
  4. Twee Stappenmotors Sturen met Arduino Nano & Joystick – Simpele Tutorial
  5. ThimbleKrox: Vingergemonteerde Muizenbesturing met Arduino Micro & MPU-6050
  6. Accurate zonnestralingsmeting met Arduino UNO en Ethernet Shield
  7. DIY Arduino Kakerlakbesturingssysteem – Bouw voor minder dan $30
  8. Arduino Uno & Bluetooth voor afstandsbediening van auto: stap-voor-stap handleiding
  9. Arduino robotarm besturen via speciale Android-app
  10. Arduino-aangedreven HID UPS: Upgrade je dummy voeding naar USB-compatibele backup
  11. 25 kHz 4-pins PWM-ventilatorbesturing met Arduino Uno – Bouw, Code & Test