Op maandag 20 april 2026 23:07:18 schreef Lord Anubis:
[...]
Succes. Wel een vraag, die schroef terminals, zijn die aan beide zijden open?
Nee, die zijn maar aan 1 kant open.
Op maandag 20 april 2026 23:08:33 schreef Orf:
[...]Aan de binnenkant is de veer zichtbaar van de terminal. De andere kant is de open kant.
Oke, duidelijk, was bang dat ze omgedraaid waren. Kon het niet goed zien.
En inmiddels in productie?
Op woensdag 22 april 2026 16:26:03 schreef Lord Anubis:
[...]
Oke, duidelijk, was bang dat ze omgedraaid waren. Kon het niet goed zien.En inmiddels in productie?
Nog niet. Nog even wachten op onderdelen van Reichelt.
Healaas werkt de opamp niet van de PCB. Ik meet altijd 4,8V op de terminals. Op de pin van de ESP32 meet ik netjes 0-3,3V (in het schema hieronder is dat DAC_OUT). Ziet iemand wat ik fout gedaan heb in het schema?
Dit is het schema in Kicad:
Dat ziet er zo uit in de PCB designer:
En dit is de BOM die ik bij JLCPCB heb ingeleverd:
Dit is de datasheet van de laatste regel: https://ww1.microchip.com/downloads/en/DeviceDoc/MCP6001-1R-1U-2-4-1-M…
En dit is een foto van de print:
Dit is van een van de andere prints
Er zou dus 0-5V uit moeten komen. Heb ik de verkeerde MCP6001 op de print? Is mijn schema fout? Kan het ook nog iets bij JLC zijn? Ik heb nu 1 print getest omdat ik er dan headers op moet solderen. Ik heb er 5 gekregen.
Voor de rest werkt alles netjes, de LCD, de CT-klem, de knop, de ESP32. Erg jammer dat nou net het belangrijkste niet werkt.
Op zaterdag 25 april 2026 09:02:27 schreef Zonnepaneeltje:
Die MCP6001 is er in verschillende versies (pinning).
Heb je de juiste?
Dat kan inderdaad wel eens het probleem zijn. Ik wist niet dat er meerdere versies waren.
Op zaterdag 25 april 2026 08:24:34 schreef Orf:
Voor de rest werkt alles netjes, de LCD, de CT-klem, ....
Welke CT-klem gebruik je en heb je die rechtstreeks aangesloten op de ESP32 ? (ik ben met een HSTS016L bezig maar krijg deze niet werkend en heb nu een SCT-013-010 in bestelling)
Dat lijkt me geen goed plan.
1. Het is een stroomtrafo, dus die moet je ook als zodanig belasten.,
2. Er komt wisselspanning uit, dus dat zul je (actief) moeten gelijkrichten en waarschijnlijk versterken.
Op zaterdag 25 april 2026 08:24:34 schreef Orf:
Healaas werkt de opamp niet van de PCB. Ik meet altijd 4,8V op de terminals. Op de pin van de ESP32 meet ik netjes 0-3,3V (in het schema hieronder is dat DAC_OUT). Ziet iemand wat ik fout gedaan heb in het schema?
Het wil nog niet echt lukken zo te horen.
Zo'n ESP32 heeft een analoge uitgang, dus in principe hoef je het signaal alleen maar te versterken, met de juiste opamp moet dat toch lukken zou je zeggen.
Op zondag 26 april 2026 15:59:37 schreef Lambiek:
[...]
Het wil nog niet echt lukken zo te horen.Zo'n ESP32 heeft een analoge uitgang, dus in principe hoef je het signaal alleen maar te versterken, met de juiste opamp moet dat toch lukken zou je zeggen.
Jammer dat m'n printje inderdaad niet gelukt is. Volgens mij gaat het nu hierom. Ik ging uit van de linker opamp en ik heb de rechter gekregen:
En die pinnen zitten dus precies anders.
Ik hoop dus dat ik met een aangepaste BOM bij JLCPCB wel een werkende print heb.
Op zondag 26 april 2026 10:42:33 schreef MMSoft:
[...]Welke CT-klem gebruik je en heb je die rechtstreeks aangesloten op de ESP32 ? (ik ben met een HSTS016L bezig maar krijg deze niet werkend en heb nu een SCT-013-010 in bestelling)
Ik gebruik deze: https://nl.aliexpress.com/item/1005007939040338.html (de 15A). Daar krijg ik netjes 0-1V uit. Ik gebruik dit schema:
CT_ADC is verbonden met de ESP32 (Ik heb 'm op IO34).
Op zondag 26 april 2026 16:11:30 schreef Orf:
Jammer dat m'n printje inderdaad niet gelukt is. Volgens mij gaat het nu hierom. Ik ging uit van de linker opamp en ik heb de rechter gekregen:
Als je de MCP6001 besteld kun je, je print gewoon gebruiken toch. Dan moet het goed komen lijkt mij.
Ik gebruik deze:(de 15A). Daar krijg ik netjes 0-1V uit.
Dat signaal mag je ook wel versterken, dat is 0.0666666666666667 Volt per Ampère. Dat zou ik te gevoelig vinden.
Op zondag 26 april 2026 17:22:46 schreef Lambiek:
Dat signaal mag je ook wel versterken, dat is 0.0666666666666667 Volt per Ampère. Dat zou ik te gevoelig vinden.
Dat valt wel mee toch?
Bij maximaal 3.000W komt er dan maximaal 2,88V binnen met deze regeling.
Dat ding doet toch max 1V bij 15A, dat schreef je tenminste. Of begrijp ik dat verkeerd?
Dan kom ik bij 13A uit op zo'n +/- 0.9V.
Op zondag 26 april 2026 20:29:55 schreef Lambiek:
Dat ding doet toch max 1V bij 15A, dat schreef je tenminste. Of begrijp ik dat verkeerd?
Ja, 1V bij 15A AC klopt, maar door de bias-schakeling wordt dat voor de ADC een signaal rond 1,65V, ongeveer 0,24–3,06V bij volle schaal.
Op zondag 26 april 2026 20:37:42 schreef Orf:
[...]Ja, 1V bij 15A AC klopt, maar door de bias-schakeling wordt dat voor de ADC een signaal rond 1,65V, ongeveer 0,24–3,06V bij volle schaal.
Ik ben hier ook mee bezig (heb de CT-klem nog niet binnen) en als ik hier kijk: https://simplyexplained.com/blog/Home-Energy-Monitor-ESP32-CT-Sensor-E…
Dan zit 1 aansluiting van deze CT-klem aan de spanningsdeler (2x 10K), en dat is dan 1,65 volt bij een voeding van 3,3 Volt.
De andere aansluiting: Bij 1V bij 15A AC, krijg je dan ?
Omdat ik geen diode(s) zie begrijp ik niet hoe het AC signaal een DC signaal wordt (gezien er een Elco op de print zit denk ik aan DC).
Ik begrijp dat het met diodes ook niet kan omdat deze al snel een drempel van 0,3...0,6 volt hebben.
Wie kan hier iets over vertellen ?
Orf: Gebruik je een Elco of een gewone condensator hiervoor, en hoe kom je aan de spannings waardes van 0,24 en 3,06 Volt ?
MGP
LDmicro user.
In bijgevoegd schema wat ik gebruik zie je ook deze opstelling.
De middenaftakking staat op 2.5V en de uitgang van de SCT013-030 is 1Vrms of 1.4Vtop of 2.8Vpp
Op de analoge ingang staat op de top van de positieve halve periode 2.5V + 1.4V = 3.9V
en op de top van de negatieve halve sinus staat dan 2.5V - 1.4 =1.1Vdc
Daar valt best mee te werken.
Idem voor de spanningsmeting met een trafo.
edit: de discussie over de opamp vind ik ook eigenaardig, mijn 10kHz pwm signaal uit de controller (5v) gaat rechtstreeks in de SSR.
De spanning gemeten op de SSR ingang is dan 4.78Vdc bij 100% dutycycle wat goed werkbaar is want ik zoek toch die laatste watts niet op en waarom zou je?
De dutycycle van de pwm werkt vanaf 65% wegens de aard van de SSR (2Vdc) en gaat tot 100% in 1%/s oplopend en 4%/s aflopend in geval de injectie dreigt over te gaan in verbruik en ogenblikkelijk naar 60%(=0Vac out) bij verbruik.
Je verliest enkele wh maar dat is heel normaal bij die regelingen en vooral bij bewolkt weer.
NB. die regeling staat niet op het schema want ik verzend die byte draadloos, de bedoeling van mijn opstelling is dat de meting zoals op het schema niets regelt, enkel metingen doet aan de teller en verstuurt, zodat ik meerdere experimenten kan doen in mijn omgeving.
Op maandag 27 april 2026 09:02:51 schreef MMSoft:
[...]
Orf: Gebruik je een Elco of een gewone condensator hiervoor, en hoe kom je aan de spannings waardes van 0,24 en 3,06 Volt ?
Ik gebruik hiervoor keramische condensatoren, geen elco. De 100nF en 1µF stabiliseren alleen de 1,65V bias. De spanningen komen uit 1V RMS bij 15A: bij een sinus is dat 1,414V piek. Rond de 1,65V bias wordt dat dus 1,65V ± 1,414V, dat is ongeveer 0,24V tot 3,06V.
Mijn schakeling staat een paar posts terug.
rudig76
Even iets anders www.echteworst.nl
Op maandag 27 april 2026 21:26:06 schreef MGP:
edit: de discussie over de opamp vind ik ook eigenaardig, mijn 10kHz pwm signaal uit de controller (5v) gaat rechtstreeks in de SSR.
Hoezo eigenaardig? Zelf werk ik met een esp32 op 3.3 volt dus moest iets doen om in de buurt van de 5 volt te komen voor de ssr
Hoewel ik dat zelf nog niet geprobeerd heb, ik kan me best voorstellen dat je die dingen direct kunt PWM-en op een niet te lage frequentie.
Level shift kan met een enkel torretje.
Op zondag 26 april 2026 10:42:33 schreef MMSoft:
[...]...(ik ben met een HSTS016L bezig maar krijg deze niet werkend en heb nu een SCT-013-010 in bestelling)
Bedankt voor de info, ik weet nu hoe het werkt en gebruik nu de Library "EmonLib" (ESP32).
Ik krijg nu ook data uit de HSTS016L.
Maar zodra de SCT-013-010 binnen is ga ik die gebruiken.
Op zaterdag 25 april 2026 08:24:34 schreef Orf:
...Voor de rest werkt alles netjes, de LCD, de CT-klem...
Ik heb de SCT-013-010 binnen en op dezelfde manier aangesloten en gebruik de Library "EmonLib" (ESP32) maar krijg er niets bruikbaars uit.
Dus ben heel benieuwd hoe je dat softwarematig doet.
Op zaterdag 2 mei 2026 20:11:45 schreef MMSoft:
[...]Ik heb de SCT-013-010 binnen en op dezelfde manier aangesloten en gebruik de Library "EmonLib" (ESP32) maar krijg er niets bruikbaars uit.
Dus ben heel benieuwd hoe je dat softwarematig doet.
Ik had deze testcode:
const int CT_PIN = 34; // CT_ADC pin
const float ADC_REF = 3.3;
const int ADC_RES = 4095;
// Afhankelijk van je schakeling:
const float V_OFFSET = 1.65; // middenpunt bias (meestal ~1.65V)
const float SENSITIVITY = 1.0 / 15.0; // 1V bij 15A → 0.0667 V/A
void setup() {
Serial.begin(115200);
analogReadResolution(12); // ESP32 = 12-bit
}
void loop() {
const int samples = 500;
float sumSq = 0;
for (int i = 0; i < samples; i++) {
int raw = analogRead(CT_PIN);
float voltage = (raw / (float)ADC_RES) * ADC_REF;
// haal de offset eraf (AC signaal rond midden)
float centered = voltage - V_OFFSET;
sumSq += centered * centered;
}
float Vrms = sqrt(sumSq / samples);
// stroom berekenen
float Irms = Vrms / SENSITIVITY;
// vermogen (aangenomen 230V en cos φ ≈ 1)
float power = Irms * 230.0;
Serial.print("Vrms: "); Serial.print(Vrms, 3);
Serial.print(" V | Irms: "); Serial.print(Irms, 2);
Serial.print(" A | Power: "); Serial.print(power, 0);
Serial.println(" W");
delay(1000);
}
Ik kreeg afwijkende waardes en heb daarom een tabel gemaakt om dit te corrigeren.
Ik gebruik een HomeWizard-socket om het vermogen te bepalen.
Hierbij de code die ik nu heb:
const int CT_PIN = 34; // CT_ADC pin
const float ADC_REF = 3.3;
const int ADC_RES = 4095;
const float V_OFFSET = 1.458; // Middenpunt bias (meestal ~1.65V)
const float SENSITIVITY = 1.0 / 10.0; // 1V bij 10A → 0.1 V/A
const float Net_Spanning = 230.0;
const int tableSize = 21; //Het aantal Correctie punten
float real[tableSize] = { 0, 50,100,150,200,250,300,350,400,450,500,550,600,650,700,750,800,850, 900, 950,1000}; // Gemeten vermogen (referentie)
float measured[tableSize] = {20,118,186,245,304,366,425,490,547,618,670,709,774,838,873,926,942,972,1009,1046,1059}; // Wat de ESP32 berekent
//---
float correctPower(float raw) {
for (int i = 0; i < tableSize - 1; i++) {
if (raw >= measured[i] && raw <= measured[i + 1]) {
float x1 = measured[i];
float x2 = measured[i + 1];
float y1 = real[i];
float y2 = real[i + 1];
// lineaire interpolatie
return y1 + (raw - x1) * (y2 - y1) / (x2 - x1);
}
}
// buiten bereik
if (raw < measured[0]) return 0;
if (raw > measured[tableSize - 1]) return raw;
return raw;
}
void setup() {
Serial.begin(115200);
analogReadResolution(12); // ESP32 = 12-bit
}
void loop() {
const int samples = 500;
float sumSq = 0;
for (int i = 0; i < samples; i++) {
int raw = analogRead(CT_PIN);
float voltage = (raw / (float)ADC_RES) * ADC_REF;
// haal de offset eraf (AC signaal rond midden)
float centered = voltage - V_OFFSET;
sumSq += centered * centered;
}
float Vrms = sqrt(sumSq / samples);
// stroom berekenen
float Irms = Vrms / SENSITIVITY;
//float power = Irms * Net_Spanning; //Zonder de correctie (t.b.v. de tabel waardes bepalen)
float power = correctPower(Irms * Net_Spanning); //Met de correctie uit de tabel
if (power < 5) power = 0; // lage waardes wegfilteren
Serial.print("Vrms: "); Serial.print(Vrms, 3);
Serial.print(" V | Irms: "); Serial.print(Irms, 2);
Serial.print(" A | Power: "); Serial.print(power, 0);
Serial.println(" W");
delay(1000);
}
Handig, maar ik wil zeggen dat ik, weliswaar voor iets anders, de HomeWizard-socket niet echt overeen kwam met eigen metingen en het verschilde wel tot soms wel 5-7%. En vind dat best veel.
Je tabel is natuurlijk handig als je je eigen metingen kan invoeren.