ZaboBier - Brausysteme
Zerzabelshof | Nürnberg | Deutschland

Software

die BKS-Oberfläche & der Regulator


Komponenten

Die Komponenten des BKS 3000

  • BKS Regulator & BKS WebApplikation
  • Tomcat 8 (Servlet Container und Web Server)
  • MySql Datenbank
  • Java Runtime Enviroment JRE
  • digitemp.com Software Package
  • pilight.org Software Package

Konfiguration

Konfiguration der Peripherie

Hier können die Temperaturfühler mit Ihren eindeutigen IDs angegeben werden.
In einer späteren Ausbaustufe ist es geplant, dies automatisch durchzuführen

  • Eingabe der Seriennummern / Temperaturfühler und Zuweisung des Aufgabenbereichs (Topftemperatur oder Aussentemperatur).
    Die AKTIVEN Temperaturfühlerwerden für die Ermittlung der Durchschnittstemperatur im Topf (z.B. beim Maischen) herangezogen! Bei mehreren aktiven Fühlern wird für die Berechnung immer der Durchschnittswert verwendet.

    HINWEIS:
    Wird eine Temperaturdifferenz von > 5°C zwischen zwei Messwerten ermittelt, wird der zweite Messwert nicht herangezogen. Der Grund hierfür ist, das es schoneinmal das Problem gab, dass während des Brauens ein Temperaturfühler kaputt ging und falsche Werte lieferte. Meine Lösung ist sicher nicht optimal, da der erste ermittelte Wert als korrekt angenommen wird, was natürlich nicht der Fall sein muss. Es kann somit sein, dass das Ergebnis korrekt ist oder aber auch viel schlechter.
    In einer der nächsten Versionen werde ich in diesem Fall einen Meldung ausgeben.
  • Verwaltung der Funksteckdosen. Kodierung, Protokoll und Unit-ID. Zuweisung des Aufgabenbereichs.
    POTT = Topf
    AGITATOR = Rührwerk

Bedienung

System Monitor

Vor jedem Brauvorgang sollte die Ansteuerung der Funksteckdosen und das Auslesen der Temperaturfühler VORHER getestet werden!

Bereich: Peripherie - Temperaturfühler

  • Temperaturfühler auslesen
    ca. 20 Sekunden warten, dann erfolgt eine Ausgabe:
    • OK
      Temperaturwerte werden folgendermassen ausgegeben:
      Temperaturfühler erfolgreich ausgelesen
    • FEHLER:
      Temperaturfühler erfolgreich ausgelesen

      Die Temperaturfühler können nicht ausgelesen werden. Ggf. müssen die Berechtigungen auf die USB-Schnittstelle neu vergeben werden. Dies ist dann der Fall, wenn man z.B. die Temperaturfühler beim Start des Raspberry nicht angeschlossen hatte oder sie im laufenden Betrieb des Raspberry abgezogen hat. Falls ein 'ReStart USB Berechtigungen' (ca.20 Sekunden warten!) kein Erfolg brachte, liegt ein tiefergreifendes Problem vor und die generelle Funktionsweise der Temperaturfühler muss überprüft werden.
  • ReStart USB-Berechtigungen: Für den Fall, wenn die Temperaturfühler beim Systemstart nicht angesteckt waren, oder kurzfristig abgesteckt wurden.

Bereich: Peripherie - Funksteckdosen

  • Test der Funksteckdosen für den Topf
  • Test der Funksteckdosen für das Rührwerk
  • Neustart der notwendigen Prozesse / Listener

Die jeweiligen Wartezeiten werden durch ein WarteBildchen symbolisiert (AUSNAHME z.Zt. noch 'Temperaturfühler auslesen', HIER 20 Sek. warten!).


Bereich: Peripherie - Regulator

  • Es werden die vom autark laufenden Regulator-Job protokollierten Ausgaben angezeigt. Z.Zt. die jeweils letzte Aktion.

Bereich: System - Raspberry PI

  • Heruterfahren des Raspberry PI

Bereich: System - aktive Brauvorgänge

  • Anzeige der aktiven, nicht abgeschlossenen Brauvorgänge

Verwaltungsdialoge

Dialog: 'Hopfen'


Dialog: 'Hefe'


Dialog: 'Malze'


Dialog: 'Rezepte & Rasten'
Hier lassen sich alle notwendigen Rasten einstellen. Darüberhinaus kann man die verwendete Hefe, sowie die Malze und Hopfenzugaben zuordnen.
zu Rezepten:

  • Kochzeit in Minuten
  • Nachgusstemp.
    Wenn über System Peripherie die Nachgusssteuerung (via Temperaturfühler) konfiguriert wurde, kann hier die gewünschte Temperatur angegeben werden, auf die der zweite Regelkreis den Nachguss erwärmen soll.
  • inverse Temp.überwachung (kühlen) [ ab Version 2.1.0 ]
    Wenn diese AuswahlBox aktiviert ist, erfolgt beim Starten des Rezeptes eine inverse Temperaturüberwachung. D.h. es wird erst beim Überschreiten der vorgegeben Rasttemperatur der Ausgang für den Topf bzw. hier das Kühlsystem geschaltet! Ist diese AuswahlBox nicht angehakt, erfolgt normale Rastüberwachung, d.h. der Ausgang Topf ist solange aktiv, bis die gewünschte Rasttemperatur erreicht ist. Dann schaltet der Topf ab.

zu Rasten:
  • Nachlauftemperatur in °C
    Topf schaltet ab und wartet x Sekunden (Nachlaufzeit) ob die Temperatur noch bis zur Rasttemperatur ansteigt. Dies ist bei einem Einkochtopf nötig, da ja die Heizspirale ja nicht sofort kalt wird sondern die Temperatur weiter steigt. Bei einer Induktionsplatte oder mit einem Gasbrenner sollte dies nicht der Fall sein. Hier kann man evtl. auch die Rasttempertur eintragen.
  • Nachlaufzeit in Sekunden
    Das ist die Zeit die nach dem Erreichen der Nachlauftemp. gewartet wird. Danach wird normal geregelt (alle 20Sek.)
  • Nachheizzeit pro °C in Sekunden
    Die Zeit, die benötigt wird um die Temperatur des Suds wieder um 1°C zu erhitzen. Alle Einstellungen sind pro Rast einzustellen, da sich der Sud in den verschiedenen Temperaturbereichen (Rasten) unterschiedlich verhält (z.B. braucht mein Topf bei 70° länger um 1°C nachzuheizen!).
  • Rasttemperatur in °C
  • Rastzeit in Minuten
  • automatisch: der Regulator heizt nach Ablauf der Rastzeit automatisch auf die nächste Rasttemperatur auf. BEACHTE: Falls Jodproben durchgeführt werden, sollte man evtl. lieber manuell wählen, dann kann man das Weiterschalten selber durchführen.
  • manuell: es erscheint nach Ablauf des Rastvorgangs ein Button 'nächste Rast'. Erst wenn dieser Button angeklickt wird, wird auf die nächste Rasttemperatur aufgeheizt.

zu Hopfen:

  • Reihenfolge
  • Menge
  • Zugabezeit in Minuten
  • Hopfen


Dialog: 'Hardware'
Konfiguration der Temperaturfühler und Funktsteckdosen.

  • Typ:
    POTT : Ansteuerung des Topfes,
    AGITATOR : Ansteuerung des Rührwerks,
    TEMPERATUR : Temperaturfühler
    TEMP_NAGU : Temperaturfühler f. Nachgussüberwachung
  • Seriennummer / Kodierung
    Seriennummer der Temperaturfühler bzw. Kodierung der Funksteckdosen
  • Protokoll
    Prokoll der Funksteckdosen
  • Unit-ID
    ID der Funktsteckdosen
  • Bezeichung
  • aktiv (nur bei den Temperaturfühlern relevant)
    aktive Temperaturfühler werden zur Ermittlung der Durchschnittstemperatur für den Regelungsprozess herangezogen. Mit inaktiven Temperaturfühlern könnte man andere Temperaturen, wie z.B. Umgebungstemperatur oder die Temperatur des Nachgusses, aufzeichnen und verfolgen.

Dialog: 'Brauhelfer'
Es können Rezepte und deren Rasten aus dem Programm 'kleiner Brauhelfer' importiert werden.
Bilder und eine weitere Beschreibung folgt...

Brauen (Maischen / Nachguss / Kochen)

1. Auswahl des zu überwachenden Rezeptes

2. Button 'Start'
Es wird nun ein aktiver Brauvorgang angelegt. Der Regulator registriert diesen und steuert den Brauvorgang. Der Regulator trägt alle durchgeführten Schritte in die Tabelle 'protokoll' und alle ermittelten Temperaturwerden in die Tabelle 'digitemp' ein. Die Web-Applikation (Browseranwendung) liest diese Protokoll- und Temperatureinträge alle 20 Sekunden aus und zeigt diese auf der Webseite an.

3. Stop
Nachdem der Brauprozess beendet ist, bitte den aktiven Brauvorgang mit dem 'Stop' Button beenden.

Nachguss parallel starten und regeln.
Die nachfolgend aufgeführten Buttons werden nur eingeblendet, wenn ein Temperaturfühler vom Typ 'TEMP_NAGU' und eine Funksteckdose vom Typ 'SPARGING' konfiguriert sind!
Button 'Start Regelkreis 2'
Button 'Stop Regelkreis 2'

Bereich - Temperatur:
Ausgabe der durch den Regulator ermittelten Temperaturen. Die aktuellste Temperatur steht an oberster Stelle. Für die zur Steuerung ermittelte Durchschnittstemperatur werden nur die AKTIV gekennzeichneten Temperaturfühler (siehe Verwaltung) herangezogen.

Bereich - Protokoll:
Alle Massnahmen, die entweder automatisiert durch den Regulator stattfinden oder z.B. das manuelle ausschalten des Topfes über den Button Topf, werden protokolliert und in diesem Bereich ausgegeben. Automatisierte Massnahmen sind z.B. INITIALES NACHHEIZEN, BEGINN der RAST, NACHHEIZEN, ENDE der RAST etc..

Bereich - Brauprozess:
Alle konfigurierten Rasten mit Ihren Einstellgrößen.

Bereich: Regulator
*** Dieser Bereich ist anklickbar ***
Hier kann der blaue Bereich angeklickt werden. Als Ausgabe erscheint der letzte LOG-Eintrag des Regulators.

'Grauer'-Block:
aktuelle Rast, ggf. bei manuellen Rasten (siehe Verwaltung) wird nach Ablauf der Rastzeit ein Button 'manuelles weiterschalten' eingeblendet.

'Topf'-Block:
Wird ROT (Topf aus) oder GRÜN (Topf an) dargestellt.
*** Dieser Bereich ist anklickbar, dadurch wechselt man den aktuellen Zustand! ***

'Rührwerk'-Block:
Wird ROT (Rührwerk aus) oder GRÜN (Rührwerk an) dargestellt.
*** Dieser Bereich ist anklickbar, dadurch kann das Rührwerk AN bzw. AUS geschaltet werden! ***

Kühlenvorgang überwachen

Die Kühlüberwachung funktioniert analog der Brauüberwachung, jedoch mit dem Unterschied, dass erst beim Erreichen einer bestimmten Temperatur die Schaltkreise (Funksteckdose oder SSR) geöffnet werden.

1. Auswahl des zu überwachenden Kühlungsrezeptes.
Dieses muss als inverse Temperaturregelung gekennzeichnet werden !!!

2. Button 'Start'
Es wird nun ein aktiver Kühlprozess angelegt. Der Regulator registriert diesen und steuert ihn.


3. Stop
Der Kühlprozess kann mit dem 'Stop' Button beenden werden.

Überwachung der Kochzeit und der Hopfenzugabe

Zuerst habe ich die Kochzeitüberwachung und Hopfenzugabe getrennt von dem Maischen gesehen. Ich finde aber die Idee einiger BKS Nutzer die Kochzeit einfach als Rast zu konfigurieren genial und werde nicht weiter an einem expliziten Dialog für die Kochzeitüberwachung und Hopfenzugabe arbeiten.

Auswertung

Auswertung

Dialog: 'Brauvorgange und Protokolle'

  • Anzeige der jeweiligen Protokolle eines Brauvorgangs
  • Löschen der Temperaturaufzeichnungen eines Brauvorgangs
  • Löschen eines durchgeführten Brauvorgangs mit allen entsprechenden Werten aus der Datenbank
  • geplant sind: Chart des kompletten Temperaturverlauf eines Brauvorgangs
  • geplant sind: CSV Export der Protokolle, Temperaturwerte eines Brauvorgangs

BILD (links): manueller Excelexport aus Dialog Protokoll - ist aber noch automatisiert geplant !!!

WLAN

Falls es Probleme beim Einrichten der WLAN Konfigurtation des Raspberry gibt, finden sich diverse Hilfeseiten im Internet.
Ein gute Anleitung hierzu findet Ihr z.B. bei datenreise.de: Raspberry PI 3 - WLAN verbinden & Geschwindigkeitstest

Installation / Update

Installation / Update

Bereitstellen der Web-Applikation:

  • Variante 1: die WAR Datei auf den Raspberry kopieren.
    Ich speichere die Versionen in folgendem Verzeichnis:
    /home/pi/bks
    BEACHTE: die vorherige WAR-Datei umbenennen/sichern z.B. in bks_1.1.war
    dann die neue Datei bks.war in das Verzeichnis kopieren (Dateiname muss bks.war bleiben!)

    Variante 2: von einem anderen Rechner aus, auf dem das neue WAR-File liegt.
  • Tomcat Management Studio öffnen
    http://IP-AdresseRaspberryPI:TomcatPort/
    z.B. http://192.168.178.34:8090/
  • Button 'Manager App' betätigen und mit Tomcat Administrator Name und Passwort anmelden.
  • vorherige Version der Application /bks deinstallieren (Button: Undeploy)).
    Bereich: Applications/Path
    Zeile: /bks -> Button 'Undeploy'
  • Installation der neuen Web Anwendung
    Im Bereicht 'WAR file to deploy' -> 'Datei wählen' Button auslösen und die neue bks.war auswählen -> 'Deploy' Button betätigen.
    ...kurz warten und ausprobieren.
    Wenn es Probleme gibt einfach die vorherige Version wieder installieren.

Update/Installation des Reglers (natives JAVA-Programm):

Beschreibung folgt noch...


??? Interesse ???


Wer Interesse an der Steuerung hat, kann sich gerne per Mail an info @ zabobier.de wenden.
Ich habe bzgl. der Brausoftware keine kommerziellen Interessen. Wer meine Arbeit gut findet, darf natürlich gerne die Weiterentwicklung des BKS 3000 mit einer kleinen Spende unterstützen.
Es gibt zur Zeit zwei Möglichkeiten die Brausteuerung BKS 3000 zu erhalten:

  • 1. Das Rundum-sorglos-Paket via Postzustellung (SnailMail):
    Auf Wunsch kann ich - zum Selbstkostenpreis - eine komplett fertig installierte 32GB SD-Karte per Post zuschicken. Die Karte wäre dann von mir getestet und kann ggf. vorkonfiguriert werden (z.B. Nutzung von Solid-State-Relais).
    Dies wäre - nur der Vollständigkeit halber - kein gewährleistungspflichtiger Verkauf, sondern nur ein freiwilliges Weitergeben meiner Software unter Brauern.
  • 2. via Download:
    Ich schicke euch einen Download-Link mit dem man sich ein ZIP gepacktes Image der SD-Karte herunterladen kann.
    Die ZIP gepackte ImageDatei hat eine Größe von ca. 2GB. Das Image musst Du dann entpacken und mit einem geeigneten Klone Programm auf eine 32-GB SD-Karte kopieren.

Auf der SD-Karte sind Treiber, Datenbank, WebServer, Hilfsmittel und die komplette Steuerung inkl. einiger Rezepte mit den dafür verwendeten Einstellung für einen elektrischen Einkochtopf der 20l Klasse installiert.
Wer mit der Software zufrieden ist und/oder meine Entwicklungsarbeit unterstützen möchte kann auch gern über den nachfolgend aufgeführten Button etwas spenden.

BEACHTE

Der Brauprozess sollte trotz dieser Automatisierungsmöglichkeit niemals unbeaufsichtigt ablaufen.
Eine Garantie oder Haftung wird hierfür nicht übernommen!
Alles geschieht auf eigene Gefahr!


Meine Software ist generell kostenlos zu haben.
Wenn Du meine Entwicklungsarbeit mit einer kleinen Spende unterstützen möchtest kannst Du das mit dem nachfolgenden Button machen.