89 lines
5.9 KiB
Markdown
89 lines
5.9 KiB
Markdown
# 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/bootet → Relais aus (10k am Basiswiderstand). Die Pumpe läuft dann nur über den Thermostat an J4.
|
||
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.
|
||
|
||
## 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).
|