TwinCat3 Probleme mit Modbus 2xWORD to REAL (Mit ReadRegs 32Bit Float lesen)

0skill

Level-2
Beiträge
20
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Kurze Einleitung:
Ich möchte mit meiner CX5130 via Modbus auf meine Heizung zu greifen. Der Wechselrichter von Fronius lässt sich problemlos auslesen.
Deshalb hab ich jetzt Hargassner ein Modbus Tool zum testen bekommen.
Mit dem Tool ließt man die Kesseltemperatur aus --> funktioniert
jetzt hätte ich mir noch ein anderes tool zum testen besorgt ob es damit auch funktioniert --> geht auch

Ich bekomme beim Auslesen von FB_MBReadRegs zwei Werte ins Array (die selben Werte bekomme ich mit dem zweiten Tool welches ich zum testen verwendet habe)
Unbenannt.JPGUnbenannt2.JPG

Jetzt gehe ich her und mach aus den beiden WORD ein DWORD

Code:
VAR
    arrTempKessel : ARRAY [1..2] OF WORD;
    dwHelp        : DWORD;
    rTempKessel : REAL;
VAR END
    dwHelp := SHL(WORD_TO_DWORD(arrTempKessel[2]),16) OR WORD_TO_DWORD(arrTempKessel[1]);
    rTempKessel:= DWORD_TO_REAL(dwHelp)

Ich hätte auch schon versucht die fertige OSCAT Funktion DWORD_OF_WORD zu verwenden aber unterm Strich kommt immer was falsches raus
Wäre über Hilfe sehr dankbar ich kann es mir mittlerweile nicht mehr erklären wo mein Fehler liegt

Danke
 
Zurück
Oben