Hallo Zusammen,
ich verwende schon seit längerem das knxtool aus dem knxd Paket um Werte aus meinem KNX BUS zu lesen und per Nagios zu überwachen. Die Ist-temparatur aller Raumtemparaturregler oder meine MDT Wetterstation lassen sich super auslesen und mit Nagios überwachen.
Ich habe eine kleine PV-Anlage auf das Garagendach gebaut und diese an einen ABB Zähler angeklemmt.
Nun möchte ich meinen "ABB B21 113-100" Zähler per KNX auslesen, das geht in Verbindung mit der ABB ZS/S1.1 Zählerschnittstelle welche den Zähler per Infratotschnittstelle auslesen kann und den Zähler an das KNX-Netz anbindet. Ja ist etwas umständlich aber aktuell bekomme ich keine Zähler mit direkter KNX-Anbindung alles ausverkauft.
Wenn ich die Funktion read verwende bekomme ich leider keinen Dezimalwert ausgelesen.
Die Funktion readtemp ist hier auch nicht besser. Ist ja keine Temparatur
Das Auslesen der MDT Wetterstation funktioniert prima, hier sind jetzt 16,5° C
Wenn ich mit der ETS die gleiche Abfrage mache sehe ich die Zeichenkette mit 8 Zeichen, Aber die ETS erkennt den Datenpunkttyp 14.056 Leistung (W) und zeigt in meinem Beispiel 258,92 Watt Leistung an.
Watt.png
Wenn ich über ETS andere Werte auslesen möchte wie z.b. Strom (A) dann wird ein anderer Datenpunkttyp erkannt und angezeigt.
Strom_A.png
Das gleiche passiert auch mit der Spannung in V, die ETS kann es sauber datstellen.
Spannung.png
Das knxtool leider nicht.
Nun habe ich versucht die gewünschten Werte mit anderen "applet" Funktionen aus /usr/bin/knxtool auszulesen. Leider ohne erfolg. In der Zwischenzeit habe ich auch ein aktuelles knxtool installiert.
Sicher bediene ich das knxtool falsch oder es muss angepasst werden damit auch die Datenpunkttypen richtig erkannt werden und dargestellt werden können.
Für den Wert LUX habe ich einfach die Funktion readtemp verwendet aber bin mir nicht sicher ob das passt.
Hier weitere Details zum Datentyp für die Leistung in Watt.
Die Frage ist wie kann ich mit Hilfe des knxtool aus einem RawDpValue 42 B6 EB 85 eine Ausgabe Zaubern wie "91,46 W"?
Kann mir einer erklären wie ich das knxtool richtig bediene oder muss der Quellcode angepasst werden?
Wenn der Quellcode angepasst werden muss wie aufwändig ist das? Gerne zahle ich auch eine kleine Spende.
Schöne Grüße
Paulo
ich verwende schon seit längerem das knxtool aus dem knxd Paket um Werte aus meinem KNX BUS zu lesen und per Nagios zu überwachen. Die Ist-temparatur aller Raumtemparaturregler oder meine MDT Wetterstation lassen sich super auslesen und mit Nagios überwachen.
Ich habe eine kleine PV-Anlage auf das Garagendach gebaut und diese an einen ABB Zähler angeklemmt.
Nun möchte ich meinen "ABB B21 113-100" Zähler per KNX auslesen, das geht in Verbindung mit der ABB ZS/S1.1 Zählerschnittstelle welche den Zähler per Infratotschnittstelle auslesen kann und den Zähler an das KNX-Netz anbindet. Ja ist etwas umständlich aber aktuell bekomme ich keine Zähler mit direkter KNX-Anbindung alles ausverkauft.
Wenn ich die Funktion read verwende bekomme ich leider keinen Dezimalwert ausgelesen.
Code:
root@nagios:/opt/source# /usr/bin/knxtool read ip:10.1.2.242 6/2/2 C1 89 D7 0A
Code:
root@nagios:/opt/source# /usr/bin/knxtool readtemp ip:10.1.2.242 6/2/2 C1 87 70 A4
Code:
root@nagios:/opt/source# /usr/bin/knxtool readtemp ip:10.1.2.242 0/5/0 16.5
Wenn ich mit der ETS die gleiche Abfrage mache sehe ich die Zeichenkette mit 8 Zeichen, Aber die ETS erkennt den Datenpunkttyp 14.056 Leistung (W) und zeigt in meinem Beispiel 258,92 Watt Leistung an.
Watt.png
Wenn ich über ETS andere Werte auslesen möchte wie z.b. Strom (A) dann wird ein anderer Datenpunkttyp erkannt und angezeigt.
Strom_A.png
Code:
/usr/bin/knxtool read ip:10.1.2.242 6/2/0 3F 8A 3D 71
Spannung.png
Das knxtool leider nicht.
Code:
root@nagios:/opt/source# /usr/bin/knxtool readtemp ip:10.1.2.242 6/2/1 43 6C 66 67
Sicher bediene ich das knxtool falsch oder es muss angepasst werden damit auch die Datenpunkttypen richtig erkannt werden und dargestellt werden können.
Für den Wert LUX habe ich einfach die Funktion readtemp verwendet aber bin mir nicht sicher ob das passt.
Eigenschaft | Wert |
DataPointType | 9.004 Lux (Lux) |
DecodedDpValue | 24 26 | 169,92 Lux |
RawDpValue | 24 26 |
Hier weitere Details zum Datentyp für die Leistung in Watt.
Eigenschaft | Wert |
RawData | 29 00 BC E0 11 28 32 02 05 00 40 42 B6 EB 85 |
MessageCode | LDataInd |
Source | 1.1.40 |
SourceName | ZS/PV-2 |
Destination | 6/2/2 |
DestinationName | PV-2 Leistung in Watt |
RepeatedFlag | False |
Acknowledge | Ack |
ConfirmFlag | False |
RoutingCounter | 6 |
Priority | Low |
FrameFormat | Standard |
Service | vom Bus |
LocalizedType | GroupValueResponse |
Security | |
TPCI | T_Data |
APCI | APciGroupValueResponse |
DataPointType | 14.056 Leistung (W) |
DecodedDpValue | 42 B6 EB 85 | 91,46 W |
RawDpValue | 42 B6 EB 85 |
Die Frage ist wie kann ich mit Hilfe des knxtool aus einem RawDpValue 42 B6 EB 85 eine Ausgabe Zaubern wie "91,46 W"?
Kann mir einer erklären wie ich das knxtool richtig bediene oder muss der Quellcode angepasst werden?
Wenn der Quellcode angepasst werden muss wie aufwändig ist das? Gerne zahle ich auch eine kleine Spende.
Schöne Grüße
Paulo
Kommentar