FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: Ruckzuck am 23 Oktober 2021, 09:19:48

Titel: Hilfe bei Modul ModbusAttr
Beitrag von: Ruckzuck am 23 Oktober 2021, 09:19:48
Hallo,

ich versuche gerade mit dem Modul ModbusAttr mein Janiza UMG96s via Modbus auszulesen, habe aber Probleme bei der Datenaufbereitung. Wenn ich das Holding Register 201 (Spannung L2) auslese bekomme ich folgende Rohwerte im Reading angezeigt:

V_U2            hex=0927, string=.', s=9993, s>=2343, S=9993, S>=2343

Für mich wäre "s>" das richtige Format (der Wert wird mit einer Nachkommastelle vom Janitza übertragen).  Ich habe also entsprechend das Attribut obj-h201-unpack s> hinzugefügt. Im Reading steht dann:

V_U2            hex=32333431, string=2341, s=13106, s>=12851, S=13106, S>=12851, i=13106, i>=12851, I=13106, I>=12851, f=2.62225485769818e-09, f>=1.04310382553763e-08

Damit schein dann der Wert als String vorzuliegen. Darauf habe ich dann versucht den String-Wert über das Attribut obj-h201-format %.1f zu formatieren. Dann steht allerdings 0.0 im Reading.

Welche Formatierung muss ich denn durchführen, damit in meinem Reading hinterher die "234.1 V" stehen?




Titel: Antw:Hilfe bei Modul ModbusAttr
Beitrag von: Ruckzuck am 23 Oktober 2021, 11:41:11
Ok, ich glaube die erste Hürde habe ich genommen. Es fehlte noch das Attribut expr, mit dem der Wert übergeben wird. Damit das komma an der richtigen Stelle sitzt, musste ich noch mit 10 dividieren. Fertig sieht es dann so aus:

obj-h201-expr $val/10
obj-h201-unpack s>
obj-h201-format %.1f


wenn ich daraus nun aber eine Parsinfo Struktur ableite, bekomme ich wieder 0.0 in den readings:

my %UMG69parseInfo = (
         
    "h200"=>  {
name => "U_L1",
unpack => "s>",
expr => '$val\10',
format => '%.1f',
reading => "Voltage_L1",
poll => 1
          },
    "h201"=>  {
name => "U_L2",
unpack => "s>",
expr => '$val\10',
format => '%.1f',
reading => "Voltage_L2",
poll => 1
          },
    "h202"=>  {
name => "U_L3",
unpack => "s>",
expr => '$val\10',
format => '%.1f',
reading => "Voltage_L3",
poll => 1
          },
);
Titel: Antw:Hilfe bei Modul ModbusAttr
Beitrag von: Ruckzuck am 23 Oktober 2021, 19:46:16
Division ist "/" nicht "\"  :-[  ;D