RS232 Schnittstelle, Terminalprogramm und Wechselrichter

  • Ja, aber schwierig. Man musste die Prüfsumme für jeden Befehl von Hand berechnen.

  • Hallo Deutscher1968,

    ich habe mal den Quellcode zu meinem Programm angehängt, was auf einem Attiny85 läuft. Dort findest Du einige Codepassagen mit den Befehlen samt CRC-Bytes. In board.c am Ende ist auch die CRC-Routine, die Du nutzen kannst. Ich habe es nicht getan, weil ich nur feste Befehle brauchte. Das Programm hat so schon chronischen RAM-Mangel - aber läuft.

    Es überwacht die Batteriespannung, Strom und Ladung. In Abhängigkeit von Ladungsstand und Spannung wird zwischen Netz und Invertermodus gewechselt. Da dafür kein direkter Befehl existiert, manipuliere ich den Parameter PBCV zwischen 50V und 47V und zwinge so den Wechselrichter zum Moduswechsel.

    VG, Bernd

  • Hallo Klaus, Hallo Bernd,


    hier ist wieder der Deutsche1968 :-), ich habe das mit Hterm jetzt hibekommen, habe immer probiert mit dem Sende-Button die Daten zu senden, über Return hat es funktioniert :) die CRC habe ich händisch berechnet, für jeden Wechselrichter, ist ja nur ein Befehl. Dann bekomme ich in Klartext (ASCII) die Antwort.


    Dann habe ich probiert über ein ESP8266(Nodemcu) die Daten zu senden und die Antwort erstmal über Serial ausgeben zu lassen, erstmal erfolglos, da mach ich bestimmt was falsch. Bernd kannst du dir mal das Progrämmchen anschauen, mache ich da was falsch?.





    Hallo,


    noch was kurz zur Schaltung, natürlich hängt da noch ein MAX3232 zum Umwandeln der Pegel dazwischen.


    Gruß

    Antonio

    Einmal editiert, zuletzt von Neuendorfer () aus folgendem Grund: Ein Beitrag von tedesco1968 mit diesem Beitrag zusammengefügt.

  • Tut mir leid, aber mit der Arduinosprache kenne ich mich nicht aus. Ich programmiere meine Atmels immer im AVR-Studio mit gcc. Allerdings habe ich letztens mal mit den AT-Befehlen ein ESP-01 zum Laufen gebracht. Die arbeiten auf IP-Ebene als Server oder Client im WLAN. Auf Wechselrichterseite brauchst Du einen kleinen Mikrocontroller, der das ESP-Modul konfiguriert. Danach kann man in den Transparentmodus wechseln, welcher die Daten einfach durchreicht IP<->RS232. Oder Du nimmst zwei HM-TRP-Module als drahtlose RS232-Schnittstelle. Als Antenne reichen 9cm Draht. Warum willst Du überhaupt auf die WR zugreifen?

    VG, Bernd

    DIY-800W-BHKW, Citroen C-Zero, 35qm PV, 7kWh LiFePo (15x250Ah), PIP-4048MS, 4kW Daikin comfora Heiz-Kühl-Klimaanlage

  • Hallo Bernd,


    ich möchte die Werte meines Solar Wechselrichter auslesen und dann per MQTT an den Iobroker senden.

    Wieso? Um z.B. bei guter Solar Erzeugung den Überschuss zu Steuern.

    Das mache ich zwar schon mit der Solaranzeige (Projekt Solaranzeige.de)über PHP, würde das aber gerne über ein ESP selbst realisieren.


    Gruß

    Tedesco

  • Hallo Bernd, ich habe aktuell ein auch ein Problem mit der Checksumme und bin durch Google mal wieder auf diese Forum gestoßen wo ich vor viele Jahren sehr aktiv war. Lustig..


    Du hast am 19.10. geschrieben, dass du keine Parameter für die direkte Umschaltung zwischen Netz- und Inverter Betrieb hast. Also ich habe einige Effekta Geräte und schalte immer mit POPnn "Setting device output source priority" zwischen Netz- und Inverter Betrieb um. Läuft über RS232 super seit Jahren. Dann muss man nicht immer an den Setting der Spannungen rumändern.


    Jetzt habe ich einen neuen weiteren Effekte WR der kein RS232 mehr hat und ich muss es über USB machen, und da habe ich offensichtlich Probleme mit der Berechnung der Checksumme. Ich bekomme immer nur (NAKss zurück und selbst für die Antwort soll die Checksumme falsch sein.

    Mal sehen ob ich den Knoten finde.


    Viele Grüße

    mofaklaus

    BHKW : Dachs Gas 5,5kW
    SolarTherm.: 10m² Kago mit 600l Systemspeicher
    PV: 4kWp / SMA SunnyBoy SWR3000 / 14x ASE-300-DG-FT (EEG Läuft ende 2021 aus, geht dann auch in den Inselbetrieb)
    Speicher : LG Chem 6.4 (seid 2020 2x eine Gebraut gekauft) mit 3x Effekta AX 5000 im 3Phasen Betrieb und 1x Effekta AX-P 3000 alles mit ca. 4KWp Solar in allen Ausrichtungen

    Auto : Renault ZOE 50

  • Hallo Mofaklaus,

    gut zu wissen, dass die Effekta-Geräte einen Umschaltbefehl besitzen. Bei den mppsolar Geräten und Clones (siehe unten) scheint das nicht der Fall zu sein. Ich hoffe, du berichtest, wie Du den Knoten zerschlagen hast. Mein WR-Mainboard war nach 7 Jahren defekt. Sehr anständig, dass mppsolar mir für 245USD ein neues geschickt hat.

    VG, Bernd

  • Hallo Bernd, das ist ja interessant. Ich habe mal eben in die Anleitung geschaut die du angehängt hast. Das sieht alles extrem gleich aus, Bauform, Anschlüsse, Display etc. Auch die Parameter List ist auf den erste Blick gleich, Ich schalte halt den Parameter 01 vom SOL auf UTI aber der dafür nötige Befehlt ist in der Tat nicht in dem Protokoll enthalten was du angehängt hast. Ich hänge mal das für den Effekta an, vielleicht geht das ja auch bei dem Steca.

    Ich hatte jetzt bei meinem neuen 3000er auch ein defektes PowerBoard, wurde noch auf Garantie repariert und ich habe sogar ein Leitgerät bekommen, weil die Erstzeile nicht lieferbar waren, alles Service in Deutschland, also ich bin bisher auch sehr zufrieden.


    Ja mit der Checksumme ist komisch, ich habe mal gerade den Code von dir in mein Programm integriert aber es kommen die gleichen Summen wir bei meinen Code raus. Also muss irgend was bei USB anders gemacht werden mit der den Checksumme als bei RS232.


    VG Mofaklaus

    BHKW : Dachs Gas 5,5kW
    SolarTherm.: 10m² Kago mit 600l Systemspeicher
    PV: 4kWp / SMA SunnyBoy SWR3000 / 14x ASE-300-DG-FT (EEG Läuft ende 2021 aus, geht dann auch in den Inselbetrieb)
    Speicher : LG Chem 6.4 (seid 2020 2x eine Gebraut gekauft) mit 3x Effekta AX 5000 im 3Phasen Betrieb und 1x Effekta AX-P 3000 alles mit ca. 4KWp Solar in allen Ausrichtungen

    Auto : Renault ZOE 50

  • Ja super danke, das ist praktisch, und ich kommen das gleiche Ergebnis. Auch für das was ich empfange, also sollte es wohl auch die richtige Berechnungsart sein.

    VG, mofaklaus

    BHKW : Dachs Gas 5,5kW
    SolarTherm.: 10m² Kago mit 600l Systemspeicher
    PV: 4kWp / SMA SunnyBoy SWR3000 / 14x ASE-300-DG-FT (EEG Läuft ende 2021 aus, geht dann auch in den Inselbetrieb)
    Speicher : LG Chem 6.4 (seid 2020 2x eine Gebraut gekauft) mit 3x Effekta AX 5000 im 3Phasen Betrieb und 1x Effekta AX-P 3000 alles mit ca. 4KWp Solar in allen Ausrichtungen

    Auto : Renault ZOE 50

  • Moin moin zusammen,

    für alle die es interessiert, ich habe das Geheimnis weitestgehend gelüftet.


    Zum einen musste ich die Anfrage wiederholen und dann kommt die erwartete Antwort. Den Grund dafür habe ich noch nicht gefunden und das genau Verhalten bei weiteren unterschiedlichen Anfragen muss ich noch prüfen. Aber damit kann ich arbeiten.


    Dann ist es auch noch so, dass die Antwort immer mit ein unterschiedlichen Anzahl von Nullen nach dem eigentlichen Ende der Antwort aufgefüllt wird. Wenn man das alles berücksichtigt und ausmerzt, dann passen auch die Checksummen wieder super.


    Viele Grüße

    BHKW : Dachs Gas 5,5kW
    SolarTherm.: 10m² Kago mit 600l Systemspeicher
    PV: 4kWp / SMA SunnyBoy SWR3000 / 14x ASE-300-DG-FT (EEG Läuft ende 2021 aus, geht dann auch in den Inselbetrieb)
    Speicher : LG Chem 6.4 (seid 2020 2x eine Gebraut gekauft) mit 3x Effekta AX 5000 im 3Phasen Betrieb und 1x Effekta AX-P 3000 alles mit ca. 4KWp Solar in allen Ausrichtungen

    Auto : Renault ZOE 50

  • Halli Hallo zusammen,


    ich bin der Andreas und nun auch ein stolzer Besitzer eines von Steca / Katek PLI 48Volt Hybrieden WR


    einen ESP32 mit Wlan und Bluetooth.

    hat es von Euch schon jemand Geschaft den damit auszulesen?

    Das Programm vom Herrn BKohl mit dem Namen Batmon bekomme ich noch nicht zum laufen.

    ich bin nicht der hellste mit c++ jedoch anpassungen schafe ich.

    wenn ich die board.h und wr.c in das Projekt batmon hinzuüge kommt beim kompilieren schon der Fehler


    exit status 1

    #include nested too deeply


    wer ist da so nett und mag bzw kann mir da unter die arme greifen.

    Danke schon mal vorab.

    Grüße

    Andi



    board.h:1:21: error: #include nested too deeply

    #include <avr/io.h>

    ^

    board.h:2:21: error: #include nested too deeply

    #include <avr/wdt.h>

    ^

    board.h:3:45: error: #include nested too deeply

    #include <util/delay.h> // 8MHz n�tig

    ^

    board.h:4:27: error: #include nested too deeply

    #include <avr/interrupt.h>


    :)

  • Du kannst es auch mit der Solaranzeige versuchen. (solaranzeige.de) Die kann solche Wechselrichter auslesen. Es ist ein Open Source Projekt mit einem Raspberry Pi oder Ähnlichem.



    Ulrich

    Admin der Solaranzeige