Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Einen zuverlässigen Arduino-Küchentimer mit LCD-Display bauen

Komponenten und Zubehör

Komponente Menge
Arduino UNO 1
Adafruit 16x2 LCD (Weiß auf Blau) 1
Taster 12 mm (SparkFun) 4
Widerstand 10 kΩ 4
Widerstand 220 Ω 2
Drehpotentiometer 100 kΩ 1
Summer (Buzzer) 1
Steckbrett & Jumper-Kabel 1

Über das Projekt

Ein klassischer Küchentimer – aber selbstgebaut, erweiterbar und lehrreich. Das Gerät arbeitet in vier Modi:

Funktionsweise

Alle Tasten werden per digitalRead und Flankenerkennung entprellt. Ein 10-kΩ-Pull-down-Widerstand hält den Eingang LOW, solange die Taste nicht gedrückt wird (dann HIGH). Der Mode-Wechsel erfolgt über einen switch-Block in loop(). Die Zeitberechnung nutzt die TimeLib.h-Bibliothek (now()).

Code-Highlights

Code

ArduinoSketch (Küchentimer v1.0)

/**************************************************
 * Arduino Küchentimer v1.0 – 27.01.2016
 * By Angelo Fiorillo (Rom, IT) – GPL3+
 **************************************************/
#include <LiquidCrystal.h>
#include <TimeLib.h> // Fix für 'now' not declared

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int buzzerPin = 10;
const int resetButtonPin = 6;
const int startStopButtonPin = 7;
const int downButtonPin = 8;
const int upButtonPin = 9;

// Variablen für Zeit, Modi, Tastenstatus …
const int MODE_IDLE = 0;
const int MODE_SETUP = 1;
const int MODE_RUNNING = 2;
const int MODE_RINGING = 3;
int currentMode = MODE_IDLE;

void setup() {
  lcd.begin(16, 2);
  pinMode(resetButtonPin, INPUT);
  pinMode(startStopButtonPin, INPUT);
  pinMode(upButtonPin, INPUT);
  pinMode(downButtonPin, INPUT);
  pinMode(buzzerPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  // 1. Tasten einlesen & entprellen (für alle 4 Tasten)
  // 2. Modus-Verwaltung (switch über currentMode)
  // 3. Zeitmanagement (Countdown, Ringing)
  // 4. LCD aktualisieren
  delay(10);
}

void Reset() {
  currentMode = MODE_IDLE;
  // Werte zurücksetzen …
}

Der vollständige Sketch ist im Originalartikel verfügbar. Er demonstriert saubere Zustandsmaschinen-Programmierung und den Umgang mit Zeitbibliotheken.

Schaltplan

Die Verdrahtung zeigt Tasten mit Pull-down-Widerständen, LCD im 4-Bit-Modus, Summer an Pin 10. Ein Fritzing-Schema ist im Projekt enthalten.

Herstellungsprozess

  1. Smart Thirst Alert: DIY Pflanzen-Alarm für optimale Bewässerung
  2. 20-kHz-Arduino-Oszilloskop mit Nokia 5110 LCD – Einfacher DIY-Bau
  3. Intelligente Jalousien: Automatische Lichtsteuerung mit Arduino & Solarenergie
  4. Italienische Word Clock mit Arduino Nano, NeoPixel, LCD & RTC
  5. Zuverlässigen Arduino-Countdown-Timer mit SparkFun 7-Segment-Display bauen
  6. Zuverlässiger Sigfox-kWh-Zähler mit Arduino MKR Fox 1200
  7. Bluetooth-Temperaturmonitor mit Arduino Nano
  8. Berührungsloses Gesten-Schloss: Sicherer Zugang mit APDS-9960 & Arduino
  9. Isolierter Analogeingang für Arduino: Spannung/Strom galvanisch trennen
  10. Präziser Reaktionszeit-Test mit Arduino UNO