6.6 KiB
Ofensteuerung (Wemos D1 mini)
Trägerplatine 100 × 100 mm für den Ofen, gleicher Aufbau wie die Umwälzpumpen-Platine: Wemos D1 mini auf Buchsenleisten, alle Außenanschlüsse als Steckklemmen 5,08 mm (Stiftleiste + abziehbarer Schraubstecker).
Funktionen
| Klemme | Pins | Funktion | ESP |
|---|---|---|---|
| J2 NETZ 230V | PE / N / L | Netzzuleitung (vorher LS-Schalter) | – |
| J3 PUMPE | L / N / PE | Pumpe 230 V über Relais K1 (Schließer), abgesichert mit F1 T2A | D0 |
| J4 THERMOSTAT | L / Ls / N | Externer Thermostat parallel zum Relaiskontakt: Schließer zwischen L und Ls, schaltet die Pumpe auch ohne ESP. N für Thermostate mit Versorgung/Kontrolllampe, Thermostat ohne Zusatzverkabelung anschließbar | – |
| T1 | Drahtbrücke | Stromwandler ZMCT103C misst den Pumpenstrom, egal ob Relais oder Thermostat schaltet → ADS1115 A0-A1 | I²C |
| A3 (Modul) | Typ K | Abgastemperatur: MAX6675-Modul, Thermoelement direkt in die Klemme des Moduls am Plattenrand | D5/D6/D8 |
| J5, J6, J7 | GND / DQ / 3V3 | 3× DS18B20 am selben 1-Wire-Bus (4k7) | D4 |
| J8 KLAPPE | GND / 5V / SIG | Luftklappe: Servo MG996R (braun/rot/orange), 470 µF direkt an der Klemme | D3 |
| J9 PWM-PUMPE | GND / FB / PWM | Vorbereitung PWM-Pumpe, gleiche Stufe wie Umwälzpumpe (BC546B, 470 Ω, JP1 Pull-up) + Rückmeldung | D7, RX |
| J1 5V 3A | + / − | Versorgung 5 V, mindestens 3 A (MG996R zieht beim Anlaufen/Blockieren bis 2,5 A) | – |
| J10 | 5V 3V3 GND SDA SCL A0 TX AD2 AD3 | Erweiterung (Stiftleiste 2,54) | – |
Pinbelegung jeder Klemme steht auf dem Bestückungsdruck, Pin 1 ist mit ▽ markiert.
230-V-Teil
- Der Netzspannungsbereich (oben links) ist auf dem Bestückungsdruck umrandet, dort gibt es keine GND-Fläche.
- Abstand 230 V ↔ Kleinspannung auf der Platine ≥ 4 mm (eigene DRC-Regel). Ausnahme ist das Relais selbst: Spule ↔ Kontakt ≈ 3,3 mm (SRD-Bauform, Basisisolierung). Die Kleinspannungsseite ist damit nicht berührsicher getrennt → Platine nur in geschlossenem Gehäuse betreiben, vor dem Öffnen Netz trennen. Über die Fühler (Thermoelement am Abgasrohr, DS18B20 an Rohren) liegt GND in der Praxis ohnehin auf Schutzleiterpotential.
- Stromwandler T1: Die Pumpen-Phase läuft als isolierte Drahtbrücke (H07V-K 1,5 mm², ca. 4 cm, vorgebogen) vom Pad links durch das Loch des ZMCT103C zum Pad rechts. Ohne diese Brücke läuft die Pumpe nicht.
- Leiterbahnen 230 V: 2 mm breit, für die Pumpe (< 1 A) reichlich. F1 = Feinsicherung 5×20 träge (T2A, je nach Pumpe auch T1A).
- Ausfallverhalten: ESP aus → Relais aus (10k am Basiswiderstand). Die Pumpe läuft dann nur über den Thermostat an J4. Beim Booten/Reset zieht das Relais kurz an (D0/GPIO16 ist beim ESP8266 während des Bootens kurz high) – die Pumpe läuft dann für einen Moment, das ist harmlos. Deshalb den Thermostat (z.B. Anlegethermostat am Ofenvorlauf, ca. 60–70 °C, Schließer) unbedingt anschließen.
Strommessung
ZMCT103C (1000:1) mit 100 Ω Bürde: 1 A Pumpenstrom = 100 mV eff. Die Bürde liegt auf 1,65 V (Teiler 2×10k), der ADS1115 misst differenziell A0-A1 (±256 mV → bis ca. 1,8 A).
ESPHome (ct_clamp) rechnet daraus den Strom und meldet zusätzlich:
- Pumpe läuft (Strom > 30 mA)
- Pumpe läuft über Thermostat (Strom, aber Relais aus)
- Pumpe Störung (Relais an, 20 s kein Strom → Sicherung, Pumpe oder Kabel)
Watt sind nur geschätzt (keine Spannungsmessung): Strom × Faktor „Pumpe Faktor W pro A“ (Standard 115 = 230 V × cos φ 0,5). Einmal mit Shelly einmessen: Shelly-Watt ÷ „Pumpe Strom“ eintragen.
Teile
pcb/fab/ofensteuerung_bom.csv enthält die Stückliste mit Fach aus deinem Inventar (Parts_Inventory.xlsx).
Aus dem Inventar: Widerstände 100/220/330/470/1k/2k2/4k7/10k (Schrank E), 100n (C-07-1), 10 µ (C-10-2), 470 µ (C-04-3), 1000 µ (C-05-3), BC546B (B-01-4), 1N4007 (B-02-1), LEDs (B-07-5, B-08-5), Stift-/Buchsenleisten (A-07-2, A-06-5), Jumper (A-11-3), Sicherungshalter/-sicherung (B-12-2, B-11-2). Relais: im Fach A-07-1 nachsehen, ob ein SRD-05VDC-SL-C (oder pinkompatibel: Songle SRD, HKE HRS4H, Ningbo …) dabei ist.
Zukaufen:
- Steckklemmen 5,08 mm, jeweils Stiftleiste abgewinkelt + Schraubstecker: 8× 3-polig, 1× 2-polig (J2, J3, J4 sind 230 V: Phoenix MSTB 2,5 oder 2EDG mit 300 V Nennspannung)
- ZMCT103C Stromwandler (Einzelbauteil, nicht das Modul mit OPV)
- MAX6675-Modul + Thermoelement Typ K als Abgasfühler (Edelstahl-Hülse, bis ca. 600 °C)
- ADS1115-Modul (HW-ADS1115, Pinfolge VDD GND SCL SDA ADDR ALRT A0 A1 A2 A3 prüfen)
- Servo MG996R, 3× DS18B20 (wasserdicht), Wemos D1 mini
- 5-V-Netzteil ≥ 3 A (Hutschiene z.B. Mean Well HDR-30-5)
- Anlegethermostat mit Schließer
- ggf. Relais SRD-05VDC-SL-C, 2 Sicherungsclips 5×20 + T2A
Hinweise:
- MAX6675-Modul: Pinfolge GND VCC SCK CS SO ist die übliche (rote/blaue Platine). Vor dem Einlöten der Buchsenleiste am Modul prüfen.
- Wemos, ADS1115 und MAX6675 auf Buchsenleisten stecken. Der USB-Stecker des Wemos ist auf der Platine zugebaut: erstes Flashen vor dem Einstecken, danach OTA.
- D3/GPIO0 (Servo) und D8/GPIO15 (MAX CS, 10k nach GND) sind Boot-Pins und passend beschaltet. Falls der Wemos mit angestecktem Servo nicht startet, zieht der Servo-Eingang GPIO0 auf Low (sehr selten). Dann den Servo-Stecker J8 beim Einschalten abziehen und anderen Servo nehmen.
- Relais vor dem Einlöten prüfen: Das Relais passt nur in einer Richtung. Im Ruhezustand muss der Kontakt, der zur Ls-Leiterbahn (J4 Ls / T1) geht, offen sein (Schließer). Durchpiepen: Mittelpin am Ende ohne Nachbarn (COM, Pad „1“) gegen die beiden Pins am anderen Ende. Der Pin mit Durchgang (Öffner) muss auf das unbeschaltete Pad. Gängige SRD-05VDC-SL-C von Songle sind so belegt.
Firmware
esphome/ofensteuerung.yaml (geprüft mit esphome config): Relais, Strom, Abgas, 3× DS18B20, Luftklappe als Zahl 0–100 %, PWM-Pumpe.
MQTT unter gunter/ofensteuerung/…, Secrets wie bei der Umwälzpumpe. Die Servo-Endlagen (min_level/max_level) an die Klappe anpassen.
Dateien neu erzeugen
Alles kommt aus pcb/design.py (Netzliste, Footprints, Positionen) und pcb/sch_layout.py (Schaltplan-Anordnung).
cd pcb
python3 gen_sch.py # Schaltplan + Projekt-Libs (kicad-cli sch erc ofensteuerung.kicad_sch)
python3 gen_pcb.py # platzierte Platine
python3 route.py 30 # Freerouting in 2 Stufen: erst 230 V, dann Kleinspannung (230-V-Bereich gesperrt)
kicad-cli pcb drc --schematic-parity ofensteuerung.kicad_pcb
python3 fab.py && ./docs.sh # Gerber-zip, Stückliste, PDFs, Bilder
Bestellen: pcb/fab/ofensteuerung_gerber.zip (2 Lagen, 1,6 mm, HASL, 100 × 100 mm).
