Arduino-gestuurde slimme koffiezetapparaat met Bluetooth-bediening en temperatuurmonitoring
Onderdelen en benodigdheden
| Onderdeel | Aantal |
|---|---|
| Arduino Nano R3 | 1 |
| HC-05 Bluetooth-module | 1 |
| DS18B20 temperatuursensor (1m) | 1 |
Apps en online diensten
- Serial Bluetooth Terminal (door Kai Morich)
- Arduino IDE
Over dit project
Inleiding
Een slimme, automatische koffiezetapparaat met grafische weergave, bedienbaar via Bluetooth. Het systeem start automatisch wanneer er vers water wordt toegevoegd. Alle onderdelen zijn handgemaakt en alle functies zijn eigen ontwerp.
De controller is uitgebreid met een "Testmodus", waardoor hij ook als multipurpose temperatuurmeter met externe sensor dient.
Ontwikkeld op Arduino Nano/Uno, gebruikt ST7920-display, HC-05 Bluetooth, Dallas DS18B20 temperatuursensor, relais voor de verwarmingsspiraal, knop met LED's, buzzer en een CD4017BE decadeceller voor de LED-balk.
Hoe te starten
- Automatisch: In standbymodus meet het systeem cyclisch de temperatuur. Een temperatuurdaling door het toevoegen van vers water start het branderproces. Deze functie kan in/uitgeschakeld worden door "auto" te sturen via smartphone; de instelling blijft bewaard in EEPROM.
- Druk op de knop: start/onderbreek koffiezetten of verlaat Testmodus.
- Stuur "start" of "stop": via smartphone.
Video
Toont alle werkwijzes.
Fotogalerij
Bouwproces en uiterlijk – klik op de afbeeldingen.
Eenmalige analyse tijdens koffiezetten
Na 60 seconden vergelijkt de MCU de opgeslagen begin- en huidige temperatuur om conclusies te trekken:
- "Je bent het water vergeten." (temperatuur te hoog)
- "Koffie voor twee." (minder water – snellere temperatuurstijging)
- "Koffie voor zes." (meer water – langzamere stijging)
- "Verwarmingsspiraal fout!" (geen significante stijging)
Bovendien werkt sensorfoutdetectie continu zolang de apparatuur aanstaat.
Meetwaarde-eenheid wijzigen
Stuur "c" of "f" via smartphone om tussen Celsius en Fahrenheit te schakelen, zelfs tijdens het zetten. De grafiek wordt niet beïnvloed; opgeslagen waarden worden omgerekend. Instelling blijft bewaard in EEPROM.
Dynamische scherm-elementen
Als het scherm vol is, scrollt de grafiek naar links. Elementen verschuiven dynamisch om overlapping te voorkomen. Zie de geanimeerde afbeeldingen in de oorspronkelijke beschrijving.
Testmodus
Door een externe temperatuursensor aan te sluiten, werkt het systeem als universele temperatuurmeter met grafiek. Meetbereik: -20°C tot +128°C (-4°F tot +262°F). Stuur een getal (1–999999) als meetinterval in seconden; grafiekbreedte: 128 seconden tot 11,57 dagen.
Bluetooth-communicatie
Accepteert commando's, stuurt rapporten, detecteert verbinding/ontkoppeling van smartphone.
LED-bediening
Een CD4017BE decadeceller stuurt de LED-balk. De Arduino stuurt een klokpuls bij elke meting; bij nieuwe procedure of Testmodus wordt een reset gestuurd. De knop heeft een tweekleurige LED (2 pinnen):
- Constant groen: standby of koffie klaar, spiraal uit
- Constant rood: koffiezetten bezig, spiraal aan
- Rood/groen afwisselend: Testmodus
- Knipperend rood: fout (sensor, spiraal, of water vergeten)
Code
Bestand: Smart Coffee Maker - Ősi Gyula.ino (volledige code in oorspronkelijke beschrijving). Belangrijkste functies:
- Temperatuurgrafiek op display
- Automatische start bij waterdetectie
- Analyse na 60 seconden
- Celsius/Fahrenheit schakelbaar
- Testmodus met externe sensor
- Bluetooth-commando's en statusrapporten
- LED-balk via CD4017BE
- EEPROM-opslag voor instellingen
De code gebruikt bibliotheken: U8glib, OneWire, DallasTemperature, elapsedMillis, SoftwareSerial, EEPROM.
Schema
Schakelschema beschikbaar als afbeelding in oorspronkelijke beschrijving.
Productieproces
- Geïntegreerde QR, RFID en Temperatuurverificatie Toegangscontrolesysteem
- Arduino temperatuur- en vochtigheidslogger met DHT11 en Ethernet Shield
- Een LED bedienen via Bluetooth met Arduino – Eenvoudige DIY Handleiding
- Slimme Zelfzittende Schoenen met Ingebouwde Energie-opwekking
- BME280 Temperatuur, Vochtigheid & Druk Weergeven op Nextion Touchscreen
- Arduino & MPU6050: Precieze Servomotor Besturing met SG90 & MG996R
- Spraakgestuurde huishoudapparaten: Bluetooth-besturing met Google Assistant
- u-blox LEA‑6H GPS Module: Arduino & Python Integratie Handleiding
- Temperatuur en Vochtigheid met DHT11 op Blynk - Stap-voor-Stap Arduino Tutorial
- Bouw een Slimme Arduino-gestuurde Robotarm: Eenvoudige DIY Handleiding
- Spraakherkenning & Synthese Meesteren op Arduino Due