ich versuche gerade ein Power Quality Meter an IPS per Modbus anzuschließen. Leider scheitert es an der Modbus-Umrechnung. Kann mir jemand sagen, wie IPS die Bytereihenfolge der Floatingpoint-Werte interpretiert?
Im Anhang habe ich die Reihenfolge angeführt, wie es in meiner Gerätedoku steht.
Mit einer Modbus-Testsoftware kann ich das Gerät auslesen. Dort kann man zwischen verschiedenen Reihenfolgen wählen und bei einer kommen die Werte absolut plausibel. Ich denke daher, die IPS-Reihenfolge ist nicht mit meinem Gerät kompatibel. Kann man das irgendwo ändern? Hat jemand solche Probleme schon gelöst?
Sieht so aus, als ob Du auch ein Opfer des Word-Swaps geworden bist, das ich hier unter 1) mal angesprochen habe.
Schaut man auf das Bildchen deiner Gerätedoku, liefert dein Meßgerät die Daten offensichtlich in der Reihenfolge MSW gefolgt vom LSW. Dagegen scheint IPS die empfangenen Daten immer in der Reihenfolge LSW (Least Significant Word 16bit) gefolgt vom MSW (Most Significant Word 16bit) auszuwerten.
Das Swapping scheint soweit zu funktionieren. Real(32Bit–Signed) konnte ich nur simuliert testen, da ich derzeit kein Gerät hier habe, das Float-Variablen ausspuckt; scheint aber auch OK zu sein.