Step 7 Temperatur-Regelung - die 100ste - aber es geht um BIER!

Luke1986

Level-2
Beiträge
86
Reaktionspunkte
5
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

Ich grübel schon seit einiger Zeit an einem Problem, wo ich keine richtige Lösung finde oder ich einfach etwas übersehe.

Worum geht es? - BIER.

Kein Witz, sondern tatsächlich.
Es ist eine kleine Brauerei, in der pro Sud 5hl, sprich 500l Würze (vorstufe zur vergärung) entstehen.

Aufbau des Systems:

Im Prinzip wird wie in einem Milchkochtopf indirekt geheizt.
In den Maische-Behälter (maximale füllmenge ca 600l (500l Würze + Steigraum) werden ca. 300l Wasser gelegt, dazu kommt dann das Malz. Um diesen Behälter ist ein Aussentank (ca 150l Inhalt), welcher den Boden + die Seitenwände zu ca 25% bedeckt.
Dieser Aussentank wird elektrisch beheizt. 4 Heizungen, 3 + 6 + 6 + 9 kW.

Prozedere: Um aus dem Malz den Zucker/die Stärke zu vergären zu lösen werden verschiedene Temperaturen angefahren.
-> heizen auf 62°C
-> warten + temp halten
-> heizen auf 72°C
-> warten + temp halten
-> heizen auf 76°C

(danach wird umgepumpt, abgeläutert (quasi gesiebt), überschwänzen (wasser über das malz kippen, damit restzucker in die würze kommt), würze zum kochen gebracht, hopfen rein, weiter kochen, kühlen, gären, warten, Bier fertig -> saufen - so im prinzip)

Mein Problem: Trägheit der Maische (300l Wasser + Malz (ca. 100kg)) + Energieeintrag trotz Abschaltung der Heizung.

Lösungsansätze:
a) Regelung aussen vor und in einen weiteren behälter haben und dort entsprechend kochen und flüssigkeit entsprechend hin und her pumpen
b) vorhandenes behalten und regeln - und hier liegt die krux - ich habe keinen ansatz, wo ich angreifen könnte.

hat jemand von euch eine idee zur regelung eines solchen systems?

gruß Lukas
 
Was genau dein Problem ist hast du uns noch nicht verraten. Wird es zu warm? Eventuell wird auch die Gärung "dazuheizen".

Gib uns mehr Infos, ansonsten können wir nur beim letzten Punkt "..,Bier fertig -> saufen.." helfen.

prost
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das Problem liegt an folgender Stelle:

Das Heizbad/Heizmantel gibt trotz Abschaltung der Heizung Energie in das System, eben so lange, bis die Temperaturen nahezu gleich sind.

Es müsste also eine Regelung her, die das Wasserbad aufheizt (wir brauchen ja zum heizen ein Temperaturgefälle), aber rechtzeitig abschaltet, damit die Maische nicht zu heiß wird.

die mechanische Lösung gefällt mir am besten, ist aber entsprechend teuer (Edelstahlrohr, Edelstahltank, Pumpe, Schütz, Motorschutz) - weil ich so durch wegpumpem die Energiezufuhr quasi auf 0 fahre und somit ein nachheizen der Maische fast nicht mehr existiert.

in größeren anlagen wird das spiel anders gespielt - nämlich idR. mit Dampf und entsprechenden Ventilen, wo man den Energieeintrag einfacher steuern kann.

Zum Thema Wasserbad und einen "warum" -> das Gerstenmalz ist relativ schwer und liegt am boden, trotz Rührwerk. Würden die Heizungen direkt in der Maische sitzen, würde diese entsprechend festbacken, was letztliche zu einem mehraufwand bei der reinigung führt - denn schmock im bier oder anderes fieses und ekelhaftes zeugs will kein mensch haben.

gruß Lukas
 
Wie funktioniert denn die Regelung bisher? Das hört sich für mich nach einer simplen Zweipunktregelung an. Man müsste eine PID-Regelung mit PWM-Ausgang realisieren. In welcher Region entsteht denn der Hopfenblütentee? Wie hoch sind die Fördermittel?
 
Momentan ist es tatsächlich eine 2 Punkt Regelung. Aber mit massivem überschwingen. Das würde ich gerne anfangen. Smith Prädiktor habe ich mal gehört, dass das was wäre. Aber so wirklich habe ich das nicht verstanden.

Der Tee wird an der Ostsee gebraut. Fördermittel? Frage deinen Landkreis. Ist regional abhängig. Wohl aber Teils enorm.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Dann ist ein massives Überschwingen bei deiner Anlage nur sehr schwer in den Griff zu bekommen. Mit einer stetigen Regelung wäre das kein Problem, behaupte ich einfach mal. Allerdings geht das, neben einer excellenten Software, nicht ohne einen gewissen Hardwareaufwand. Daher meine Frage nach den "Fördermitteln". Was könntest du denn investieren?
 
Im Augenblick soll es bei der vorhandenen Hardware bleiben (SPS, Schütze für vorhandene Heizung, Temperaturfühler in Maische und heizbad)
SSR + PWM hilft nur bedingt, glaube ich.
 
Wenn ich's mir so überlege, funktioniert eine PWM-Ansteuerung bei einer solch trägen Temperaturregelung auch mit Schützen. So etwas findet man ja in der Industrie auch sehr häufig. Was für eine SPS ist verbaut und wie wird die Anlage bedient (Panel, Visualisierung)? Steht das Programm auf Datenträger zur Verfügung?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
-> SPS kommt aus dem Hause VIPA -> 014er SLIO
-> software in FUP/AWL im Speed7-Studio (Ver. 1.7xxx)
-> Bedienung per Touchpanel, programmiert mit MoviCon

Das Programm, welches momentan da ist (2 Punkt + überschwinger) ist vorhanden.
Möchte es jetzt umschreiben (man lernt ja hinzu) und übersichtlicher gestalten (jetzt ist es eine flut an Merkern ohne beschriftung - my fault :-( )
deshalb auch die optimierung, welche ich in angriff nehmen möchte.

gruß Lukas
 
Momentan ist es tatsächlich eine 2 Punkt Regelung. Aber mit massivem überschwingen. Das würde ich gerne anfangen. Smith Kompensator habe ich mal gehört, dass das was wäre. Aber so wirklich habe ich das nicht verstanden.

Der Tee wird an der Ostsee gebraut. Fördermittel? Frage deinen Landkreis. Ist regional abhängig. Wohl aber Teils enorm.

Smith-Prädikator wär deine Lösung. Im Prinzip arbeit er so, dass die Totzeit damit ins System eingebracht und entsprechend "ausgeregelt" werden kann. Hab ich letztes Jahr auch für ne Temperaturregelung programmiert mit deutlicher Verbesserung für den Kunden. Allerdings hatte ich ein PID-Regler für Dampfzufuhr über ein Ventil. Ich hatte Totzeiten von 5-10s. Was ich im TIA noch nicht getestet habe sind die mitgelieferten Temperaturregelbausteine, vllt. haben die ja was ähnliches schon drin.
 
5-10sekunden wäre ja unheimlich gut.
meine totzeiten sind mehrere minuten.

der temperaturunterschied liegt, damit tatsächlich irgendwie was "passiert" bei etwa 20K. entsprechend viel energie ist dann im wasserbad drin gespeichert, welche abgegeben werden will.
nach aussen ist das ganze isoliert (selbst bei 120°C im heizbad kann man die aussenwand anfassen).

diese diskussion hatte ich schon während der mechanischen konstruktion, weil es irgendwie absehbar war, dass es mehr schlecht als recht funktioniert.
aber ich musste mich seinerzeit fügen - preis und, in erster linie, platz (dort wo die anlage steht ist platz äußerste mangelware) waren schlagende argumente, gegen die ich nichts ausrichten konnte.

gruß Lukas
 
Ah, du hast also alles, was du an technischen Mitteln benötigst. Dann solltest du zunächst erst mal zusehen, wie du einen PID-Regler generell auf dem Teil zum laufen bringst.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
irgendwann hab ich mal was aufgemalt, aber ob ich es noch habe? keine ahnung. wahrscheinlich nicht :-(

Öhm, ich meinte eher die tatsächlichen Verläufe aus der SPS aufgezeichnet als echte Daten. Ansonsten kannst du dich vllt. mal über Beoachter oder robuste Regelung informieren.
 
"gemalt" war auf basis von tatsächlichen messdaten in excel... ;-) entschuldige meine ausdrucksweise... es war nicht "mal eben" was "hingeschmiert"
 
-> Temperaturfühler in Wasserbar rein
-> Temperaturtühler in Maische
-> Spreiztemperatur bestimmen (TempWasserbad-TempMaische)

Spreiztemperatur mit Regledifferz (SollTemp-IstTemp der Maische) runterfahren.

D.h. Bei erreichen der Solltemperatur geht dann deine Spreiztemperatur gegen 0

Heizungen 3+6+6+9 = 24

D.h. du kannst schalten 3/6/9/12/15/18/21/24 = 8 Stufen => PWM brauchst du da nicht.

Wenn du Regler verwenden willst, dann PI-Regler evtl. mit Reglebreich! PID bringt nichts, da zu träge!

Für Sequentille Sufenschaltung vom Regler weg hab ich einen Baustein. Verwende den für Kühleräte mit Stufenschaltung. Geht aber genauso für Heizung.
Musst du dir evlt. etwas anpassen. Man kann die % des Reglers angeben, ab der jede Stufe geschaltet werden soll.

Code:
FUNCTION_BLOCK "cSeqStepper7x"
TITLE =Sequenzieller Stufenschalter für Kühlgeräte mit Binäransteuerung
//Für Kühlgeräte mit Stufenschaltung und binärer Ansteuerung.
//Diese Kühlgeräte werden wie ein sequentielles Getrieb immer 1 Stufe rauf/runter 
//geschaltet. Als Steuerwert benötigen sie 3 Bits, welche einen Wert von 0..7 
//codieren.
//
//AUTOR: S. Maag
//DATUM: 8/2013
//
//AENDERUNGSVERMERKE:
//--------------------------------------------------------------------------------
//DATUM        NAME        AENDERUNG
//--------------------------------------------------------------------------------
//
//--------------------------------------------------------------------------------
//
//HINWEISE:
AUTHOR : 'S.Maag'
VERSION : 0.1


VAR_INPUT
  rSoll : REAL ;    //Sollwert 0..100%
  rSTUFE0 : REAL  := 1.000000e+000;    //Stufe 0 bei % [1%] (AUS)
  rSTUFE1 : REAL  := 1.000000e+001;    //Stufe 1 bei % [10]
  rSTUFE2 : REAL  := 2.000000e+001;    //Stufe 2 bei % [20]
  rSTUFE3 : REAL  := 3.000000e+001;    //Stufe 3 bei % [30]
  rSTUFE4 : REAL  := 5.000000e+001;    //Stufe 4 bei % [50]
  rSTUFE5 : REAL  := 7.000000e+001;    //Stufe 5 bei % [70]
  rSTUFE6 : REAL  := 8.000000e+001;    //Stufe 6 bei % [80]
  rSTUFE7 : REAL  := 9.900000e+001;    //Stufe 7 bei % [99]
END_VAR
VAR_OUTPUT
  DSP_SNR : INT ;    //Anzeige Schrittnummer seq. Stufenschalter 0..7
  iSOLL_STUFE : INT ;    //Sollwert für Kuehlgerät 0..7 [INT]
  bSOLL_STUFE : BYTE ;    //Sollwert für Kuehlgerät 0..7 [BYTE]
  OUT_BIN_1 : BOOL ;    //Steuerausgang für Kühlgerät: Binär 1
  OUT_BIN_2 : BOOL ;    //Steuerausgang für Kühlgerät: Binär 2
  OUT_BIN_3 : BOOL ;    //Steuerausgang für Kühlgerät: Binär 3
END_VAR
VAR
  SNR : INT ;    
END_VAR
VAR_TEMP
  tmp_STUFE_Bit0 : BOOL ;    
  tmp_STUFE_Bit1 : BOOL ;    
  tmp_STUFE_Bit2 : BOOL ;    
  tmp_STUFE_Bit3 : BOOL ;    
  tmp_STUFE_Bit4 : BOOL ;    
  tmp_STUFE_Bit5 : BOOL ;    
  tmp_STUFE_Bit6 : BOOL ;    
  tmp_STUFE_Bit7 : BOOL ;    
END_VAR
BEGIN
NETWORK
TITLE =



NETWORK
TITLE =Sollwert mit Hysterese auf Stufen 0..7 umsetzen
//Stufen des Kühlgerätes mit 3Bits(Binär geschaltet)
//%-Werte Stufen sind in Instanz-DB in den Variablen SUFE0..7 fest eingetragen
//0   0%
//1   10%
//2   20%
//3   30%
//4   50%
//5   70%
//6   80%
//7  100%

      L     #SNR; // Schrittnummer
      SPL   CLR; // Sprungziel bei SNR>max
      SPA   S0; // 0-Schritt,
      SPA   S1; // Startschritt
      SPA   S2; 
      SPA   S3; 
      SPA   S4; 
      SPA   S5; 
      SPA   S6; 
      SPA   S7; 

CLR:  SET   ; // CLR
// hier die bei CLR zu löschenden Merker eintragen

// z.B. Aktionsmerker die über das Ende der Schrittkette nicht mehr benötigt werden

      L     1; // Schrittnummer 
      T     #SNR; // auf Startschritt stellen
      SPA   END; 


NETWORK
TITLE =Schrittweiterschaltung, bzw. Bausteinende

PREV: L     #SNR; // PREV : 1 Schritt zurück
      +     -1; 
      SPA   SET; 
NEXT: L     #SNR; // NEXT : Schrittnummer auf nächsten
      +     1; // Schritt
SET:  T     #SNR; // Ablauf auf Schritt mit Nr. in Akku 1 setzen

END:  L     #SNR; // Sprungmarke für Baustein ENDE
      T     #DSP_SNR; 

// Wert Stufe 0..7  auf Binäre Ausgänge umsetzen
      L     P##tmp_STUFE_Bit0; // Pointer auf Bits im temporären Bereich
      LAR1  ; 
      L     #iSOLL_STUFE; // Sollwert Stufe [INT]
      T     #bSOLL_STUFE; // Sollwert Stufe [BYTE]
      T     B [AR1,P#0.0]; // Soll Stufe in temporäre Bits

      U     #tmp_STUFE_Bit0; // Binär 1 := Bit0
      =     #OUT_BIN_1; 

      U     #tmp_STUFE_Bit1; // Binär 2 := Bit1
      =     #OUT_BIN_2; 

      U     #tmp_STUFE_Bit2; // Binär 3 := Bit3
      =     #OUT_BIN_3; 

      BEA   ; 

NETWORK
TITLE =Stufe 0: (AUS)

S0:   L     #rSoll; 
      L     #rSTUFE1; 
      >=R   ; 
      SPB   NEXT; 

      L     0; 
      T     #iSOLL_STUFE; 
      SPA   END; 

NETWORK
TITLE =Stufe 1:

S1:   L     #rSoll; 
      L     #rSTUFE0; 
      <R    ; 
      SPB   PREV; 

      L     #rSoll; 
      L     #rSTUFE2; 
      >=R   ; 
      SPB   NEXT; 

      L     1; 
      T     #iSOLL_STUFE; 
      SPA   END; 

NETWORK
TITLE =Stufe 2:

S2:   L     #rSoll; 
      L     #rSTUFE1; 
      <R    ; 
      SPB   PREV; 

      L     #rSoll; 
      L     #rSTUFE3; 
      >=R   ; 
      SPB   NEXT; 

      L     2; 
      T     #iSOLL_STUFE; 
      SPA   END; 

NETWORK
TITLE =Stufe 3: 

S3:   L     #rSoll; 
      L     #rSTUFE2; 
      <R    ; 
      SPB   PREV; 

      L     #rSoll; 
      L     #rSTUFE4; 
      >=R   ; 
      SPB   NEXT; 

      L     3; 
      T     #iSOLL_STUFE; 
      SPA   END; 

NETWORK
TITLE =Stufe 4:

S4:   L     #rSoll; 
      L     #rSTUFE3; 
      <R    ; 
      SPB   PREV; 

      L     #rSoll; 
      L     #rSTUFE5; 
      >=R   ; 
      SPB   NEXT; 

      L     4; 
      T     #iSOLL_STUFE; 
      SPA   END; 

NETWORK
TITLE =Stufe 5:

S5:   L     #rSoll; 
      L     #rSTUFE4; 
      <R    ; 
      SPB   PREV; 

      L     #rSoll; 
      L     #rSTUFE6; 
      >=R   ; 
      SPB   NEXT; 

      L     5; 
      T     #iSOLL_STUFE; 
      SPA   END; 

NETWORK
TITLE =Stufe 6:

S6:   L     #rSoll; 
      L     #rSTUFE5; 
      <R    ; 
      SPB   PREV; 

      L     #rSoll; 
      L     #rSTUFE7; 
      >=R   ; 
      SPB   NEXT; 

      L     6; 
      T     #iSOLL_STUFE; 
      SPA   END; 

NETWORK
TITLE =Stufe 7:

S7:   L     #rSoll; 
      L     #rSTUFE6; 
      <R    ; 
      SPB   PREV; 

      L     7; 
      T     #iSOLL_STUFE; 
      SPA   END; 

END_FUNCTION_BLOCK
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Oh!!! Jetzt glaub ich hab ich erst kapiert was du machst!

Du schaltest die Heizungen immer nach Temperatur der Maische Ein/Aus! Oder?

Das funktioniert natürlich dann nicht! Man muss unbedingt über die Tempeatur des Wasserbades die Heizung ausschalten.
Evtl. reicht es aus. die Wassertemperatur auf SollMaische + Offset zu begrenzen.
Dann dürfte das auch ohne PI-Regler einigermaßen stabil bleiben.

Wie genau muss den die Maischetemperaur gehalten werden?
 
jap, ich schalte abhängig der Maische-Temperatur. vielleicht liegt, wie du sagst, dort das problem


Die Maischtemperatur sollte schon möglichst genau auf den vorgegebenen werten bleiben (je nach Rezept eben), weil sonst der Zucker irgendwie nicht gelöst wird.
dies ist halt nur bedingt möglich.

ich könnte natürlich jetzt noch reinwerfen, dass sich der gemeine Brauer auch noch wünscht, dass die Temperatur zwischen den "Stufen" mit ca. 1°C/min steigen soll.

soll ich da 50kW heizleistung reinkloppen? hier wüsste ich auch nicht, wie ich das berechnen könnte, was an energie rein muss, damit man diese heizraten erreichen könnte.

ich sprech nochmal mitm meister... ich will die energiezufuhr komplett ein und ausschalten. und das wird nur gehen, wenn das wasserbad nicht vorhanden ist ergo abgepumpt wird.

so könnte man auch gleich die heizrate erhöhen, weil man in dem anderen topf auf höhere temperatur vorheizen könnte (delta theta größer) und es somit schneller ginge.

oder seht ihr das anders?!

gruß Lukas
 
Wenn du die Temp. in der Maische misst, und erst bei Erreichen von Soll abschaltest, wird es natürlich drüberschwingen. Es würde helfen wenn du die 4 Heizkreise einzeln steuern könntest, und rechtzeitig vor Erreichen von Soll einzelne Kreise abschaltest. Ein zusätzlicher Messpunkt im Wasser würde die Sache verfeinern. Das steht aber zusammengefasst eh schon alles in den vorigen Posts.

lg
 
Zurück
Oben