Temperaturregelung für die IDS2 ohne CBPi

Alles zum Thema Brauanlagen-Selbstbau. Für Steuerung und Automatisierung bitte das Unterforum "Automatisierung" nehmen.
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Temperaturregelung für die IDS2 ohne CBPi

#1

Beitrag von JackFrost »

Ich hab mir eine IDS2 gekauft und da ich CBPi nicht nutzen wollte, habe ich mir einen Temperaturregelung für die IDS2 gebaut.
Aktuell ist noch kein Automtikmodus für eine automatische Maischeführen vorhanden. Derzeit wird nur die Temperatur geregelt.

Als Temperaturfühler verwende ich einen PT100 Klasse AA. Der mit 300 mm direkt über dem Rührwerk im Ss 10 Gal Brautopf sitzt.
Das Messen des PT100 übernimmt ein MAX31865AAP+ . Damit habe ich 15 bit über dan ganzen Messbereich das PT100. Im für das brauen relevanten Bereich von 0 - 100 °C habe ich somit eine Auflösung von 0,03 °C.

Die Anzeige erfolgt über ein 1,3" OLED-Display und eine RGB-LED. Aktuell nutze ich nur die drei Grundfarben für
  • Rot : IDS2 heizt
  • Grün : Der Sollwert ist um +/- 1,5 °C erreicht
  • BLau : Debug der Daten von der Platte zur Regelung
Die EIngaben erfolgen über den Drehencoder.

Der µC ist ein ATSAMC21J21, wobei ich aktuell noch das Entwicklungsboard SAMC21 Xplained Pro nehme. Die selbst geätzte Platine passt auf einen Arduino, darf aber nur mit 3,3 V betrieben werden, da der MAX31865AAP+ keine höhre Spannung vertrögt.

Für die Kommunikation zur Platte habe ich Pegelwandler verwendet, so das die Pegel für beiden Seite richtig sind. Das Relais für die Hauptversorgung wird über eine Treiberstufe angesteuert. Die Steuerung selber bezieht ihre Spannung über ein externes 5V Netzteil , da ich nicht wusste wie stark ist das Netzteil der IDS2 belasten darf.

Die Regelung pulst wie bei matschies CBPI Plugin zwischen den Stufen. Als Zykluszeit habe ich 3 Minuten gewählt, so das die Leistungsänderungen nicht zu häufig kommen und eine Leistungsstufe mindestens 15s anliegt. Unter 10 % wird nicht geheizt. Die maximale Stufe kann zudem begrenzt werden.
Die Kommunikation erfolgt überTimerinterrupte, damit ich mir die Regelung nicht über delays blockiere. Aktuell läuft die CPU nur mit 3,69 MHz.
Die Brechnung des Sellgrades erfolgt alle 250 ms. Und die Temperatur wird mit ca. 50 Hz gemessen. Es fehlt noch ein gleitender Mittelwert für die Temperatur. Zudem muss ich das Fehlerbit noch auswerten, so das bei einem Fühlerfehler die gesendete Temperatur 300 °C ist.

Zudem will ich noch die Möglichkeit schaffen die Temperatur mit Eiswasser und kochendem VE-Wasser zu kalibrieren.

Es noch ein Platz für einen Luftdrucksensor vorgesehen um die Siedetemperatur zu berechnen und dann kurz davor die Leistung zu reduzieren.
Zudem kann noch ein FRAM eingebaut werden um hier ggf. Rezepte zu speichern.

Über den CAN sind folgende Erweiterungen geplant :
  • pH-Meter
  • Drehzalsteller für mein Kühlrührwerk
  • Kühlwasserregelung
All die Erweiterungen sollen über das Display angezeigt und eingestellt werden können.

Das Layout der Platine ist hier.
Die Platine verwenden hauptsächlich 0603 Bauelemente, Löterfahrung ist von Vorteil. Die Platine ist beidseitg bestückt. Ich hab kein Lötstopplaminat aufgetragen. Ohne dies ist das Löten jedoch schwieriger. Wenn ich nochmal eine Revision mache dann kommt Lötstopplaminat drauf, oder ich lasse sie fertigen.
Top.png
Bottom.png

Die Software liegt auf Github.

Die Platinen sind aktuell noch nicht in einem Gehäuse. Ich denke wenn die Garantie meiner IDS2 abgelaufen ist werde ich das Kabel für die Fernsteuerung durch ein M12 Kabel mit bekannte Kodierung ersetzen.

Ich danke matschie und allen die beim Entschlüsseln der Kommunikation der IDS2 geholfen haben.
IMG_2233.JPG


Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
dXn
Posting Junior
Posting Junior
Beiträge: 43
Registriert: Montag 13. Juni 2016, 10:52

Re: Temperaturregelung für die IDS2 ohne CBPi

#2

Beitrag von dXn »

Hi,

sehr interessant! Ich habe auch eine IDS2 im Einsatz und hatte gehofft das irgendwann eine "Standalone" Lösung für die Platte kommt da ich mit RaspberryPi/CBPi noch nicht so richtig "warm" geworden bin. Ich hatte vorher eine Hendi mit der Arduino AiO und fand die Steuerung mit dem Encoder schön einfach.
JackFrost hat geschrieben: Donnerstag 20. Juni 2019, 15:26 Die Platinen sind aktuell noch nicht in einem Gehäuse. Ich denke wenn die Garantie meiner IDS2 abgelaufen ist werde ich das Kabel für die Fernsteuerung durch ein M12 Kabel mit bekannte Kodierung ersetzen.
Ich habe das Kabel das aus dem Gehäuse kommt ersetzt. Da kein Garantiesiegel o.ä. vorhanden ist kann man das im Garantiefall wieder zurückrüsten so wie das Kabel aus dem Bedienteil. Das hatte ich hier auch schon mal beschrieben.
Das sieht dann mit einem Lumberg Quicklock Stecker so aus:
P1040096.JPG
Davon gibt es dann auch Einbaubuchsen, sind aber leider etwas teuer...
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#3

Beitrag von JackFrost »

dXn hat geschrieben: Donnerstag 20. Juni 2019, 17:29 Hi,
sehr interessant! Ich habe auch eine IDS2 im Einsatz und hatte gehofft das irgendwann eine "Standalone" Lösung für die Platte kommt da ich mit RaspberryPi/CBPi noch nicht so richtig "warm" geworden bin. Ich hatte vorher eine Hendi mit der Arduino AiO und fand die Steuerung mit dem Encoder schön einfach.
Ich werde das Dev-board noch durch eine eigene Platine ersetzen, dann ist es einfacher das man es sich selber baut. Ich hab das Devboard sehr günstig bekommen. Theoretisch könnte auch ein Arduino Zero gehen, aber dann muss man den Code portieren. Ich hab das direkt im Atmel Studio geschrieben, da ich so besser debuggen kann- Bei einem eigenen Board brauch ich dann noch nen Bootloader, da das Devboard einen eigenen Debuger drauf hat.
dXn hat geschrieben: Donnerstag 20. Juni 2019, 17:29 Ich habe das Kabel das aus dem Gehäuse kommt ersetzt. Da kein Garantiesiegel o.ä. vorhanden ist kann man das im Garantiefall wieder zurückrüsten so wie das Kabel aus dem Bedienteil. Das hatte ich hier auch schon mal beschrieben.
Das sieht dann mit einem Lumberg Quicklock Stecker so aus:

P1040096.JPG
Davon gibt es dann auch Einbaubuchsen, sind aber leider etwas teuer...
Ich denke ich werde mein Kabel auch ersetzen dann gegen M12.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#4

Beitrag von JackFrost »

Ich hab heute den ersten Test mit meinem neuen Brautopf und 16 kg Wasser gemacht.

Die Regelparameter passen noch nicht für meine Strecke, ein Autotune habe ich (noch) nicht eingebaut, daher muss ich die selber empirisch ermitteln.

Ich hab die Platte mit maximal 80 % laufen lassen was 2,8 kW sind. Der PT100 reagiert schnell und braucht aufjedenfall einen gleitenden Mittelwert, da es mir sonst den D-Anteil unnötig zum schwingen bringt.

Ansich war es ein guter erste Versuch. Ich muss noch das Menu schreiben mit dem man die Regelparameter ändern kann , da ich das aktuell hartcodiert ist. Das Antiwindup werde ich so modifizieren das es den maximalen Stellgrad berücksichtigt. Es bringt nichts das bei 100 % zu begrenzen wenn die Platte eh nur 80% darf. Die 20 % brauchen zu langen zum abbauen wenn der Sollwert erreicht ist.

Aktuell bin ich bei 15,2 % Flash und 37,2 % Ram. Es ist also noch gut Platz auf dem µC.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#5

Beitrag von JackFrost »

Ich hab die Berechnung für die Temperatur aus dem Widerstandswert des PT100 nun auch kubisch umgestellt, damit der Fehler der Rechnung kleiner wird.
Die Messwerte werden über einen gleitenden Mittelwert von 12 Werten geglättet.
Die Regelparameter für meine Strecke habe ich nun gefunden, damit erreiche ich eine Temperaturstabilität von +/- 0,2 K. Zudem hab ich das Antiwindup vom I-Anteil optimiert, so das hier auch der maximale Stellgrad berücksichtigt wird.
Die Regelparameter können nun über das Menu geändert werden.

Für den ersten test, vermutlich nächstes Wochenende steht nichts mehr im Weg :)

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#6

Beitrag von JackFrost »

Ich hab den ersten Sud mit der Regelung gebraut. Alles ist super gelaufen. Im Bereich von 72 °C könnten die Regelparameter etwas besser sein da war ich schon eher bei +/- 0,3 - 0,4 K Delta zum Sollwert. Der Prototyp kommt demnächst in ein Gehäuse und dann werde ich die Platine mit dem µC machen so das ich das DevBoard nicht mehr brauche.
Ich denke bei der nächsten Mouserbestellung werde ich den Luftdrucksensor bestellen und einlöten.
Ggf werde ich beim nächsten Sud die Date mal per CAN auslesen und aufzeichnen, damit ich besser sehen kann wie die Stabilität ist.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#7

Beitrag von JackFrost »

Ich hab eine einfache Schrittkette als Automatikmodus geschrieben, welche folgende Punkte umfasst :
  • Einmaischetemperatur
  • Fünf Rasten
  • Läutertemperatur
Wenn die Einmaischetempratur mit +/- 0,5K erreicht wird und dann ein Temperaturabfall von > 2K vom Sollwert erfolgt, wird auf die erste Rast umgeschalten.

Bei jeder Rast wird geprüft ob der Sollwert > 25°C ist. Wenn die Rasttempertur kleiner eingestellt ist, wird die Rast einfach übersrpungen.
Wenn die Temperatur an 0,5 K an die Rasttemperatur rankommt, wird der Timer gestartet.
Nach dem Ablauf des Timers wird auf die nächste Rast gesprungen, bzw nach der letzen wird die Läutertemperatur angefahren und danach
einfach bei der Temperatur gehalten.

Die Temperatur der aktuellen Rast kann direkt geändert werden. Bei den anderen muss man das dann über das Menu machen.

Ich werde das mal mit Wasser testen und schauen wie das läuft.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Benutzeravatar
DerDerDasBierBraut
Posting Freak
Posting Freak
Beiträge: 7890
Registriert: Donnerstag 2. Juni 2016, 20:51
Wohnort: Neustadt-Glewe

Re: Temperaturregelung für die IDS2 ohne CBPi

#8

Beitrag von DerDerDasBierBraut »

JackFrost hat geschrieben: Sonntag 18. August 2019, 20:45 ...
  • Fünf Rasten
...
Wenn die Rasttempertur kleiner eingestellt ist, wird die Rast einfach übersprungen.
Guter Schritt nach vorn :thumbsup
Für die meisten Sude sollte das ausreichen.
Mein Weizendoppelbock bräuchte aber schon 7 Rasten. Der BM konnte wenigstens 6, so dass ich mit 10 Minuten manuellem pausieren bei 48°C klar kam.
Absteigende Rasten sind manchmal gewollt. Sie sollten nur übersprungen werden, wenn die Dauer = 0 Minuten ist. Absteigende Rasten gab es beim BM auch nicht. Wäre also ein glatter Pluspunkt für deinen Controller. :Bigsmile
"Da braut sich was zusammen ... "
"Oh, Bier ;-) !"
"Nein! Was Böses!"
"Alkoholfreies Bier??? ..."
-----------
Viele Grüße
Jens
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#9

Beitrag von JackFrost »

DerDerDasBierBraut hat geschrieben: Sonntag 18. August 2019, 21:50
Absteigende Rasten sind manchmal gewollt. Sie sollten nur übersprungen werden, wenn die Dauer = 0 Minuten ist. Absteigende Rasten gab es beim BM auch nicht. Wäre also ein glatter Pluspunkt für deinen Controller. :Bigsmile
Es geht um die Absoluttemptertur, wenn die <= 25 °C wird die Rast übersprungen. Bei 63 -> 55 wird nichts übersprungen, weil beide ja größer als 25 °C sind.

Sieben Rasten wird spannend, da ich aktull mit Einmäischen, Läutertemperatur, fünf Rasten und der Kopfzeile genau die 8 Zeilen des OLED hab. Da muss dann ein TFT her mit mehr mehr Zeilen. Oder ich muss schauen wie man scrollen kann. Dann gehen auch 7 Rasten. Ein Rezept mit 7 Rasten wären 50 Byte an RAM, das sollte also auch kein Problem sein.

Absteigende Rast ist kein Problem, da nun die Abfrage auf ein delta von +/- 0,5 ist. Somit läuft der Timer erst wenn die Temp von beiden Seite her nahe am Ziel ist. Wird in der finalen Version einstellbar sein.

Anbei noch eine kleine Demo vom Bearbeiten des Rezeptes.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#10

Beitrag von JackFrost »

Es sind nun sieben Rasten. Die Rasten 5 - 7 werden über den letzen Menupunkt geändert. Hier wird erst die Rast gewählt, dann die Temperatur und als letztes die Zeit. Ist etwas umständlicher als die ersten vier. Aber es ist einfacher zu schreiben.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#11

Beitrag von JackFrost »

Die oberste Zeile zeigt nun im Automode den aktuellen Schritt an.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#12

Beitrag von JackFrost »

Ich lass jetzt zum testen noch den Heizgradienten ausrechnen. Ich denke damit kann ich dann auch auf das wallende kochen schließen.

Wenn ich den CAN noch zum laufen bekomme, dann kann ich beim nächsten Sud die Atomatik aufzeichnen und die Werte hier mal
posten.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#13

Beitrag von JackFrost »

Ich hab heute den Alphatest mit Wasser gemacht. Um die groben Fehler zu finden und sie raus zu nehmen.

Das Erkennen der Zugabe der Schüttung hat mit Wasser als teste geklappt. Die Menge war etwas zu viel. Ich muss es mit weniger testen ob es dann auch verlässlich geht.

Ein Problem war das die Aktivierung des Timers einen Bug hatte. Nachdem ändernd es neuen Sollwertes wurde das Delta erst im nächsten Durchlauf ausgerechnet. Da das alte Delta im Bereich von +/-0,5K war wurde der Timer sofort gestartet. Das sollte nun gefixt sein.

Die Regelparameter passen für mich. Mal sehen ob ich die noch Verbessere.

Das Aufhaizen zur Einmaischetemperatur :
Einmaischen-Rast1.png
Die 2. Y-Achse mit Sollwert ist nicht in verwendung und wurde noch nicht entfernt. Beide Temperatur sind auf die linke Y-Achse skaliert.

Die reste Rast bei 45 °C gezoomed :
1.Rast zoom.png
Der gesamte test von heute :
Alles.png
Die zweite Rast bei 63 °C gezoomed :
2.Rast.png
Die fallende Temperatur am Ende liegt abschalten der Heizung. Ich hab noch gewartet bis die Lüfter aus waren. In der Zeit werden die Daten gesendet. Der Stellgrad der berechnet wurde ist dann nicht auf 0 gesetzt worden, da die Regelschleife weiter läuft. Da muss ich noch bisserl was ändern.

Morgen werde ich ein komplettes Maischeprogramm testen.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#14

Beitrag von JackFrost »

Ich hab nun ein Programm für mein nächstes Bier voll durchlaufen lassen und direkt im Anschluss das Wasser zum kochen gebracht.
Maische.png
Direkt nach dem "Einmaischen" ist noch ein Fehler, die Temperatur fällt bisserl unter den Sollwert der ersten Rast. Da die Solltemperatur aber kurz durchlaufen wird, passt das Delta zum Sollwert und der Timer startet. Hier werde ich den Gradienten mit einbeziehen. Dann kann ich das erkennen.

Die anderen Timer starten nun wenn die Rast mit +/- 0,5 K delta erreicht wird. Die Oscillatoren sind noch nicht kalibriert, daher ist die Zeitbasis für die Sekunden 10% zu langsam gelaufen. Da ich nun die Kalibrierdaten geladen haben, sollte das besser sein. Die finale Version wird dann einen Quarz mit 20 ppm haben.

Beim Kochen sieht man sehr gut wie der Gradient fällt. Das werde ich als Erkennung nehmen das die Würze kocht und dann Timer für das kochen starten. Ich denke ich werde noch eine Möglichkeit einbauen, das die Heizleistung kurz vor dem Sieden gesenkt wird, um ein Überschäumen zu verhindern.
Kochen.png
Kochen.png (5.57 KiB) 24840 mal betrachtet
Die Regelgüte an sich ist gut. Ich bin bei maximal +/- 0,5 K mit einer Zykluszeit von 5 Minuten.

Rast2-1.png
Rast 3-1.png
Ich hab nun die CPU auf 48 MHz angehoben und die Timer usw auf 8 MHz gelassen. Damit wird alles etwa viermal schneller ausgeführt als mit 8 MHz. Durch die Waitstaits bei > 19 MHz skaliet die CPU nicht linear.

Die Daten werden nun von der Platte eingelesen und ausgewertet. Ich muss es nur testen, ob die Zeiten passen. Die Daten sind doppelt gepuffert.
So kann in der Main die Fehlermeldung ausgewertet werden, während der neue Frame empfangen wird.

Code: Alles auswählen

void TC0_Handler()
{
	static bool wait_for_preamble = true;
	static uint16_t pulse = 0;
	static uint16_t period = 0;
	if (TC0->COUNT16.INTFLAG.bit.MC0) {
		//The interrupt flag is cleared by reading CC
		 pulse = TC0->COUNT16.CC[0].bit.CC;
		 period = TC0->COUNT16.CC[1].bit.CC;
		if(wait_for_preamble)
		{
			if(period >= 0x3CD0 && period <= 0x4A54)  // Detect preamble
			{
				wait_for_preamble = false;
				if(data_IDS_a)
				{
					data_IDS[0] = 0;
				}
				else
				{
					data_IDS[1] = 0;
				}
			}
		}
		else
		{
			if(period <0x2000)  // Data
			{
				if(data_IDS_a)
				{
					if(period >= 0x500 && period <= 0xB00)
					{
						data_IDS[0] <<= 1;
					}
					if(period >= 0x14a0 && period <= 0x1B75)
					{
						data_IDS[0] <<= 1;
						data_IDS[0] |= 1;
					}
				}
				else   
				{
					if(period >= 0x500 && period <= 0xB00)
					{
						data_IDS[1] <<= 1;
						
					}
					if(period >= 0x14a0 && period <= 0x1B75)
					{
						data_IDS[1] <<= 1;
						data_IDS[1] |= 1;
					}
				}
			}
			if(period >= 0x7530 && period <= 0x84D0)  // End of Frame
			{
				wait_for_preamble = true;
				data_IDS_ready =  true;
				data_IDS_a ^= 1;  // Toggle Data destination
			}
		}
		PORT->Group[0].OUTTGL.reg = PORT_PA15 | PORT_PA09;
	}
	if (TC0->COUNT16.INTFLAG.bit.OVF) {
		TC0->COUNT16.INTFLAG.bit.OVF = 1;
		Error = Error_FF;
	} 
}
Läuft alles ohne das der Rest gebremst wird.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Benutzeravatar
DerDerDasBierBraut
Posting Freak
Posting Freak
Beiträge: 7890
Registriert: Donnerstag 2. Juni 2016, 20:51
Wohnort: Neustadt-Glewe

Re: Temperaturregelung für die IDS2 ohne CBPi

#15

Beitrag von DerDerDasBierBraut »

JackFrost hat geschrieben: Freitag 30. August 2019, 20:34 ...Die anderen Timer starten nun wenn die Rast mit +/- 0,5 K delta erreicht wird....
Das sehe ich als großes Benefit deiner Steuerung.
Der BM konnte per se keine absteigenden Rasten. Der CBPi überrent Rasten niedrigerer Temperatur als "Isttemperatur" pauschal.
Ich persönlich brauche absteigende Rasten nur selten, aber ich mag es, wenn eine Steuerung genau das macht, was man ihr sagt :thumbup
"Da braut sich was zusammen ... "
"Oh, Bier ;-) !"
"Nein! Was Böses!"
"Alkoholfreies Bier??? ..."
-----------
Viele Grüße
Jens
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#16

Beitrag von JackFrost »

Alle 7 Rasten laufen ohne Probleme. Auch mit nur 2K Delta zur nächsten Rat gibt es keinen Überschwinger der > 0,5 K ist.
7 Rasten.png
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#17

Beitrag von JackFrost »

Das Layout für die Regelung ist im groben fertig.

Ich schau ob ich noch einen Buzzer und einen Anschluss für einen Quittierungstaster drauf bekomme.
Der SPI Bus muss noch für das neue TFT Display auf einen Anschluss gezogen werden.

Ohne die Erweiterungen reicht ein OLED Display, aber mit den Erweiterungen kann zu wenig auf einmal Angezeigt werden.
IDs2.png
IDS2_r.png
Wenn die Hardware steht und läuft, kann ich mich um die Software kümmern. Mit Punkten wie :
  • Hopfentimer
  • Infusion / Dekoktion für die einzelen Rasten
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#18

Beitrag von JackFrost »

So der 2. CAN ist auf der Platine für die Erweiterungen
Der SPI Bus ist für das TFT auf einer Stiftleiste.

Der Bestückungsdruck muss noch optimiert werden.
Einen Anschluss für einen Buzzer und einen Taster muss ich noch unterbekommen.
Dann ist die Platine soweit fertig.

Beim Bootloader muss ich schauen ob der Anschluss für den Wemos genutzt werden kann, so das man
die Firmware per SAM-BA auf den µC laden kann.
Steuerung Rev0.8.png
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#19

Beitrag von JackFrost »

Der SAM-BA ROMless Bootloader ist so weit verändert das er mit dem UART und dem Encodertaster arbeitet.
Der Boatloader hat ca. 1% Flash, sollte also nicht so viel ausmachen.


Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#20

Beitrag von JackFrost »

Ich hab den Anschluss für einen Buzzer und zwei Taster hinzugefügt.

Die Montagelöcher müssen noch rein. Und zwei kleine Zusätzliche Boards für die Terminierung des SPI und für den PT100 zur Gehäusedurchführung müssen noch erstellt werden. Dann ist die Platine so weit das ich sie bestellen kann.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#21

Beitrag von JackFrost »

So die Platine ist fertig und die Bestellung ist raus.

Sollte jemand eine wollen, sieben sind noch verfügbar

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#22

Beitrag von JackFrost »

Der Preis aller Bauteile incl Platine und Verpackung exkl. Versand liegt bei ~52 €.

Darin enthalten sind unter anderem der barometrische Luftdrucksensor, das IC für PT100 und DS18B20 per DMA, ein CAN Transreciver für die Erweiterungen und ein 1Mbit FRAM für die Rezepte.

Durch das weglassen einiger der oberen Bauteile kann der Preis natürlich gesenkt werden.

Ich werde dieses Wochenende bestellen. Sollte also noch jemand die Steuerung wollen, dann schreibt mir eine PN.

Aktuell läuft das Maischen per Infusion mit PT100 und OLED Display.

Die Steuerung wird aber ein TFT Display bekommen und kann wahlweise PT100 oder den DS18B20 nutzen. Wobei die hohe Samplefrequenz der Temperaturmessung nur mit dem PT100 erreicht wird.

Der barometerische Luftdrucksensor soll in zusammenarbeit über den Gradienten der Temperur die Siedetemperatur erkennen.

Updates der Firmware erfolgen über den SAM-BA Bootloader per TTL RS232.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#23

Beitrag von JackFrost »

Nach langem hin und her sind die Platinen nun angekommen.

Am Wochenende wird gelötet und die Steuerung getestet.
Wenn alles gut läuft, dann wird der nächste Sud bereits mit der
Steuerung gebraut :Smile

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#24

Beitrag von JackFrost »

Ich hab meine Platine gelötet.
Die Funktionen die auf dem Entwicklungsboard waren, laufen auch schon auf der Platine.
Der MEMS-Luftdrucksensor ist ansprechbar, die Daten hab ich noch nicht verarbeitet.

Aktuell bin ich am Bootloader und am Treiber für die beiden TFT Typen dran.
Der optionale DS18B20 soll in DMA laufen, das kommt dann danach.
Der muss im DMA laufen, damit die Regelung nicht ausgebremst wird.
Primär setze ich aber auf den PT100. Den kann ich mit 20 Hz samplen und hab die
die gleiche Auflösung wie der DS18B20.
IMG_2790 - Kopie.JPG
IMG_2792 - Kopie.JPG
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Benutzeravatar
DerDerDasBierBraut
Posting Freak
Posting Freak
Beiträge: 7890
Registriert: Donnerstag 2. Juni 2016, 20:51
Wohnort: Neustadt-Glewe

Re: Temperaturregelung für die IDS2 ohne CBPi

#25

Beitrag von DerDerDasBierBraut »

Rocket Science. :thumbsup

Was bedeutet DMA beim DS18B20 und in welchen Intervallen kann man in diesem Modus ohne Messfehler durch Selbsterwärmung messen?
"Da braut sich was zusammen ... "
"Oh, Bier ;-) !"
"Nein! Was Böses!"
"Alkoholfreies Bier??? ..."
-----------
Viele Grüße
Jens
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#26

Beitrag von JackFrost »

DerDerDasBierBraut hat geschrieben: Sonntag 8. Dezember 2019, 22:07 Rocket Science. :thumbsup

Was bedeutet DMA beim DS18B20 und in welchen Intervallen kann man in diesem Modus ohne Messfehler durch Selbsterwärmung messen?
Das bedeutet leider nur das die CPU vom µC nicht warten muss bis die 9 Bytes ( ~9 ms ) über den Bus gekommen sind. Nach dem Reset werden die Daten dann von der UART Hardware direkt in den Speicher geschrieben. Damit kann die CPU die Eingaben und andere Dinge verarbeiten und die Steuerung wirkt dadurch dann als würde sie schneller laufen.
Dadurch kann man die Samplerate leider nicht erhöhen. Auch die Selbsterwärmung wird da nicht besser. Da kann man nur entgegenwirken indem man den DS18B20 besser an die Flüssigkeit koppelt. Der DS18B20 der in der Metallhülse die man direkt in die Flüssigkeit tauchen kann, sollte da besser sein.
Der DS18B20 braucht 1 - 1,5 mA beim messen, macht bei 3,3V also 3,3 - 5 mW an Verlust. Beim Auslesen fallen dann nocht mal 2,3 mW an, die aber nur bei den low Zeiten den Sensor erwärmen. Beim Auslesen hat man also ~ 1 - 1,5 mW. Die thermische Kopplung an den Sud ist hier sehr wichtig. Bei den PT100 Dünnschichtsensoren ist der Unterschied im Eigenerwärmungskoeffizient zwischen Wasser und Luft 4 - 20, je nach Typ.
Vielleicht ist der DS18B20 in der Messhülse besser, aber der kostet auch gut 25€.

Daher bin ich auf den PT100 gegangen. Den hab ich direkt in der Messhülse Ich habe einen Messstrom von 2,8 mA das macht bei dem PT100 1 mW Verlustleistung. Ich muss den Sensor mal mit Eiswasser testen. Die Berechnung selber und der Sensor haben natürlich auch eine Drift und einen Fehler.
Der DIn AA Sensor den ich hab, darf bei 72 °C 0,224 K abweichen.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#27

Beitrag von JackFrost »

DerDerDasBierBraut hat geschrieben: Sonntag 8. Dezember 2019, 22:07 Rocket Science. :thumbsup

Was bedeutet DMA beim DS18B20 und in welchen Intervallen kann man in diesem Modus ohne Messfehler durch Selbsterwärmung messen?
Ein TO-92 Gehäuse hat einen Wärmewiderstand von 200 K/W. Damit würde der DS18B20 bei 3,3V ca. 1K wärmer sein und bei 5v ca. 1,5 K wärmer sein.
Kommt das hin ?

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Benutzeravatar
DerDerDasBierBraut
Posting Freak
Posting Freak
Beiträge: 7890
Registriert: Donnerstag 2. Juni 2016, 20:51
Wohnort: Neustadt-Glewe

Re: Temperaturregelung für die IDS2 ohne CBPi

#28

Beitrag von DerDerDasBierBraut »

Du stellst Fragen. Vor allem mir, der sooo viel Ahnung von Elektronikgebastel hat :-)

Hier schien die Lösung ein Messintervall > 10 Sekunden zu sein (inkl. VCC abschalten), bzw. der Betrieb im parasitären Modus.
https://www.mikrocontroller.net/topic/124031
"Da braut sich was zusammen ... "
"Oh, Bier ;-) !"
"Nein! Was Böses!"
"Alkoholfreies Bier??? ..."
-----------
Viele Grüße
Jens
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#29

Beitrag von JackFrost »

Im letzten Post steht was von 0,5K bei einem "thermisch isoliertem Gefäß". Ich werde meinen DS18S20 und den PT100 dircht zusammen setzten und dann den DS18S20 mit maximaler Samplerate quälen.
Leider kann ich den nicht eintauchen. Im Sud dürfte das besser werden, sofern nicht zuviel Luft in der Tauchhülse ist.

Ggf. muss ich mal einen der "günstigen" bestellen. Evtl. brauchen die etwas mehr Strom. Das geht ja dann direkt in Wärme über.

Alle 10s messen, da darf dann keine gleitender Mittelwert rein. Da muss dann Tn deutlich gößer sein, damit der I nicht zu schnell aufintegriert.
10s sind 40 Durchläufe am Regler. Wobei 70l Sude auch wieder thermisch träger sind.

Ich muss mal schauen wie ich das hier nachstellen kann.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#30

Beitrag von JackFrost »

Der Bootloader läuft, aber leider hat die Software auf der Windowsseite einen Bug. Den gibt es seit 2014.
Das senden der Daten wird nur alle 3 Sekunden angestosse, damit dauert das Flashen lange.
Aktuell sind es bei ~ 64 kByte 15 Minuten.

Ich muss mal testen ob die Linuxvariante auch den Bug hat. Evtl. hilft dann schon eine LiveCD oder LiveUSBstick.
Wenn der Microcontroller voll ist dann würde das Flashen 1h dauern.

Ich schreib auch mal Microchip an, ggf wird doch noch was an der Software geändert.
Als nächstes kommt nun das TFT dran.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#31

Beitrag von JackFrost »

Das 1,77" TFT läuft. Es sind 8x8 Zeichen, damit passt das Doppelte auf das Display wie auf das OLED.
Mit den Farben hab ich noch nichts gemacht. Da muss ich mir überlegen was passen könnte.
Ggf, mach ich oben eine Statuszeile.
Der FRAM ist auch eingebaut.
Das Aktuelle Rezept und die Parameter vom Regler werden im FRAM gespeichert.
IMG_2808 - Kopie.JPG
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#32

Beitrag von JackFrost »

Ich hab den Code für das OLED auskommentiert, damit das TFT schneller geupdatet wird.
Die Rezeptdatenbank im FRAM ist nun auch aktiv. Aktuell können noch keine Namen für
die Rezepte vergeben werden. Das wäre mit dem Drehencoder auch kein Spass.
Da muss ich mir überlegen wie ich das mache.

Ich muss mal ausrechnen wie viel Speicher ein Rezept braucht.
Das Hopfenkochen kommt in ein eigenes Menü, aber die Rezepte vom
Maischen und Hopfen kochen werden zusammen eine Einheit bilden.
Daher werden sich die Rezepte noch ändern.

Auch die Rasten 5 - 7 teilen sich noch eineZeile, das kann ich dann demnächst ändern
da das TFT mehr Zeilen hat.

Ich denke ich werde aber den Schriftsatz von 8x8 auf 8x6 ändern, so das mehr in
eine Zeile passt. Damit kann ich dann auch die Art der Rast in der gleichen Zeile sein.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Citrist
Posting Klettermax
Posting Klettermax
Beiträge: 282
Registriert: Sonntag 29. Oktober 2017, 21:36
Wohnort: Aargau (CH), Gränichen und Frankfurt

Re: Temperaturregelung für die IDS2 ohne CBPi

#33

Beitrag von Citrist »

Sehr cool. Verfolge den Fortgang gespannt mit....
Griezi us dr Schwoiz.
Citrist
---
Mein (Jura)Wasser: https://tinyurl.com/yduv8yvr
Benutzeravatar
klecksi
Posting Senior
Posting Senior
Beiträge: 479
Registriert: Samstag 27. Februar 2016, 07:51

Re: Temperaturregelung für die IDS2 ohne CBPi

#34

Beitrag von klecksi »

Mal eine Frage, kann man die Rasten auch noch manuell stoppen ?
Ich Frage deswegen, zb. die Maische ist noch nicht jodnormal bei der letzten Rast.
ein farbenfroher Gruß

Klecksi
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#35

Beitrag von JackFrost »

klecksi hat geschrieben: Mittwoch 18. Dezember 2019, 00:01 Mal eine Frage, kann man die Rasten auch noch manuell stoppen ?
Ich Frage deswegen, zb. die Maische ist noch nicht jodnormal bei der letzten Rast.
Bis jetzt ist eine Pause in den Rasten noch nicht drinnen. Es ist aber eine gute Idee. Ich werde eine Pause für den Automatikbetrieb einbauen.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#36

Beitrag von JackFrost »

Das Display mit dem ILI9488 Controller ist eingebaut und geht ganz gut.
Leider ist das kein 320x240 wie angegeben sondern ein 480x320 TFT.
Damit ist die Datenmengen deutlich höher. Auch kann dieses Display nur 3 bit Farbe oder 18bit.
Mit 18Bit Farbe bräuchte das Löschen schon 1,5s mit den 3Bit Farbe sind es nur 0,25s.

Die 8 Farben reichen aber auch.

Das Display mit dem ILI9341 Controller ist heute geliefert worden aber leider defekt.
Daher muss ich da noch warten. Dieses kann 16Bit oder 18Bit Farbe. Damit bin ich hier
bei ca. 0,5s für das löschen.

Anbei in Bild vom 3,5" 480x320 Display mit einer 10x16 Schrift.
IMG_2822 - Kopie.JPG
Links sollen die Daten der direkt angeschloßenen IDS2 sein und rechts eine die über ein Gateway angeschlossen wird.

Unten dann die Daten vom Rezept wie Hopfentimer, pH-Wert und die Einstellungen fürs Kühlen.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#37

Beitrag von JackFrost »

Die Siedetemperatur wird nun aus dem Luftdruck berechnet.
Die Interpolation erfolgt über die Clausius-Clapeyron'schen Gleichung im Bereich 90 - 110‘C

Zudem ist ein neuer Modus „Kochen“ hinzugekommen.
Hier wird bis zum erreichen der Siedetemperatur mit einer definierten Stufe geheizt, bei erreichen der Siedetemperatur und wenn der Heizgradient kleiner 0,1K/min ist, wird die Leistung reduziert

Die Aktuelle Firmware mit Anleitung zum Flashen stell ich bald ins Forum.

Als Nächstes kommen die Hopfentimer.

Ich denke die Namen der Hopfen kommen in ein EEPROM. Da muss ich schauen wie groß das sein müsste.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Citrist
Posting Klettermax
Posting Klettermax
Beiträge: 282
Registriert: Sonntag 29. Oktober 2017, 21:36
Wohnort: Aargau (CH), Gränichen und Frankfurt

Re: Temperaturregelung für die IDS2 ohne CBPi

#38

Beitrag von Citrist »

Hoi JackFrost,
Ist deine eigentlich die einzige Steuerung, die den Luftdruck für einen variablen Kochpunkt mit einbezieht? Gesehen habe ich so etwas das erste Mal in Basel bei "Unser Bier" und wollte so etwas bei einer eigenen Steuerung auch haben.
Ich habe bis jetzt aber nur einen inkbird 310, eben, weil ich bisher im Hobbybereich noch nichts gefunden habe...
:Drink
Griezi us dr Schwoiz.
Citrist
---
Mein (Jura)Wasser: https://tinyurl.com/yduv8yvr
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#39

Beitrag von JackFrost »

Citrist hat geschrieben: Sonntag 29. Dezember 2019, 11:24 Hoi JackFrost,
Ist deine eigentlich die einzige Steuerung, die den Luftdruck für einen variablen Kochpunkt mit einbezieht? Gesehen habe ich so etwas das erste Mal in Basel bei "Unser Bier" und wollte so etwas bei einer eigenen Steuerung auch haben.
Ich habe bis jetzt aber nur einen inkbird 310, eben, weil ich bisher im Hobbybereich noch nichts gefunden habe...
:Drink
Ich weiss es nicht, ich hatte den Sensor bei Mouser endeckt und dachte das könnte was sein. Bei meinen aktuellen Suden von 20 Leiter reicht der
Heizgradient noch aus. Wenn ich aber mal größer braue, dann dürfte der Luftdruck besser sein.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#40

Beitrag von JackFrost »

Ich hab die Software erweitert :
  • Kalibrieren des PT100 über Eiswasser und kochendes Wasser
  • Einzelner Reset der PT100 Kalibrierung
  • Stufen für das Heizen zum Kochen und halten global einstellbar
  • Kochtimer mit automatischer Abschaltung
  • Auswahl der CAN Schnittstelle für die Erweiterungen und Datenaufzeichnung*
  • Siedepunktsvorwahl wenn kein Drucksensor vorhanden ist
* Ist nur möglich mit CAN-Lan-Gateway und spezieller Software auf dem Raspi.

Nach ein paar Tests wird die Software hier mit Anleitung zum Flashen erscheinen

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#41

Beitrag von JackFrost »

Ich hab ein paar Punkte hinzugefügt :
  • Debug LED -- Die blaue LED flackert wenn Daten von der IDS2 kommen. Muss in den Einstellungen aktiviert werden. Wird nicht gespeichert
  • Debug Data -- Alle 5 Sekunden werden die Daten über den UART gesendet. Dataloging muss dazu auch "Kein" stehen und Data Debug muss aktiviert sein*
  • Daten von der Platte werden erkannt.
  • Ausgabe von Fehlern
*Daten müssen über ein Terminal Programm aufgezeichnet werden und dann in Excel importiert werden.
Reihenfolge ist
  1. Istwert
  2. Sollwert
  3. Heizgradien
  4. Stellgrad
  5. Rast Timer
Leider wird mit Punkt statt mit Komma gesendet,daher muss man das in Excel dann beim Importieren ändern.

Bekannte Bugs
  • Beim 1,77" Display sind rot und blau vertauscht
Brausteuerung.zip
(46.64 KiB) 253-mal heruntergeladen
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#42

Beitrag von JackFrost »

Die Anleitung zum flashen ist hier

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#43

Beitrag von JackFrost »

Ich hab die Steuerung in ein Gehäuse eingebaut. Die beiden Taster hab ich auch gleich verbaut,
auch wenn sie im Programm noch nicht integriert sind.

Als Display hab ich ein Display mit einem ILI9488 verbaut. Das Display hat 480x320 Pixel
und wird mit nur 3 Bit Farbe bei 2 Pixel/Byte angesteuert. Damit ist die Wiederholrate
schnell genug, das die Steuerung nicht ausgebremst wird.
IMG_2959 - Kopie.jpg
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#44

Beitrag von JackFrost »

So Version 0.7b ist fertig.
Brausteuerung 0.7b.zip
(45.24 KiB) 241-mal heruntergeladen
Changelog
  • Pause eingefügt. Eine kurzer Betätigung des Tasters 2 ( Pins 5/6 ) pausiert die aktuelle Rast*
  • Die grüne LED blinkt nun zweimal hintereinander wenn die Einmaischtemperatur erreicht ist.
  • Einmaischen übersrpingen hinzugefügt. Eine lange Betätigung des Tasters 2 ( Pins 5/6) in der Einmaisch Phase startet direkt die erste Rast
  • Dekoktion hinzugeügt. Am Ende jeder Rezept Zeile steht nun ein "I" für Infusionsrast oder ein "D" für Dekoktionsrast **
  • Jodnormalmessung hinzugeügt am Ende der letzten Rast, mit dem Taster 2 ( Pins 5/6) wird auf die Läutertemperatur geheizt, alternativ einfach den Sollwert erhöhen.
  • Fehler bei der Vorwahl der Kochstufen behoben
  • Fehler im Infoscreen behoben
* Wenn die Pause aktiv ist leuchtet die blaue LED

** Wenn eine Dekoktionsrast aktiv ist, wird intern auf den letzten Rastsollwert umgestellt und die letzte Rasttemperatur gehalten bis der Sollwert der Dekoktionsrast ( +/- 0,5K ) erreicht ist. Mit einer langen Betätigung des Taster 1 ( Pin 1/2 ) wird die Dekoktion beendet und auf die Temperatur der aktuellen Rast geheizt, Während der Dekoktion wird die Zieltemperatur angezeigt. Die blaue LED blinkt. Die Dekoktion ist noch nicht getestet.
Durch die Dekoktion sind die alten Rezepte ungültig.
Taster.png
Taster.png (39.85 KiB) 22996 mal betrachtet
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Benutzeravatar
DerDerDasBierBraut
Posting Freak
Posting Freak
Beiträge: 7890
Registriert: Donnerstag 2. Juni 2016, 20:51
Wohnort: Neustadt-Glewe

Re: Temperaturregelung für die IDS2 ohne CBPi

#45

Beitrag von DerDerDasBierBraut »

Klingt sehr spannend.
Ist die Platine eigentlich schon final? Hast du eine Skizze auf der man die Lochabstände und -durchmesser sehen kann?
"Da braut sich was zusammen ... "
"Oh, Bier ;-) !"
"Nein! Was Böses!"
"Alkoholfreies Bier??? ..."
-----------
Viele Grüße
Jens
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#46

Beitrag von JackFrost »

DerDerDasBierBraut hat geschrieben: Sonntag 5. Januar 2020, 11:28 Klingt sehr spannend.
Ist die Platine eigentlich schon final? Hast du eine Skizze auf der man die Lochabstände und -durchmesser sehen kann?
Die Platine ist final und bereits gefertigt. Anbei sind die Lochabstände. Die Löcher haben einen Durchmesser von 3 mm.
DIe Maße der Platine sind 65,6mm x 75 mm. Unterhalb muss bisser Platz sein, da die Pushpull Pegelwandler unten sind.
Von der Höhe braucht es nicht viel , sollte aber bisser Luft sein. 5mm oder mehr sollten reichen.
Bohrungen.png
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#47

Beitrag von JackFrost »

Ich bin am überlegen ob ich am I2C Anschluss eine RTC mit EEPROM benutze.

Das EEPROM ist dann für die Hopfennamen und Sudnamen.
Im restlichen FRAM würde ich gerne den Sud dokumentieren und dann per PC Software zu einem Worddokument machen.

Denkbar wäre dann auch ein Autostartmodus.

Auslesen wäre dann per RS232.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#48

Beitrag von JackFrost »

Die Version 0.75b ist fertig.
Brausteuerung 0.75b.zip
(47.05 KiB) 236-mal heruntergeladen
Changelog:
  • Bug mit der Dekoktion behoben
  • Anzeige der Dekoktionstemperatur und des aktuellen Sollwerts für den Regler *
  • Verändern des Displaytypes über RS232 **
  • Manuele Eingabe der Kurrekturparamter für die Temperatur ***
  • Optimierung zum Auslesen der Temperatur
  • Globale Optionen für das pH-Messen ****
  • Vorbereitungen für den Buzzer
  • Der Status des Rezeptes, Drucksensors usw wird nun in der ersten Zeile mit einem grünen oder roten Buchstaben angezeigt.
* Bei einer Dekoktionsrast wird die Temperatur der letzten Rast gehalten bis der Istwert den Sollwert der Dekoktion erreicht. Der aktuelle Sollwert für den Regler kann in Sollwert geändert werden. Unter Dekoktion wird der Zielwert angezeigt. Dieser kann aktuelle nicht geändert werden.

** Der Typ des Displays kann nun per RS232 eingestellt werden. Nähere Infos gibt es dann im Thread zum Flashen.

*** Die Korrekturparamter können nun von Hand eingegeben werden, so das man nicht immer mit Eiswasser und kochendem Wasser arbeiten muss wenn sich an den der Datenstruktur im FRAM ändert.

**** Bei der Option pH-Messen Ja erscheint nach der Eingestellten Zeit im Display eine Meldung. Mit einen langen Druck auf den rechten Knopf kann die Meldung quittiert werden.

Achtung bei dieser Version haben sich die Daten im FRAM geändert, daher wird alles ungültig!! Vorher die Daten der Korrektur aufschreiben und mit der Hand eintragen.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#49

Beitrag von JackFrost »

Version 0.76b ist fertig.
Brausteuerung 0.76b.zip
(47.62 KiB) 232-mal heruntergeladen
Changelog
  • ILI9341 Display Unterstützung eingefügt, aktuell noch mit einer 8x6 Schrift
  • Debug Option für den PT100
Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: Temperaturregelung für die IDS2 ohne CBPi

#50

Beitrag von JackFrost »

So nun sind ist die Kochzeit und die Hopfentimer im Rezept.
Die Zeiten für den Hopfen sind absteigend und müssen zwingend absteigend eingegeben werden.
Es wird die Zeit eingegeben wie lange der Hopfen kochen soll.

Wenn als Zeit 0 eingegeben wird, wird die Gabe ignoriert. Beim Flame out wird der Buzzer nun auch aktiviert,
daher kann das dann auch für eine Hopfengabe genutzt werden.

Es sind aktuell bis zu vier Hopfengaben möglich.

Ich bin derzeit noch am Testen der Version 0.8b

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Antworten