Hallo, ich nochmal.
eins voraus: ich bin neu hier und eher programmierer (asm/c/c++) denn hardwarebastler.
das projekt finde ich aber spannend und daher mal einen dank an alle die sich hier beteiligen/beteiligt haben.
ich habe am wochenende lange ueber dem problem gebruetet:
im kern bin ich auf der Suche nach zwei verschiedenen loesungen fuer meine wohnung:
I) will ich zentral im sicherungskasten (weil man da gut an alles ran kommt / sich vor oder hinter die sicherungen schalten kann) die verbraeuche an allen sicherungen sekundengenau aufzeichnen.
II) haette ich gern die moeglichkeit mit moeglichst wenig aufwand an einzelnen steckdosen mit einem zwischenstecker die (wechselstrom-)verbraeuche aufzuzeichnen.
fuer II) denk ich mir inzwischen das es am einfachsten sein duerfte einen der gaengigen leistungsmesser (fuer die steckdose als zwischenstecker, in der regel mit display) zu 'hacken' und da einen bus (I2C/SPI/onewire/can/ethercat/ethernet) dranzubasteln und die vorhandene messtechnik zu 'missbrauchen'.
wenn die teile so 5-10eu und die busanbindung genauso teuer wird, klingt das noch finanzierbar.
fuer ideen dazu bin ich aufgeschlossen
aber wir reden ja hier eher von einer loesung fuer I), und dazu ein paar anmerkungen:
1) ja, ich wollte i^, u^ und den zeitlichen offset zwischen ihnen (also zwischen deren maxima, minima oder den flankengleichen null-durchgaengen) uebertragen.
da man zur leistungsberechnung dann mit wurzeln und mit irrationalen zahlen rechnen muss, fuerchte ich das ueberfordert die paar dutzend megahertz eines microcontrollers der seinen einen kern auchnoch zum messen und daten raushauen braucht.
2) das mit dem gleichzeitig messen habe ich verstanden und halte ich auch fuer wichtig. aber nichtmehr wenn man genau genug misst um ^-werte sicher zu finden und den (zeitlichen) offset zwischen strom und spannung damit auch.
abgesehen davon hat bei der aktuellen loesung das 'gleichzeitige' messen ein systemisches problem: ueber den SPI kann ich nur nacheinander werte abrufen (und damit messungen ausloesen), d.h. zwischen zwei messungen habe ich auf jeden fall den timeout von SPI und die antwortzeit des ADC.
als ich am wochenende ueber loesungen gegruebelt habe, habe ich folgendes verworfen:
raspi mit adc-shield (alle die ich gefunden habe, bezahlbar waren und genug kanaele geliefert haben, haben bei 12bit nurnoch dreistellige messwert-anzahlen/sekunde geliefert).
propeller fuer ca 8EU: https://elmicro.com/de/propeller.html
immerhin drei unanhaengige cpu's um 8kanaele mit hoher aufloesung abzutasten, aber dann brauchts immernoch passende flinke und genaue ADC's
die loesung die mir tragfaehiger erscheint:
beagle bone black (BBB) bei Reichelt ab ca 60EU, sonst gerne auch mal 90:
das teil bringt 8 ADC mit vernuenftiger geschwindigkeit mit, aber vor allem:
neben den 8 cpu's fuer linux, das man auch mit realtime-patches aufm raspi nicht auf harte echtzeit kriegt:
https://www.elektronikpraxis.vogel.d...6&type=article
bringt das teil noch zwei cpu's mit auf die man code laden kann, der in harter echtzeit (unabhaengig vom linux auf den anderen 8cores) auf die 8 ADC zugreifen und messwerte ueber shared memory miteinander und den linux-cpus teilen kann:
https://www.researchgate.net/publica...aglebone_Black
was ich mir vorstelle:
mit 3 ADC die spannungen L1-L3 messen, mit den restlichen 5 ADC fuer 0.5s die stroeme fuer 5verbraucher (= 5sicherungen in meinem fall) und fuer nochmal 0.5s die stroeme fuer 5andere verbraucher (=die restlichen meiner 10sicherungen) messen.
weiss noch nicht ob man das umkonfigurieren kann (wo adc-pins liegen solle) und wie lange das dauert.
aber in den 0.5s kann ein dedizierter core sicher problemlos die 25perioden auf seinen 8 ADC hochaufgeloest erfassen.
mit dem zweiten dedzierten core wuerde ich dann im 0.5s rhytmus die messwerte der letzten 25perioden auswerten.
im ergebnis kommt dann die durchschnittlich integrierte leistung fuer eine periode/verbraucher, frequenz, u^, i^, t(u^), t(i^), 3x t(0) [=zeitpunkte der nulldurchgaenge] und meinetwegen noch die effektivwerte raus + vielleicht der durchschnitt der messwerte also eine durchschnittskurve.
das alles sollen die beiden dedzierten cpu's machen.
die 8 nicht-echtzeit-cpus koennen sich dann darum kuemmern die daten ueber eine der schnittstellen des BBB zur verfuegung zu stellen, oder, z.b. ueber hdmi die (rekonstruierten) wellenformen darstellen oder differenz der integrierten leistung zu der unter einer perfekten sinus mit den entsprechenden ^-werten.
vermutlich waeren da noch kondensatoren zum glaetten hochfrequenter stoerungen sinnvoll um die (digitale) auswertung des gemessenen analogen grauens zu vereinfachen bzw. robuster zu machen.
moeglich das ich das alles viel zu naiv angehe, aber wuerde mich ueber rueckmeldung/kritik/rat freuen.
werde aber wegen arbeitsstress erst um weihnachten rum dazu kommen mich wirklich handfest mit dem thema zu beschaeftigen.
- - - Aktualisiert - - -
ein naiver nachtrag noch:
aus der ausbildung erinnere ich mich das ein widerstandsnetzwerk an digitalen pins einen brauchbaren und beliebig schnellen adc ergeben.
gibts sowas fertig zu kaufen ? ist das zu ungenau ? mit einem digitalen mux sollte man so ja krass viel oder schnell adc-werte bekommen koennen..
Lesezeichen