Neu: Die KI-Firewall überwacht die gesamte Plattform und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

Antwort auf: Billige Wi-Fi-Steckdose geöffnet: Welche Signale gibt es zwischen Logikplatine und Leistungsplatine?

Von Türkçe mit KI übersetzt ·

Bei den meisten dieser Steckdosen steckt ein HLW8012 oder dessen Klon BL0937, 8 Beine, und die Pins, die du beschreibst, passen genau. Ich habe in der Gemeinde in Wasserpumpen-Schaltschränken dieselben Chipmodule verwendet, so funktioniert es:

  • CF (dein Pin 5): Impulsausgang, dessen Frequenz proportional zur Wirkleistung ist.
  • CF1 (Pin 4): je nach SEL-Pin ein Impuls proportional zu entweder Strom oder Spannung.
  • SEL (Pin 6): Auswahlpin vom Logikboard zum Chip. Beim HLW8012 ist SEL=1 Strom, beim BL0937 umgekehrt; wenn man das verwechselt, kommen unsinnige Werte heraus.

Auslesen ist einfach: Beide Pins an einen Interrupt anschließen und die Impulse in einem 1-Sekunden-Fenster zählen. Für die Leistung grob:

volatile uint32_t cfPulses = 0;
void IRAM_ATTR onCF() { cfPulses++; }

// setup:
attachInterrupt(digitalPinToInterrupt(PIN_CF), onCF, RISING);

// every second:
noInterrupts(); uint32_t n = cfPulses; cfPulses = 0; interrupts();
float power_w = n * powerFactor;     // kalibrasyonla bulunacak
energy_wh += power_w / 3600.0;

Den powerFactor-Wert ermittelst du mit einer bekannten Last: Einen 100-W-Heizlüfter oder eine Glühlampe anschließen und die gezählten Impulse durch die reale Leistung teilen. Für die Spannung dasselbe, nur SEL ändern und CF1 verwenden.
Sicherheit: Beim Flashen des Codes die Steckdose vom Netz trennen, den ESP32-C3 per USB programmieren, dann abstecken und wieder einstecken. USB anzuschließen während sie am Netz hängt bedeutet, deinen Computer ans Netz zu hängen. Die Kalibrierung über Wi-Fi mit Log-Ansicht durchführen.
Sende an Hermetry einen energy_wh-Zähler, der zusammen mit power_w steigt; den täglichen Verbrauch später aus dem Zähler zu holen ist deutlich sauberer.

Akzeptierte Lösung♥ 6