20€ Silvia PID Mod

Diskutiere 20€ Silvia PID Mod im Espresso- und Kaffeemaschinen Forum im Bereich Maschinen und Technik; Hallo zusammen, ich hab die letzten 2 Tage ein kleines Projekt verfolgt und möchte gerne meine Erfahrungen teilen sollte jemand etwas ähnliches...

  1. #1 x1357, 15.08.2019
    Zuletzt bearbeitet: 15.08.2019
    x1357

    x1357 Mitglied

    Dabei seit:
    05.12.2017
    Beiträge:
    2
    Zustimmungen:
    8
    Hallo zusammen,
    ich hab die letzten 2 Tage ein kleines Projekt verfolgt und möchte gerne meine Erfahrungen teilen sollte jemand etwas ähnliches vorhaben. Mir ist bewusst dass es bereits zig fertige Kits gibt und auch genug dokumentierte DIY Lösungen aber basteln macht Spaß und gibt mir außerdem die volle Kontrolle.

    Meine letzten Berührungen mit Programmierung und Regelungstechnik sind über fünf Jahre her, daher ist alles explizit work in progress und Weiterverwendung auf eigene Gefahr!

    [​IMG]

    Verwendete Bauteile:
    • K-Type Thermocouple 0,82€
    • MAX31855 1,56€
    • SSR 40DA 2,95€
    • Raspberry Pi zero W 10,35€
    • 8GB micro SD Karte 4,5€

    Die Verkabelung ist simpel, beide Kontakte des 100°C Thermostats werden abgezogen und mit dem Ausgang des Relais verbunden. Außerdem wird der Temperaturfühler am Boiler befestigt, das wird im Endausbau noch mit Wärmeleitpaste und direktem Kontakt verbessert.
    Der MAX31855 wandelt das analoge Spannung des Thermofühlers in einen digitalen Wert, Verkabelung mit dem RPi und es kann losgehen.

    [​IMG]

    Das Regeln übernimmt ivPID, ein fertiger PID Controller für Python (ivmech/ivPID). Außerdem braucht man noch den Treiber für den Thermosensor (Tuckie/max31855). Mein Code tastet die Temperatur mit einer Sample Time von 0,2s ab und erzeugt daraus eine Leistungsregelung von 0-100%. Mir ist bewusst dass die PWM relativ dreckig gelöst ist, allerdings ist die Silvia ein derart träges System dass es für mich ausreichend ist.

    Sourcecode: [Python] from ivPID.PID import PID from max31855.max31855 import MAX31855, MAX31855Error - Pastebin.com

    Ich führe die Regelung bis alles endgültig fertig ist über SSH aus und bekomme direkt Feedback über aktuelle Temperatur und Duty Cycle der PWM. Außerdem wird im Moment für jeden Start ein Logfile erstellt.

    Damit komme ich im Moment mit den Werten kp=3.4, ki=0.35, kd=35 auf folgendes Ergebnis:

    [​IMG]

    Man sieht dass das erstmalige Erreichen der Zieltemperatur relativ lange dauert, das ist für mich aber kein Problem da ich ohnehin 20min vorheize. Zwischen Minute 30 und 35 wurde über 25s ein 14g Espresso gezogen, nach 90-120s ist die Silvia wieder im Zielbereich von 100+-0,5°C.

    Erkenntnisse beim Bau:

    • der Temperaturfühler ist anfällig gegenüber Einstreuungen, Abhilfe schaffen 10nF Kondensatoren zwischen T+ und T- sowie T- und GND.
    • Da die Stellgröße nur in positiver Richtung funktioniert (heizen, kein kühlen möglich) habe ich versucht Überschwinger zu vermeiden. Regleroptimierung nach Faustformelverfahren sind daher meiner Erfahrung nach nicht zielführend. Ich habe bei I=0, D=0 den P Wert erhöht bis es gerade zu keinem Überschwingen kommt, anschließend I erhöhen bis das Überschwingen maximal 2°C beträgt. Zuletzt D erhöhen um das Überschwingen auszugleichen ohne dass der Regler zu sprunghaft wird.
    • Ich hatte große Probleme mit dem D Faktor, die Vermutung war dass es am Rauschen und Quantisierungsfehler (Ausgabe in 0,25°C Schritten) des Temperaturfühlers liegt. Abhilfe hab ich geschafft indem sowohl für die Berechnung der aktuellen Temperatur als auch für den Duty Cycle ein Mittelwert über die letzten 5 Ergebnisse gebildet wird. Das verschlechtert natürlich das Regelverhalten, funktioniert aber in der Praxis ganz gut.
    To-Do:
    • Autostart
    • Einbau ins Gehäuse
    • Logs mit Datum versehen
    • Code kommentieren
    • Brühtemperatur messen und Kesseltemperatur anpassen
    • Weitere Relais bestellen für Steuerung der Pumpe und Timerschaltung der Mühle
    Ich hoffe es kann mit den Infos jemand etwas anfangen, bei ernsthaftem Interesse kann ich gern noch genauere Doku nachliefern. Auf Schnickschnack wie Webinterface oder ähnliches hab ich bewusst verzichtet, ich will dass die Schaltung einfach funktioniert ohne im Alltag aufzufallen.
     
    a2s, Adjacent, CtpKaffee und 5 anderen gefällt das.
  2. Tharis

    Tharis Mitglied

    Dabei seit:
    23.12.2012
    Beiträge:
    725
    Zustimmungen:
    286
    Man kann ja ganz gut erkennen, dass die Maschine bis auf ~95C° innerhalb von 3 Minuten aufgeheizt ist, aber die letzten 5°C sich über die nächsten 10 Minuten ziehen, was wohl damit zu tun hat, dass der PID die Leistung immer weiter und weiter reduziert, je näher er die IST-Temp an die SOLL-Temp nähert.

    Könntest du nicht versuchen die 1. Aufheiztemperatur auf 110°C zu stellen und den PID nach 5 Minuten einen neuen Wert von 100°C einstellen lassen? Kämst du somit nicht schneller auf die Betriebstemperatur, die du ja erreichen möchtest?
     
  3. #3 furkist, 15.08.2019
    furkist

    furkist Mitglied

    Dabei seit:
    22.12.2018
    Beiträge:
    2.483
    Zustimmungen:
    2.001
    Nur so zur Info: das PID bei der Lelit ist so eingestellt, daß ein kleiner Überschwinger da ist. Heißt: bei 95 grad eingestellt schwingt die Heizung bis 98 - 99 grad über. Und danach regelt sie sich bei 95 ein.

    Soll heißen: du könntest den I Wert dahingehend ändern, daß ein leichter Überschwinger zustande kommt. Und dann kannst du mal die "Aufheizzeit" messen - evtl wird sie etwas kürzer.

    Die Temperatur wird bei der Lelit oben am Boiler gemessen, da ist wenig Metall und "direkter" Zugang zum Wasser. Unten ist jede Menge metall: ST Halter, Brühkopf usw. das ist bei der Silvia genauso. Und das Metall macht diese kurzzeitigen Überschwinger (sicher ? ) nicht mit.

    Gratuliere zu diesem Super-Pid !
     
  4. andhii

    andhii Mitglied

    Dabei seit:
    15.01.2013
    Beiträge:
    39
    Zustimmungen:
    15
Thema:

20€ Silvia PID Mod

Die Seite wird geladen...

20€ Silvia PID Mod - Ähnliche Themen

  1. [Verkauft] Rancilio Silvia V3 - 2 Jahre alt - 320€

    Rancilio Silvia V3 - 2 Jahre alt - 320€: Reserviert Die Silvia ist zwei Jahre alt und hat in der Zeit täglich ca 2-3 Bezüge geliefert. Nun wird sie wegen einem Upgrade verkauft. Sie hat...
  2. Suche Cappu Espressobohne für meine Silvia: Kräftig, wenig Säure, 20€/kg

    Suche Cappu Espressobohne für meine Silvia: Kräftig, wenig Säure, 20€/kg: Hallo zusammen, ich nutze seit einem halben Jahr eine Silvia zuammen mit einer Demoka Mühle und bin nach wie vor erschlagen von der Vielfalt der...
  3. [Verkaufe] Comandante American Cherry 220€ NEU

    Comandante American Cherry 220€ NEU: Verkaufe eine Comandante American Cherry neu in OVP aus Shopauflösung. Preis: 220€ (UVP 278€) Versand möglich, 4,90€ versicherter Versand Liebe...
  4. [Verkauft] Rocket Stone grau in München 820€

    Rocket Stone grau in München 820€: Verkaufe eine aus Neugier gekaufte Rocket Stone.:) Die Maschine ist wenig benutzt und neuwertig. Falls jemand die Maschine nicht kennt: Es ist...
  5. Suche kompakte Handmühle bis 120€

    Suche kompakte Handmühle bis 120€: Ich suche als Geschenk eine kompakte Handmühle, wie z. B. die feldgrind, aergrind, o.ä. Vielen Dank! Nico