Neues Modul: 37_RCT für RCT-Power Systeme

Begonnen von marvin78, 08 April 2021, 21:00:24

Vorheriges Thema - Nächstes Thema

thm2014

#60
Nachdem ich im April aufgegeben hatte, hat der neue Versuch heute direkt funktioniert. Vielen Dank für das Modul.

Was habe ich diesmal anders gemacht?

- zuerst die aktuelle Python Version (3.11) installiert => https://stackoverflow.com/questions/64718274/how-to-update-python-in-raspberry-pi
- dann den RCT-Client auf der CLI installiert =>  python -m pip install rctclient[cli]
- Funktionstest auf der CLI => rctclient read-value --host 192.168.XXX.XXX --name battery.soc
- anschließend aus Post #1 im FHEM => update all https://raw.githubusercontent.com/marvin78/FHEM-RCT/master/controls_RCT.txt
- FHEM Restart
- Wieder im FHEM => define <NAME> RCT <HOST-IP>

Vielleicht hilft dieses Vorgehen dem ein oder anderen ....

Slanesh

Hallo zusammen,

vielen Dank für das Modul! Super Arbeit und sehr einfach in Betrieb zu nehmen! Gibt es eigentlich ein Reading an dem ich erkennen kann ob ein Stromausfall vorliegt und das Haus gerade rein über den Wechselrichter und die Batterie versorgt wird? Ich würde gerne darauf reagieren und entbehrliche Verbraucher abschalten.

Viele Grüße
Slanesh
Intel NUC, 2x HM-LAN, 1x CUL-USB, 2x CCU2, 1x Harmony-Hub, 20x HM-LC-Sw1PBU-FM, 5x HM-LC-SW1-PL2, JeeLink mit 15x TX-29-DTH, 7x HM-SEC-SC-2, 3x HM-LC-SW1-BA-PCB, 8x HM-SEC-SD, 3x HM-SEC-MDIR-2, 2x HM-ES-PMSw1-Pl, 8x HmIP-BWTH, 3xHM-CC-RT-DN, 16xHM-LC-Bl1PBU-FM, 8x HM-SEC-SCo, 1xHM-ES-PMSw1-SM

marvin78

Du kannst dir die Readings ja selbst erzeugen. Wenn es in der Registry einen Wert gibt, der genau das sagt, kannst du ihn auch auch als Reading in das Modul holen. Alle Werte, die die Anlage liefert, lassen sich als Reading darstellen. Das Attribut values ist dazu anzupassen, wie auf Seite 1 dieses Threads dokumentiert. Wenn es nicht DEN direkten Wert gibt, der das aussagt, dann gibt es sicher eine indirekte Möglchkeit. Da kann man einfach ein wenig mit den Werten rumprobieren.

Slanesh

Hallo marvin78,

vielen Dank für dein Feedback. Ich habe keinen entsprechenden Wert in der Registry gefunden. Allerdings gibt es in der Event Table das Event "NO_GRID". Kommt man an diese Events über dein Modul auch irgendwie ran?

Danke & Gruß
Slanesh
Intel NUC, 2x HM-LAN, 1x CUL-USB, 2x CCU2, 1x Harmony-Hub, 20x HM-LC-Sw1PBU-FM, 5x HM-LC-SW1-PL2, JeeLink mit 15x TX-29-DTH, 7x HM-SEC-SC-2, 3x HM-LC-SW1-BA-PCB, 8x HM-SEC-SD, 3x HM-SEC-MDIR-2, 2x HM-ES-PMSw1-Pl, 8x HmIP-BWTH, 3xHM-CC-RT-DN, 16xHM-LC-Bl1PBU-FM, 8x HM-SEC-SCo, 1xHM-ES-PMSw1-SM

marvin78

Aktuell wird die Event-Table nicht ausgewertet. Ich muss mal sehen, ob ich irgendwann Zeit und Muße dafür aufbringe, mir das anzusehen.

chris_kmn

Hallo zusammen, Hi Marvin,

auch von mir ein Danke für dieses tolle Modul. Hat auch bei mir schnell und einfach seinen Dienst gestartet :)

Gibt es auch eine Chance mit dem Modul Werte zu schreiben ? Z.B. den Ziel SoC Wert der Batterie oder ihre Kompensationsleistung wären schon recht interessant. Vor allem wenn man E-Fahrzeug laden möchte.

Viele Grüße,

  Chris

marvin78

Aktuell noch nicht. Ich komme ggf. demnächst mal wieder dazu, etwas daran zu machen. Das nehme ich mal mit auf und schaue was der Client dann hergibt.




chris_kmn


marvin78

Aber um das klar zu stellen: Das Modul basiert aktuell auf der CLI des RCT-Clients und diese bietet aktuell nur "read-value". Aktuell sehe ich hier also keine Möglichkeit, das in dieses Modul einzubauen. Ich weiß aber nicht, wie sich der Client weiterentwickelt und ober ich irgendwann Zeit und Muße habe, mich dem Thema auf andere Art zu nähern.

chris_kmn

Ich bin da auch noch nicht ganz schlau was mit dem Client geht und was nicht. Jedoch meine ich, dass die PV Manager evcc und Open WB auch auf dem RCT CLIENT basieren und ich glaube auch, dass diese die Inverter Größen ändern können. Bin mir aber leider nicht sicher.

Der Client scheint auch relativ viel Ressourcen zu schlucken. Mein Raspi hat jetzt fast die doppelte CPU Last. Eine direkte Einbindung ins FHEM (Perl)wäre da sicher effektiver. Nur dazu müsste man Softwerker sein und die Zeit haben :(

ABER ich bin zufrieden mit dem, was aktuell geht. Positiv denken 😀😀😀😀

marvin78

Der Client kann es sicher. Die CLI nicht...

chris_kmn

Ich habe mal etwas recherchiert und im Projekt OpenWB eine wohl recht effektive Implementierung der RCT Abfrage gefunden - leider auch in Python.

Ist es viel Aufwand das ganze nach Perl zu portieren ?

https://github.com/snaptec/openWB/tree/master/modules/bezug_rct2

Die Kommunikation spielt sich in den zwei Dateien rct_lib.py und rct_read.py ab. Allerdings werden bei OpenWB die Daten in eine Ramdisk geschrieben bzw. per MQTT gepublished.

marvin78

So wie ich das sehe (habe nur kurz drüber geschaut), ist das auch nur "read".

Ehrlich gesagt werde ich mich damit beschäftigen, wenn ich Zeit und Muße dafür habe. Ich baue solche Module für mich und zur Übung. Ich bin mit den Möglichkeiten der CLI zufrieden, mag kein Python. Ggf. kannst du dich ja selbst ein wenig damit beschäftigen. Du kannst gerne mein Modul nehmen oder ein eigenes bauen. Bei mir kann es noch eine ganze Weile dauern, bis ich da ran gehe, oder auch nie.

chris_kmn

Ja das ist richtig, nur read.

Du das soll hier auch kein Betteln in deine Richtung sein und schon gar nicht Kritik an deinem Modul. Ich bin sehr dankbar dafür.

Ich sehe das genau wie du, wer Lust, Zeit und Wissen hat, der beteiligt sich hier, das ist für fast alle hier Hobby. Mal schauen ob ich mich da ran bewegen und etwas umsetzen kann. Es gibt ja dieses FHEM Modul für Python. Evtl. Kann man in Python die Routine von der OpenWB nutzen und dann per push die Werte ins FHEM schreiben. Was ich bislang gesehen habe zeigt, dass die bekannten Projekte OpenWB und EVCC auch nur read nutzen.

Ich werde mal ein wenig basteln :)

chris_kmn

Ich hatte die Tage Kontakt mit dem netten Entwickler des fhempy moduls Dominik.
(https://github.com/dominikkarall/fhempy
´
Er war so nett und hat den rctclient mit in seine Bibliothek aufgenommen. Ich habe das Modul heute getestet und bin begeistert, dass die CPU Last nun wieder deutlich niedriger ist.
Die "Installation" ist mit einem define erledigt, wenn man fhempy schon nutzt.

Vielen Dank an dieser Stelle an Dominik ! Super Arbeit !

Es soll nicht unerwähnt bleiben, dass die Umsetzung von Marvin Vorteile hat bzgl. der spezifischen Auswahl und Parametrierung der Readings. Man kann das dort wunderbar einstellen und auf seine Bedürfnisse
anpassen. Ist jetzt halt "Geschmackssache" was einem wichtiger ist. Evtl. macht ja auch Dominik noch etwas weiter an dem Modul und implementiert auch eine write-Routine. Dann kann man auch noch tiefer in Themen wie Überschussladen mit FHEM einsteigen :-)