Achtung: Abänderungen die mit Strom 220V betreffen können lebensgefährlich sein 

Der EZ Reflow Oven ist ein Mini-Projekt. Ich möchte einen Reflow Oven zum "backen" von SMD Platinen aufbauen. Solche Ofen gibt es ab 200 EUR fertig aus China.

In mehreren Foren stand jedoch dass diese Öfen erst nach Umbau/Aufrüstung (Erdung/brennbare Teile) sicher und nutzbar wären.

Auf der Suche nach Informationen wie man einen Pizzaofen umfunktioniert bin ich auf die zwei folgenden Seiten gestoßen:

Mit dem Adafruit EZ-MAKE-OVEN siehe oben konnte ich eine Messung mit dem Ofen Severin TO 2034 durchführen (nur Temperaturmessung, noch kein "Backen"). Das "EZ Reflow Oven" Projekt soll eine vereinfachte, billigere Variante des EZ-MAKE-OVENs werden.


Bauteile:

  • D1 Mini-ESP8266 (z.B. bei AZ-Delivery oder Amazon, ca. 4 EUR)
  • MAX6675 mit K-Type Sensor (z.B. bei AZ-Delivery oder Amazon, ca. 7 EUR)
  • TP-Link KASA (Smarte Steckdose die per WiFi-Netzwerk steuerbar ist)
  • Pizzaofen (z.B. Severin TO 2034, ca. 60 EUR, 240 Grad Celsius)


Alternativen:

Es gibt etliche auch low-cost open Hardware Bausätze für Reflow Controller (10-80 EUR). Ich wollte jedoch selber einen aus bauen/programmieren.


Einschränkungen:

  • Die von mir gekauften MAX6675 Temperaturfühler haben ein Abweichung von mehr als 7 Grad Celsius.
  • Die WiFi Verbindungen sind unverschlüsselt


Algorithmus (Adafruit EZ-MAKE-OVEN):

Im Prinzip muss der Ofen nur schnell genug heizen und eine gewisse Temperatur erreichen. Dies liegt daran dass bei einem Relow-Temperatur-Profil nur ansteigend ist (z.B. https://www.chipquik.com/datasheets/TS391AX50.pdf). Zum Abkühlen wird die Ofenklappe manuell geöffnet. Im Algorithmus ist konfiguriert wie lange ein bestimmter Pizzaofen nachheizt, mit dieser Information schaltet der Algorithmus den Pizzaofen ab bevor es zu heiß wird. Andere Algorithmen benutzen eine PWM Steuerung für den Pizzaofen.


Umsetzung:

28.09.2020:


30.09.2020:

  • Screenshot: oven_20200930

  • D1 Mini stürzt in mehreren Situationen ab und rebootet:
    • Verbinden mit AP geht nicht
    • Webserver bei Seiten 4000 Zeichen
    • Websockets bei Messages > 2000 Zeichen
    • Konsequenz: Übertragene Datenmengen klein halten, d.h. statt alle Messwerte z.B. Messwerte einzeln schicken:
      • Beispiel einer Message im JSON-Format: '\{ "type" : "draw", "x" : 123, "y" : 432 \}'

  • Schnell wechselnde Temperaturen zu messen ist schwierig, die billigen Temperaturfühler am MAX6675 sind in einem Metallkopf eingelassen
    • Im Bild 'oven_20200930' sieht man als Linie den einen Temperaturfühler bei knapp 200 Grad, dann lege ich den zweiten Temperaturfühler in den Ofen und es dauert ca. 2 min bis dieser als Messwert 200 Grad ausgibt
    • Konsequenz: Teureren Messdraht von Adafruit ausprobieren oder Metallkopf entfernen
  • Der Pizzaofen Severin TO 2034 hat einen mechanischen Temperaturregler (aus Sicherheit). D.h. die Heizröhren werden beim Aufheizen auf eine Zieltemperatur z.B. Maximum 240 Grad mehrmals abgeschaltet. Es ist ein kleines Loch im Heizraum über den die Wärme an den Temperaturschalter geht. Dort muss so etwas wie ein Bimetall sein das sich bei Hitze verändert.
    • Konsequenz: Der Algorithmus geht davon aus das die Heizröhren direkt geschaltet werden können. Versuche Temperaturschalter kurz zu schließen. Achtung hier kann es sich um 220V handeln.

30.09.2020:

  • Screenshot: oven_20201007a
  • Screenshot: oven_20201007b
  • Screenshot: oven_20201007c
  • Nach Ausschaltung der Temperatursteuerung des Ofens können mindestens 300°C erreicht werden. Diese Temperatur sollte mehr als ausreichend sein. Der Temperaturanstieg (d.h. °C/s flacht ab 120°C leider merklich ab). Eigentlich sollte dieser optimal zwischen 2-3°C über den ganzen Temperaturbereich sein (siehe https://www.rocketscream.com/blog/2011/06/19/toaster-convection-or-infrared-oven/). Ein Zukleben der Lüftungsschlitze an der Oberseite des Ofens hat keinen Effekt gehabt.
  • Als Temperatursensoren stehen der Messdraht und der Sensor mit Metallkopf zur Verfügung. Meine Vermutung ist das der billige Sensor mit Metallkopf mit schnellen Temperaturwechseln Probleme hat. Als nächstes messe ich wie zeitsensitiv die beiden Sensoren sind (aus Ofen mit 100°C nehmen und Temperaturabfall messen)

16.10.2020:

  • Weiteren Backoffen (Infrarot) ausprobiert. Kurve war unterhalb der Kurve des TO 2045.
  • Billigen MAX6675 Thermokoppler gegen Adafruit MCP9600 getestet mit gleichem K-Typ Draht. Abweichung bei 22°C war 6°, bei 300°C war Abweichung 26°.
    Habe Messung von Raumtemperatur von Raumtemperatur auf 300°C durchgeführt und werde Werte vom MAX6675 linear anpassen:

    pyportal b'50.0625[1656]\r\n' - 1602876646.6757824    -> tempertature EZ Oven 50.0625 at 1602876646.6757824 seconds
    d1_mini b'52\r\n' - 1602876647.0914018                -> tempertature D1 mini + MAX6675 is 52 at 1602876647.0914018 seconds
                                                          -> approximate 2 degree deviation
    pyportal b'50.0[1657]\r\n' - 1602876647.6823163
    d1_mini b'52\r\n' - 1602876648.1157572
    ...
    pyportal b'290.5<2105>\r\n' - 1602877094.3557081      -> tempertature EZ Oven 290.5 at 1602876646.6757824 seconds
    d1_mini b'311\r\n' - 1602877094.5409336               -> tempertature D1 mini + MAX6675 is 311 at 1602876647.0914018 seconds
                                                          -> approximate 20 degree deviation
  • Auf Referenz Controller EZ Oven Profil für Lötpaste Felder_EN_23-Clear aus Datenblatt in JSON Profil übertragen und Temperaturprofil ablaufen gelassen.

18.10.2020:

Anforderungen:
Sobald ESP8266 Strom bekommt, versucht er bis zu 5 mal sich mit der TP-Link Steckdose zu verbinden, schafft er das nicht wartet er 30 Sekunden und macht ein Reboot (Setup). Geht die Verbindung verloren macht er ebenfalls einen Reboot (Loop). Über die USB serielle Schnittstelle dumpt er Temperaturdaten und nimmt Steuerkommandos für die Steckdose entgegen (Loop). Diagramm, Anpasung der Temperaturdaten und Algorithmus für Profil wird auf Laptop in Software gemacht.

TODO: Firmware ESP8266, Steuerung Steckdose, Dump Sensordaten. Anforderung: ESP8266

31.12.2020:

Kurzes Update zum Jahresende: Das Projekt ist aktuell wegen Corona pausiert. Der letzte Stand war das im Prinzip der Nachbau des EZ Make Oven Controllers fertig war, aber noch kein Testlauf mit Paste durchgeführt worden ist. Auf dem ESP8266 läuft wahlweise ein Simulator des Ofens (nimmt an und aus Commandos an und gibt entsprechend des Zustands des Modells jede Sekunde eine neue Temperatur aus (Zeit versetzt und abhängig von der Temperaturkennlinie). Die Steuerung funktioniert via Python und TKinter (siehe https://www.digikey.com/en/maker/projects/python-gui-guide-introduction-to-tkinter/d04a764c78114682aac9255056026338). Was noch Verbesserungswürdig ist ist einen Rücksynchronisation für den Fall das die Schaltsteckdose manuell betätigt wird dies bekommt der ESP8266 nicht mit. Aktuell sendet der ESP8266 nur via "fire and forget" die Kommandos zum An- und Ausschalten der Schaltsteckdose.


  • Keine Stichwörter