Wirkleitstungscontroller

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    ich bin neu hier, habe einen Raspberry und eine Idee.

    Da ich leider noch nicht viel Ahnung habe geht es mir in erster lienie um die Einschhätzung ob das überhaupt machbar ist, und wenn ja, wie es gemacht werden kann.

    Ausgangssituation:
    Ich bin stolzer Besitzer einer PV-Anlage. Diese darf höchstens 70% ihrer Leistung in das öffentliche Netz einspeisen. Entweder man verbraucht die anderen 30% oder diese dürfen gar nicht hergestellt werden.

    Ziel:
    Ich habe mir gedacht, dass man mittels des SMA Home Magers die Aktuell eingespeiste Leistung erfasst und den Überschuss an einen Heizstab im Wasserboiler leitet.

    Vorhanden:
    SMA Home Mananger 2.0, Raspberry Pi, und 6KW Heizstab.

    Bisherige Gedanken:
    Schritt 1: Aktuell eingespeiste Leistung erfassen.
    Schritt 2: Entscheidung ob der Heizstab angesteuert wird oder nicht.
    Schritt 3: PWM-Ansteuerung des Heizstabes um nahe an der 70% Grenze einzuspeisen.


    Bitte um eure Realistische Einschätzung und vorschläge zur Umsetzung, Danke!

  • Hallo,
    deine Frage kann so nicht umfassend beantwortet werden.
    Von der rechtlichen Seite mal abgesehen, gehe ich mal davon aus, dass du schon einspeist.
    Somit wird dein Stromversorger die Einspeisung prüfen.
    Ich vermute mal, dass die Überproduktion zu seinen Gunsten verschwindet. (meine persönliche Meinung)
    Sollte es ein Zähler mit Sichtfenster sein, könnte man eine Bilderkennung mit Kamera realisieren.
    Wie hoch ist den die max Leistung deiner PV bei optimaler Sonnenstrahlung.?
    Davon darfst du nur 70% einspeisen? (merkwürdig)
    Davon abgesehen, wird die maximale Leistung von der PV ohnehin nur selten erreicht.
    (viel Sonne senkrecht aufs Panel)

    Gruß
    Relbmessa

    PS
    der Heizstab 6kW
    230 Volt oder 400 Volt
    für die Leistungssteuerung würde ich doch ein zugelassenes Teil empfehlen.
    Lieber den Fachmann fragen!

  • Hallo Homemade,


    herzlich Willkommen in unserem Forum!

    Zitat von "Homemade" pid='296144' dateline='1503236056'


    Diese darf höchstens 70% ihrer Leistung in das öffentliche Netz einspeisen. Entweder man verbraucht die anderen 30% oder diese dürfen gar nicht hergestellt werden.


    Finde ich merkwürdig... sehr merkwürdig.

    70 % von was? 70 % der maximal möglichen Leistung? Die wirst Du im Jahresmittel nicht erreichen können -. also kann auch niemand kontrollieren.

    70% der aktuellen Leistung? Dann herzlichen Glückwunsch an die Vertragsprüfung...

    Dann könntest Du ja gleich 30 % Deiner PV-Fläche abklemmen und Batterien, Akkus laden, Wasser kochen lassen etc. Das hat den Charme, ohne jegliche Ausfälle und weiteren Stromverbrauchs zu funktionieren.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Auch von mir ein Willkommen im Forum.
    Wenn Du einen analogen Zähler hast, wäre diese Lösung zur Erfassung der Leistung vielleicht interessant:
    Analogen Ferraris Stromzähler auslesen

    Den Anschluss des Heizstabes solltest Du einem Fachmann überlassen.

    Die 70% Einspeisung sind eine Vorgabe des EEG.

  • Zitat von "Andreas" pid='296158' dateline='1503245536'


    Finde ich merkwürdig... sehr merkwürdig.

    Tja, die Gesetzgebung ist ein weites Feld, welches man nicht immer nach seinem Endverbrauchersinn fragen sollte.
    https://www.photovoltaikforum.com/eeg-einspeisev…70--t72082.html

    Warum mit PWM speisen? Welche Taktraten gelten denn zur Bestimmung der 70%? Könnte man nicht per Schütz eine viertel Stunde heizen und es dann wieder 100% einspeisen? Paß aber auf, daß der Boiler nicht zu heiß wird! Verbrühung, Verkalkung...

  • Frage 1: Kannst Du denn das SMA-Teil mit dem Pi theoretisch auslesen? Soweit ich weiss bietet SMA da eine eigene Lösung, die sie sich gut bezahlen lassen. Da wirst Du nicht so einfach an die Daten rankommen.

    Frage 2: Wie oben, auf was beziehen sich die 70%? Momentane Leistung, Tagesmenge, Jahresmenge? Falls es die momentane Leistung ist, kommst Du denn nennenswert über die 70% der installierten Leistung, damit sich das lohnt?

  • interessantes Thema - ich hab ja auch schon mal mit dem Gedanken an eine PV anlage gespielt...

    hier mal was zur aktuellen Gesetzgebung LINK da ist auch ein Beispiel aufgeführt
    demzufolge muss man in der Lage sein die Einspeiseleistung auf 70 % zu begrenzen Basis dafür ist die Leistung für die die Anlage ausgelegt ist

    Basis für alles wäre mE nach erstmal eine zugelassene bzw vom Netzbetreiber akzeptierte Erfassung der Wirkleistung
    ich glaub nicht das man sich da einfach etwas zusammnenbauen kann(darf).... (naja wenn ich an den Dieselskandal denke - rechnet man sich dann einfach die Leistung herunter und *hahaha )..

    lg

  • Hallo,

    vielen Dank für die vielen und schnellen Antworten.
    Leider habe ich anscheinend nicht genügend Details hinterlassen, da noch sehr viele Fragen offen sind, sorry!

    @ Relbmessa

    Zitat

    Von der rechtlichen Seite mal abgesehen, gehe ich mal davon aus, dass du schon einspeist.
    Somit wird dein Stromversorger die Einspeisung prüfen.


    Ja, ich bin bereits einspeiser, und der Stromversorger hat die Einspeisung überprüft.

    Zitat

    Ich vermute mal, dass die Überproduktion zu seinen Gunsten verschwindet. (meine persönliche Meinung)


    Kann ich so nicht genau sagen. Meines wissens nach wird im Wechselrichter die Grenze eingestellt und mehr produziert dieser dann auch nicht.

    Zitat

    Wie hoch ist den die max Leistung deiner PV bei optimaler Sonnenstrahlung.?
    Davon darfst du nur 70% einspeisen? (merkwürdig)
    Davon abgesehen, wird die maximale Leistung von der PV ohnehin nur selten erreicht.
    (viel Sonne senkrecht aufs Panel)


    Bei mir sind es wie bei so vielen die aufgerundet 10KW, die in dieser Jahreszeit bei Sonneneinstrahlung Täglich um Mittag rum erreicht werden können.

    Zitat

    PS
    der Heizstab 6kW
    230 Volt oder 400 Volt
    für die Leistungssteuerung würde ich doch ein zugelassenes Teil empfehlen.
    Lieber den Fachmann fragen!


    Der Heizstab ist nagelneu gekauft. Er ist 3-Phasig (~400V). Somit könnte man auch grob sagen, dass er so viel leistung wie 3 Wasserkocher hat.

    Andreas

    Zitat

    0 % von was? 70 % der maximal möglichen Leistung? Die wirst Du im Jahresmittel nicht erreichen können -. also kann auch niemand kontrollieren.
    70% der aktuellen Leistung? Dann herzlichen Glückwunsch an die Vertragsprüfung...
    Dann könntest Du ja gleich 30 % Deiner PV-Fläche abklemmen und Batterien, Akkus laden, Wasser kochen lassen etc. Das hat den Charme, ohne jegliche Ausfälle und weiteren Stromverbrauchs zu funktionieren.


    Die 70% sind von der installierten Dachleistung/Patten auf dem Dach gerechnet. Die Abregelung dient meiner meinung nach dazu, dass nicht zu viele Schwankungen das Stromnetz überfordern. Abklemmen wäre nur bei gutem Wetter notwendig, da morgens oder abens oder bei schlechtem Wetter die installierten 10KW sagen wir mal rund 5KW produzieren. (nur als Beispiel)

    @ schnasseldag

    Zitat

    Warum mit PWM speisen? Welche Taktraten gelten denn zur Bestimmung der 70%? Könnte man nicht per Schütz eine viertel Stunde heizen und es dann wieder 100% einspeisen?


    Von der Taktrate her habe ich keine Ahnung. Da mich hier der Ehrgeiz gepackt hat möchte ich so nahe wie möglich an der Grenze arbeiten und nicht eine definierte Zeit drüber und dann wieder drunnter, denn bei Wechselhaftem Wetter kann die leistung der PV im Sekundentakt um etliche KW schwanken.

    Timm Thaler

    Zitat

    Frage 1: Kannst Du denn das SMA-Teil mit dem Pi theoretisch auslesen? Soweit ich weiss bietet SMA da eine eigene Lösung, die sie sich gut bezahlen lassen. Da wirst Du nicht so einfach an die Daten rankommen.


    Ich habe hier im Netz etwas über den "Vorgänger" des SMA Home Managers 2.0 gefunden.
    https://www.photovoltaikforum.com/sma-anlagenueb…re-t113027.html
    Habe es aber noch nicht ausprobiert, da ich den Home Manager bei mir noch nicht installiert habe.

    Zitat

    Frage 2: Wie oben, auf was beziehen sich die 70%? Momentane Leistung, Tagesmenge, Jahresmenge? Falls es die momentane Leistung ist, kommst Du denn nennenswert über die 70% der installierten Leistung, damit sich das lohnt?


    Ich gehe von der Momentanen Leistung aus. (Beispiel: Da ja nachts keine Sonne scheint habe ich meiner Meinung nach eine Tagesleistung von weniger 50%.)

    RonS

    Zitat

    Basis für alles wäre mE nach erstmal eine zugelassene bzw vom Netzbetreiber akzeptierte Erfassung der Wirkleistung


    Ich gehe davon aus, dass die Fa. SMA Ihre Freigaben/Zertifikate hat, denn aktuell ist bei mir vom Netzbetreiber her keine Überwachung montiert.

    Hier noch ein paar Infos meinerseits.
    Das mit PWM habe ich mir in Verbindung mit einem Thyristorsteller gedacht. Da der Raspberry aber keine 10V ausgeben kann habe ich hier noch an was von der Fa. Wago gedacht. Leider weiß ich nicht mehr wie des ding heißt. Es kann aber aus z.b 0V-5V am Eingang rund -10V bis +10V am Ausgan zaubern.

    Ach ja ...
    Sorry für den Roman, ich wollte aber auf so viele Fragen wie möglich antworten.
    Und vielen Dank im Voraus für weitere hilfreiche Tipps.

    Gruß

  • Sorry, mir ist da immer noch Einiges unklar.

    Wenn der Wechselrichter auf 70% Nennleistung fest eingestellt ist, bekommst Du doch nie die volle Leistung raus. Der Wechselrichter weiss doch nicht, ob die Leistung die er umsetzt von Dir verbraucht wird oder ins Netz geht.

    Wenn das aber so ist, dann kannst Du überschüssige Energie nur vor dem Wechselrichter abgreifen. Das halte ich für nicht machbar, da Du damit die MPPT Regelung des Wechselrichters störst. Und schon gar nicht mit einer pulsenden Lösung. Du müsstest einen Teil der Zellen abklemmen und auf Deinen Heizstab umschalten. Mach das auf keinen Fall mit einem normalen Relais. Der Lichtbogen wird es zerstören.

  • Hallo,

    es ist bei weitem nicht so experimentell oder gefährlich wie es rüber kommt. Ich will mich auch nicht im Illegalen Bereich bewegen!

    Timm Thaler

    Zitat

    Wenn der Wechselrichter auf 70% Nennleistung fest eingestellt ist, bekommst Du doch nie die volle Leistung raus. Der Wechselrichter weiss doch nicht, ob die Leistung die er umsetzt von Dir verbraucht wird oder ins Netz geht.


    Hier kommt der SMA Home Manager ins Spiel.

    Zitat

    Wenn das aber so ist, dann kannst Du überschüssige Energie nur vor dem Wechselrichter abgreifen. Das halte ich für nicht machbar, da Du damit die MPPT Regelung des Wechselrichters störst. Und schon gar nicht mit einer pulsenden Lösung. Du müsstest einen Teil der Zellen abklemmen und auf Deinen Heizstab umschalten. Mach das auf keinen Fall mit einem normalen Relais. Der Lichtbogen wird es zerstören.


    Auf diese Idee bin ich noch gar nicht gekommmen und möchte ich auch nicht umsetzen, da es sich sehr gefährlich anhört.
    Wenn dann muss der Heizstab ganz normal über das Stromnetz angeschlossen werden. (wie ein Wasserkocher, den man aber regeln kann.)


    Hier nochmal kurz anhand von 3 Beispielen mein "Ausgangssystem" bis zum "Wunschsystem" beschrieben.
    (Ohne Berücksichtigung vom Wirkungsgrad und mit runden Zahlen, ausgehend von max 10KW und natürlich voller Sonneneinstrahlung)

    Beispiel 1: (Aktueller Zustand)
    Die Sonne Scheint, der Wechselrichter liefert 7KW (70%). Davon verbrauche ich 2KW Eingespeist werden somit 5KW.
    Ergebnis: Einbußen bei der Einspeisung.

    Beispiel 2: (Anlage mit SMA Home Manager 2.0 - voraussichtlich nächste Woche)
    Die Sonne Scheint, der Wechselrichter liefert 7KW. Ich Schalte einen Verbraucher von 2KW ein. Der Wechselrichter regelt nach Rücksprache mit dem Home Manager nach und liefert 9KW. Eingespeist werden 7KW (70%).
    Ergebnis: Die Anlage ist nicht voll ausgelastet.

    Beispiel 3: (Anlage mit SMA Home Manager 2.0 und Raspberry + Heizstab)
    Die Sonne Scheint, der Wechselrichter liefert 7KW. Ich Schalte einen Verbraucher von 2KW ein. Der Wechselrichter regelt nach Rücksprache mit dem Home Manager nach und liefert 9KW. Der Raspberry merkt, dass 7KW eingespeist werden, nun schlaltet er den Heizstab zu bis die eingespeiste Leistung auf 6,9KW fällt. Der Wechselrichter kann wieder in Rücksprache mit dem Home Manager nachregeln und liefert 10KW. Eingespeist werden 6,9KW (<70%).
    Ergebnis: Ich zahle nichts für den Strom, die Anlage Läuft auf 100%, das Wasser wird auch noch schön warm - Ziel erreicht!


    Nun nochmal die Frage anders ausgedrückt.
    Was muss ich meinem Raspberry beibringen, dass er die Komunikation vom Home Manager versteht/mithört.
    Und was muss ich Ihm beibringen, damit der Heizstab immer nahe an der Grenze Läuft? (maximale Einspeisung)

    Vielen Dank!

    ps.
    Viele werden Fragen warum ich nich mehr Energie auf den Heizstab leiten will. Antwort: Ich habe noch eine Hackschnitzelheitzung.
    Aber für die PV habe ich ja auch 100% gezahlt und nicht 70%, somit möchte ich auch das höchstmögliche von der Anlage "ernten" und nicht bei 70% abgewürgt werden.

  • Ah, so wird das schon klarer. Allerdings hab ich dann eine schlechte Nachricht: Du brauchst dafür keinen Raspi.


    Zitat

    Energie lässt sich insbesondere dann einsparen, wenn der Sunny Home Manager 2.0 den Sonnenstrom nach seiner Einplanung auf die Haushaltsgeräte verteilen kann... Der Sunny Home Manager 2.0 ist kompatibel mit ausgewählten WLAN Funksteckdosen aus dem Elektronikhandel (siehe Zubehör). Die Funksteckdosen schalten Geräte über Steuersignale vom Sunny Home Manager 2.0 an und aus. Für eine Steuerung im Energiemanagement eignen sich beispielsweise Waschmaschine, Geschirrspüler, Trockner, Heizstäbe, Pumpen und vieles mehr.

    Nimm so eine Funksteckdose, schalte damit ein 3-phasiges Schütz und damit den Heizstab. Oder nimm eine dreifach-Funksteckdose und schalte damit die einzelnen Phasen des Heizstabes über Schütze stufenweise zu.

    Eine Phasenanschnitt-Regelung des Heizstabes ist bei diesen Leistungen nicht zugelassen, und würde ich Deinem Wechselrichter auch auf keinen Fall zumuten. Eine Schwingungspaket-Steuerung wäre möglich, aber wenn Du Pech hast hörst Du die bei dieser Schaltleistung im ganzen Haus. Glaubst Du nicht? Ich höre die Schwingungspaket-Steuerung der Heizung von Nebenan in diversen Trafos und der Lötstation.

  • Guten Abend,

    erst mal einen herzlichen Dank an Timm Taler. Seine Lösung funktioniert aber ich möchte das Ganze dann doch noch etwas verfeinern.

    Ich habe mich hier zwar länger nicht gemeldet aber dennoch weiter an dem Projekt gearbeitet. Ich wollte nicht unnötig Beiträge produzieren die nur verwirren.

    Hier mal mein aktueller Stand.

    Schalten der Last:

    Ich habe mich mal etwas tiefer mit Bauteilen beschäftigt, die solche Leistungen "störungsarm" schalten können. Bin hier dann auch bei zwei Sachen fündig geworden. Zum einen können Frequenzumrichter diese Lasten schalten, zum anderen die Halbleiterrelais.

    Nach längerer Suche im Netz bin ich bei Siemens Halbleiterrelais hängen geblieben. Es gibt hier eine Serie die man auch Zuhause verwenden darf. Das ganze nennt sich dann "Low Noise". Hier der Link. Auf dem Reiter "Produktinformation" kann man folgendes unten im Text unter EMV finden:

    Somit habe ich mich guten Gewissens für diese Produkt entschieden. Hier noch die Bezeichnung von mir: 3RF2320-1CA04

    Ansteuerung des Halbleiterrelais:

    Der Raspberry kann ja PWM. Leider nur mit geringer Spannung. (<5V) Das Halbleiterrelais benötigt eine Steuerspannung von 24V.

    Dazu habe ich durch einen Tipp von einem Arbeitskollegen im Netz mal nach Optokoppler gesucht. Siehe da! Fündig geworden!

    Ich verwende nun einen Optokoppler der Marke: LEG; Bezeichnung OK1-2; Hier der Link zum Hersteller: Link

    Versorgungsspannungen: (Netzgeräte)

    Dieser Optokoppler benötigt eine Versorgungsspannung von 24V. Hier habe ich ein Hutschienen-Netzteil bei E-Bay gekauft. Da alles in einen kleinen Schaltschrank soll habe ich gleich noch eines mit 5V für den Raspberry gekauft.

    Raspberry Mechanik:

    Der Raspberry hat von mir auch ein Hutschienen Montageset bekommen. Dann sieht auch alles halbwegs vernünftig aus und hängt nicht irgendwie in der Gegend rum.

    Raspberry Software/Programmierung:

    Dies entpuppt sich für mich schwieriger als gedacht ...

    Wie weiter oben schon gepostet gibt es schon ein Python Skript im Netz mit dem man die Werte des Home Managers auslesen kann. Link

    Es gibt auch einiges im Netzt mit dem man GPIO PWM machen kann. Vieles findet man unter dem Suchbegriff "Raspberry PWM LED".

    Jedes Programm für sich läuft stabil, aber es ist mir !!!noch nicht mal ansatzweise!!! gelungen diese beiden zu kombinieren.

    Ziel der Software/Programmierung:

    Bei Schwellwertüberschreitung das PWM +1%. Bei Schwellwertunterschreitung das PWM -1%. (Natürlich dürfen die beiden Schwellwerte nicht identisch sein, damit er nicht nur die ganze Zeit am regeln ist.)


    Kann mir hier bei der Software/Programmierung Jemand Hilfestellung geben?

    (Oben genannte Hersteller und Produkte sollen keine Werbung sein, sondern bei Nachbau die Suche im Netz erleichtern.)


    Wenn es noch jemanden interessiert, hier die Kosten bis jetzt:

    Raspberry PI 3: = 38,88€ (ich verwende aktuell einen Raspberry 1 Model B)

    SD Karte für Raspberry: von ca. 5,--€ bis 20,--€

    Raspberry Hutschienenmontagegehäuse: 13,--€

    Optokoppler LEG: 10,--€ (gebraucht bei E-Bay)

    Halbleiterrelais Siemens: 20,--€ (gebraucht bei E-Bay)

    2* Schaltnetzeil (5V und 24V): ca. 30,--€ (neu bei E-Bay)

    Schaltschrank: ??? (noch nicht gekauft)

    Elektro Heizstab 6KW: 100,--€ (neu bei E-Bay, jedoch überdimmensioniert; 2KW hätten meiner meinung nach letzendlich auch gereicht)

    Kabel, Kleintiele: 20,--€ (Schätzpreis)

    Somit würde ich sagen, dass man schon rund 300,--€ für dieses Projekt einplanen sollte.

  • Hallo homemade,

    wenn Du per SSR schaltest, dann werden diese vermutlich eine Nullpunktschaltung integriert haben. D.h. Ein- und Ausschaltpunkt liegen in der Nähe der Phasenumkehr. Soweit so gut. Verwende nochmals einige Gedanke darauf, wie lange Du den Heizstab zuschalten willst und wann Du ihn abschaltest. Wieso? Je nach Regelungstakt Deines Wechselrichters/Homemanagers wird schneller oder langsamer bestimmt, ob Deine Photovoltaikanlage nun über 70% Leistung einspeist oder eben weniger. Ich vermute, das System wird das wohl über eine gewisse Zeit aufintegrieren (wie schnell, daß weiß ich nicht). Sollte dem so sein, dann könntest Du Deine Leistung tatsächlich paketweise zuschalten und abschalten, um eine Art der Lastmodulation zu erreichen. Bewegt man sich nun aber auf "Halbwellen", dann sollte die Belastung nicht immer im gleichen Quadranten erfolgen. Vollwellen wären da schon besser (um die Last gleichmäßig zu verteilen). Nun stellt sich aber die Frage, wie Dein Raspi Kenntnis über die Phasenlage Deines Netzes erhält? Besitzt er diese Kenntnis nicht, dann mußt Du die Zeitspanne Deines "Modulators" entsprechend länger wählen, um z.B. 10 Wellenpakete durchzulassen, damit der Fehler kleiner ausfällt, als beim Versuch der Taktung eines einzelnen Paketes. Je länger Du aber Deine "Modulator-Pulsbreite" setzt, umso eher könntest Du in das Problem fallen, mit dem "70%"-Integratortakt Deiner Photovoltaikanlage zu kollidieren (Shannon).

    Abhilfe schafft die Kenntnis über den Phasendurchgang. Dann kannst Du ganz gezielt einzelne Pakete durchstellen oder eben nicht. Im Zuge der Untersuchung der Wellenpaket- bzw. Phasenanschittssteuerungsmöglichkeit diverser Motoren hatte ich mal einen Testaufbau erstellt. Die Phasenerkennung (mit OK getrennt vom Mikrokontroller) ist im anhängigen Bild zu sehen.

    Nebenbei - tatsächlich weisen einige Motoren bauartbedingt Geräuschentwicklung auf, wenn sie per Wellenpaketsteuerung betrieben werden. Daß hat aber zwei Gründe:

    a.) die Rotoren bewegen sich beim Anlaufen axial auf ein Lagerende (Klopfgeräusch) und

    b.) die Paketzusammensetzung paßt nicht zur Wicklung des Motors, was über einen gewissen Gleichanteil in der erzeugten Wechselspannung zu einer Erwärmung des Motors sowie zu einem Brummgeräusch führt.

    Bei einer Belastung durch einen (ohmschen) Heizstab ohne bewegliche Teile würde ich von keinerlei Geräuschentwicklung ausgehen. Auch ist das Thema EMV bei Nulldurchgangsschaltung ohmscher Lasten ein erheblich geringeres als das von Phasenanschnitten und/oder nicht-ohmschen Lasten.

    Schöne Grüße

    schnasseldag

    PS: Das Bild soll jetzt keine Ermutigung sein, Niederspannung zu handhaben, wie auf dem Bild zu sehen!!! Es soll lediglich verdeutlichen, daß es kein Hexenwerk ist, eine Nulldurchgangsschaltung aufzubauen und mittels SSR und µC eine Last zu schalten.

  • Kennt zufällig jemand ein PWM Modul das man per RS485 anseuern kann?

    1 Kanal ist ausreichend ...

  • Und ? RoundUnit50306 Schon eine Lösung?


    Hab selbige Idee ?. Mann kann das Leistungssignal vom Energymeter/Homemanager Modbus TCP auslesen und bei 70 % ein PWM von 0 und bei 100% ein PWM von 100 machen, so dass du immer bei den 70 % Einspeiseleistung bist. Selbst mit einer Logo könnte man das vom Bus abfragen.

  • Guten Abend zusammen,

    nach langer Zeit habe ich endlich wieder die Zeit gefunden hier weiter zu Machen.

    @ danny_0678 Und ich konnte das hier nicht so unvollendet stehen lassen, da ja auch schon nachfragen dazu gekommen sind.

    Im Prinzip habe ich ein vorhandenes File (sma-em-measurement) im SMA-EM von https://github.com/datenschuft/SMA-EMmodifiziert, Voraussetzung ist natürlich die korrekte Installation des SMA-EM.

    Das modifizierte File liegt bei mir jetzt neben dem originalen. (/opt/smaemd) Hier benötigt man ggf. Root rechte um das da rein zu speichern.

    An alle die sich jetzt schon aufregen.

    Ich bin mir bewusst, dass dies nicht der schönste und sauberste Weg ist, aber zu mehr reichen meine Programmierfähigeiten leider nicht. Bitte entschuldigt das somit.

    Gerne, wenn jemand einen "sauberen" Weg hat, darf dieser hier mit allen geteilt werden.

    Aktuell lasse ich es noch im "Thonny" laufen, sollte aber mit Doppelklick auch im Terminal laufen.

    Ggf. anzupassen:

    - Zeile 44 und 45 --> gewünschten GPIO Pin eingeben (Achtung GPIO-Pin nicht Board-Pin!)

    - Zeile 49 --> Schwellwert ab wann die Regelung anspringen soll / ab wann der Heizstab anspringen soll (Beispiel: PV-Anlage 10000W, Gesetzgeber 70% Regelung, Einstellwert 7000W)

    - ab Zeile 145 bis 172 --> hier können die Eigenschaften der Regelung angepasst werden

    Bauteile sind immernoch gleich wie in Beitrag #13.

    Da ich mich ja immernoch als blutiger Anfänger in sachen Programmieren verstehe bitte ich darum Fragen hier im Forum zu schreiben, evtl. können erfahrene Mitglieder auch weiterhelfen.

    Generell, und da ich noch nicht ausreichend Zeit zum Testen hatte gilt:

    Anwendung auf eigene Gefahr!

    Keine Garantie oder Gewährleistung!

    Gruß

    Homemade

  • Hallo,

    ich bin zwar kein Profi, lasse dir aber mal meinen Senf zu deinem Code da. Falls es dich packt und du deine Kenntnisse erweiter willst und/oder deinen Code umschreiben willst, hier mal ein paar Anregungen.

    '#coding=utf-8' ist in Python3 nicht nötig, das ist schon standardmäßig so. Kommentare sind dazu da um den Sinn hinter einer oder mehreren Codezeilen zu beschrieben, wenn diese nicht offensichtlich sind. So etwas:

    # Standardimporte

    import signal

    ist zum Beispiel nicht zu kommentieren. Auch ist es total verwirrend wenn 3754 Codezeilen auskommentiert sind. Wenn die nicht gebraucht werden, dann weg damit. 'speedwiredecoder' wird importiert, aber nicht genutzt. Verwende keine *-Importe. Dadurch holst du dir alle Namen aus dem Modul ink. der Namen die in dem Modul schon importiert wurden, in deinen Namensraum. Das kann zu Namenskollisionen führen und ergibt auch einen unübersichtlichen Code, wenn man nicht weis, wo welcher Name her kommt. Mit 'as' werden importierte Module umbenannt. Du nennst GPIO in GPIO um. Du kannst das so abändern: from RPi import GPIO. Anstelle von GPIO solltest du dir mal das neuere und schönere 'gpiozero' anschauen.

    Mit 'setwarnings(False)' deaktivierst du Fehlermeldungen, wieso? Im Auto wird doch auch nicht die Motorkontrollleuchte überklebt. Fehler sollte man beheben, in deinem Fall kann das schon durch den Aufruf von 'cleanup()' erfolgen. Allerdings nicht in einer Ausnahmebedingung, sondern das muss beim beenden des Programms aufgerufen werden. Dazu gibt es 'finally'.

    Auf Modulebene sollte nur Code stehen, der Klassen, Funktionen oder Konstanten definiert. Dein Programm sollte in Funktionen unterteilt werden. Die Funktion 'main' steuert dabei den Ablauf des Programms.

    Konstanten schreibt man KOMPLETT_GROSS, Funktionen und Variablen klein_mit_unterstrich und Klassen in CamelCase-Schreibweise.

    Zu dem sollten Namen aussagekräftig sein, soetwas wie 'Stellwertschwelle_o' ist es nicht unbedingt. Man kann den Sinn eventuell erraten, aber naja.

    Eingerückt wird immer mit vier Leerzeichen.

    'abortprogramm' erwartet zwei Argumente bekommt diese beim Aufruf aber nicht und es wird in der Funktion auch nicht mit diesen Argumenten gearbeitet.

    'smaserials' wird definiert aber nicht weiter verwendet. Die anderen Konstanten werden auf oberster Modulebene definiert und nicht in einem 'try'-Block. In diesem Zuge sollten keine try/except's benutzt werden ohne die eigentlichen Fehler abzufangen.

    Dein Block kann aus allen möglichen Gründen nicht abgearbeitet werden, du erhälst aber immer nur die Fehlermeldung:'Cannot find config /etc/smaemd/config... using defaults'

    Wenn du einen Zähler um eins erhöhst, dann heißt das nicht, dass der im Sekundentakt erhöht wird. Das ist also keine Methode um eine Zeit zu messen.

    Sorry ich verstehe leider nicht was in dem Programm alles gemacht wird, und wieso eine Endlosschleife in einer Endlosschleife ist. Um Zeile für Zeile nachzuvollziehen fehlt mir heute Abend die Zeit. Aber ich wollte ja nur mal eine Anregung geben, was man verändern kann/könnte/sollte wie auch immer. Achja 'if'-Schleifen gibt es nicht, es wird nur eine Abfrage getätigt ob eine Bedingung erfüllt wird und dabei wird keine Schleife gedreht.

    Deswegen kann ich dir nur grob zeigen, wie das Programm abgeändert werden sollte:

    Wie du siehst wird die Funktion 'beispiel_funktionsname' in einer Dauerschleife ausgeführt. Da muss jetzt aber nicht zwingend der übrig gebliebene Code rein. Du kannst den Code sinnvoll in Funktionen aufteilen und eine nach der anderen aufrufen.

    Hilfreich ist auch das offizielle Python-Tutorial.

    Wenn du Glück hast, schaut hier noch ein Profi vorbei und vervollständigt mein Beispiel.

    Grüße

    Dennis

    🎧 With the music execution and the talk of revolution, it bleeds in me and it goes 🎧

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!