Hallo Gemeinde,
ich versuche gerade meinen SMA Sunny Boy 5000 Smart Energy über das Modbus-Modul auszulesen. Laut Dokumentation SMA ist z.B. in der Adresse 30051 die Geräteklasse gespeichert.
attr SB obj-h30051-reading Geraeteklasse
attr SB obj-h30051-len 2
Ich erwarte das Ergebnis "8001", was "Solar-Wechselrichter" entspricht. Allerdings erhalte ich "0".
Im Modbus Master Simulator http://www.sma-sunny.com/wp-content/uploads/2016/01/7-1.jpg (http://www.sma-sunny.com/wp-content/uploads/2016/01/7-1.jpg) sehe ich, dass der eigentliche Wert ("8001") in Zeile 1 Steht, in Zeile 0 steht die besagte "0". Wie kann ich ModbusAttr dazu bringen auf diesen Wert in Zeile 1 zuzugreifen? Von der Logik hätte ich erwartet, dass es Adresse 30052 ist - aber die Adresse scheint ungültig zu sein.
Gruß
Thomas
Ich habe es gefunden:
Laut SMA-Doku wird das Register als "Big-Endian" gespeiechert.
Das wird über die perl-Funktion unpack eingestellt:
attr SB obj-h30051-unpack N
Danke
Thomas