Fronius Smartmeter mit Modbus TCP auslesen

Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hab nun einen weiteren Smart Meter angehängt. in der Solarweb liefert er brauchbare Daten. Leider kommt im Codesys nun alle paar Sekunden ein Dreieck Symbol und der Error zählt nach oben.
1632169212874.png

Dabei fällt mir auf dass immer wieder im bei IChannalIndex der Wert -1 steht und darauf hin ComState auf Connecting wechselt. Wenn ich dann das letzte Gerät wieder deaktiviere sind die Fehler wieder weg.
hat jemand eine Idee woher dies kommt?
 
schmeis die Oscat raus und die Pointer Adressierung, Bringt nur Probleme beim Nachladen.
Convertierung: Word, DWord, Real, Word alles über Union machen.
.
Eine Schrittkette für die Abfrage der Geräte. Einen Masterbaustein. Port 502 gilt für alle Geäte, darum ->
Connect -> Lesen -> Disconnect, --> nächstes Gerät.
 
Ich hab in meinem Codesys Projekt modbus Master und Slaves definiert und folgende Parameter werden in Variablen erfasst.
Diese Variablen gehen dann in meine Funktionsblock und wandeln in Real um. (siehe Bilder)

und mein Problem mit 3 Modbus Teilnehmer klappt es. aber wenn der 4 Teilnehmer aktiviert wird kommen keine Werte mehr zurück. mit der Fehlermeldung Folgefehler weil XDone vom vorigen Modbusteilehmer nicht erfolgt ist. Daher suche ich eine Lösung dafür. alle Teilnehmer hängen am RS485 und die App von Fronius liefert genau Werte von allen 4 Modbusteilnehmern. es kann also nur an der Übertragung/Umsetzung liegen..
 

Anhänge

  • Download (1).png
    Download (1).png
    51,3 KB · Aufrufe: 25
  • Download.png
    Download.png
    25,2 KB · Aufrufe: 26
Modbus-Anfragen über RS485 müssen zwingend streng nacheinander abgewickelt werden. Also: 1. Teilnehmer fragen - Antwort oder Timeout abwarten - 2. Teilnehmer fragen - Antwort oder Timeout abwarten - 3. Teilnehmer fragen ...
Da bietet sich eine Schrittkette an.
 
Zurück
Oben