Das Arbeiten mit 230 V kann tödlich sein! Die Anleitungen auf der Webseite soll euch einen Eindruck geben, wie Ihr selbst einen PID Regler in eine Rancilio Silvia oder ähnliche Espressomaschinen einbauen könnt. Bei Arbeiten mit 230 V immer den Netzstecker ziehen. Ihr handelt dabei auf eigene Gefahr.

Für einen ersten Test mit eurem Controller müssen noch folgende Schritte nun erledigt werden:

  1. Blynk App auf eurem Handy installieren und einrichten.
  2. Code mit eueren Zugangsdaten für Wlan und den Auth Token eurer Blynk App auf euren Controller laden
  3. Temperatursensor anschließen.
  4. Prüfen, ob die Temperatur korrekt in einem Handy angezeigt wird.

1. Blynk einrichten

Blynk stellt die Steuerungen von Handy und Espressomaschine her.
Blynk ist ein „Cloud“-Dienst – mit dem der NodeMCU (sozusagen eine Maschine) mit dem Handy oder Tablet steuerbar ist.

Vom Prinzip funktioniert es wie folgt:

Die Maschine sendet Daten an einen Blynk-Server (kann lokal im Netzwerk laufen oder Ihr könnt einen Hostet-Service nutzen).
Bsw: blynk.remoteapp.de (Ein Server von mir).
Die Handyapp greift ebenfalls auf den Server zu – und holt sich die benötigten Daten ab um sie Grafisch darzustellen.
Das ganze funktioniert bidirektional – Also auch Handy-Server-Maschine
— Maschine-Server-Handy.

Die Blynk App bekommt ihr hier in den drei folgenden Schritten:

Schritt 1: App herunterladen

https://www.blynk.cc/ gibt es für alle gängigen Betriebssysteme

Schritt 2: Account anlegen


Öffnet hierzu die Blynk-App & Klickt auf „Create New Account“

Klickt jetzt zuerst auf das Ampel-Symbol um den Server zu wechseln!
Sonst nutzt Ihr den „normalen Blynk“-Server.

WICHTIG:

Legt den Schalter auf „Custom“ um.
Als Server tragt Ihr: blynk.remoteapp.de
Port: 9443
Bestätigt die Eingabe mit „OK“

Ergänzt jetzt eure E-Mail-Adresse:
Und klickt im Fenster auf „Next“

Der Account ist nun angelegt.
Erstellt euer erstes Projekt mit dem Klick auf „New Project“

Hier könnt ihr auch direkt auf das Scan-Symbol oben rechts klicken und folgenden Code einscannen:

oder die App selbst erstellen.

Gebt dem Projekt einen Sinnvollen Namen.
Als Device wählt bitte NodeMCU

AuthKey auslesen (wird im Arduino benötigt).
Klickt hierzu auf das Viereck oben Rechts.

Klick jetzt auf das „Muttern“-Symbol 

Im unteren Bereich – steht der Auth-Code.
Dieser kann auch via E-Mail angefragt werden.
Der Auth-Code ist sozusagen der Schlüssel, zwischen NodeMCU und deinem Handy/Server.
Dieser Code sollte „Geheim“ bleiben.

Schritt 3: Auth Token hinterlegen

Authkey wird im 2. Schritt in der userConfig.h hinterlegt. Bei Auth kommt der Code aus Blynk hinein. Bei SSID und PASS euer Wlan Name und Passwort. Dazu gleich mehr.

Schritt 4: Aufbau der App

Klickt oben Rechts wieder auf das Viereck um in den Bearbeitungsmodus zu gelangen. Ihr müsst leider alle virtuelle PINS manuell in der App hinterlegen.

V2 = Input (aktuelle Temp)
V3 = Soll-Temp
V4 = P-Wert (Übergabe von Blynk an NodeMCU)
V5 = I-Wert (Übergabe von Blynk an NodeMCU)
V6 = D-Wert (Übergabe von Blynk an NodeMCU)
V7 = Einstellbare Soll-Temp
V8 = Preinfussion Brewtime
V9 = Preinfussion Start
V10 = Preinfussion Pause
V11 = P-Wert für den Startvorgang
V12 = Zielwert für den Startvorgang in °C
V13 = On/Off Schaltet die PID aus (Heizung auch)
V14 = Start I für Startvorgang


V20 = PID P Wert von interne PID an Blynk
V21 = PID I Wert von interne PID an Blynk
V22 = PID D Wert von interne PID an Blynk
V23 = Output Wert der internen PID

V30 = Brüherkennung: P Wert
V31 = Brüherkennung: I Wert
V32 = Brüherkennung: D Wert
V33 = Zeit in der die Brüherkennungs PID Werte aktiv sind
V34 = Wert bei dem die Brüherkennung aktiviert wird
V35 = Brüherkennungs Durchschnittswert
V36 = Brüherkennungs minimalWert

Die App ist in Widgets aufgebaut – die Widgets können via Drag-and-Drop einfach von rechts aus der Widget-Box in die App gezogen werden.

Einem Widget kann jetzt der INPUT Pin mitgeteilt werden (Siehe Liste oben)

2. Code auf den Controller laden

Im aktuellen Release befinden sich zwei Datein:

  • rancilio-pid.ino
  • userConfig.h

Die rancilio-pid.ino ist das eigentliche Programmcode und die userConfig.h eine ausgelagerte Konfigurationsdatei. Diese einhaltet folgende Punkte.

Vorab Konfig:

Die wichtigsten Funktionen müssen hier parametriert werden. Denkt daran, den richtigen PID Mode, Temperatursensor und das ggf. passende Display auszuwählen.

define DISPLAY 2            // 1=U8x8libm, 0=Deaktiviert, 2=Externes 128x64 Display  
define OFFLINEMODUS 0       // 0=Blynk und WLAN wird benötigt 1=OfflineModus (ACHTUNG EINSTELLUNGEN NUR DIREKT IM CODE MÖGLICH)  
define ONLYPID 0            // 1=Nur PID ohne Preinfussion, 0=PID + Preinfussion  
define TEMPSENSOR 2          // 1=DS19B20; 2=TSIC306  
define BREWDETECTION 1       // 0 = off ,1 = Software, 2 = Hardware 
define FALLBACK 1           // 1: fallback auf eeprom Werte, wenn blynk nicht geht 0: deaktiviert
  define TRIGGERTYPE HIGH     // LOW = low trigger, HIGH = high trigger relay 
 define OTA true             // true=activate update via OTA 
 define PONE 1               // 1 = P_ON_E (normal), 0 = P_ON_M (spezieller PID Modus, ACHTUNG andere Formel zur Berechnung)

Wifi

Unter Wifi müsst ihr euren Auth Token aus Blynk eintragen und eure Wlan SSID und das zugehörige Passwort.

#define AUTH "blynkauthcode"
#define D_SSID "wlanname"
#define PASS "wlanpass"

OTA

Hier wird der Update Over The Air eingestellt.

PID

Hier definiert ihr eure initialen PID Werte

3. Temperatursensor anschließen

Wie ihr zu der Beschreibung zum Board sehen könnt, muss an Pin 2 der Temperatursensor angeschlossen werden. Die oberen Ports (14, 2, 12, 13, 15) sind einheitlich jeweils von links nach rechts mit Minus(-), Signal, 5V(+) belegt.

  • Pin 12: Relay für das Ventil
  • Pin 13: Relay für die Pumpe
  • Pin: 15: frei
  • Pin 14: Relay für die Heizung
  • Pin 2: Temperatursensor
  • A0: Schalter Brühtaste
  • Pin 4: SDA
  • Pin 5: SCL
  • Pin 16: frei

4. Code hochladen und testen

Wenn ihr die .ino Datei öffnet, öffnet sich automatisch im zweiten Tab die userConfig.h mit den wichtigen Einstellungen. Danach auf den Pfeil klicken Achtet drauf, dass Ihr schon einen Auth-Code der Blynk-App und die WLAN-Zugangsdaten im Code der userConfig.h hinterlegt habt.

Bitte achtet vorher drauf, dass Ihr in den Board Einstellungen den richtigen COM Port ausgewählt habt.

Diesen könnt ihr auch auch im Gerätemanager prüfen (falls ihr ihn nicht wisst)

Den erfolgreichen Test könnt ihr einmal am Handy die Raumtemperatur sehen, wenn ihr korrekt den Temperatursensor angeschlossen habt, und auf dem Serial Monitor erkennen, wie sich der NodeMCU mit Blynk verbindet.