Hallo airbus,
bei mir läuft der Baustein unter der PoolController Firmware 1.7.0.c ohne Probleme.
Ich habe mir deine Konfiguration kurz angeschaut und mir ist folgendes aufgefallen:
Der Baustein holt sich die CSV-Werte (Textblock) über eine HTTP-Abfrage ab und speichert diese erstmal im KO-Objekt PoolGetState.csv zwischen, bevor diese "geparst" und die ermittelten Werte an die einzelnen Ausgänge gesendet werden. D.h. dieses KO-Objekt muss zwingend vom Typ "14-byte Text" sein.
Könntest du bitte testen, ob diese Änderung dein Problem behebt?
Viele Grüße
Werner
GetState.csv Logikbaustein für GIRA Homeserver (KNX)
-
wernerLi
- Beiträge: 37
- Registriert: 7. Januar 2015, 10:14
-
airbus
- Beiträge: 25
- Registriert: 10. Juli 2016, 15:37
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Werner vielen Dank fürs anschauen.
Leider bisher kein Glück. Daran dachte ich auch sofort. Das war es nicht. GetState.csv ist auf 14byte gesetzt.
Die Datenformate der anderen KO´s habe ich so gesetzt:
Die anderen KO (alles nur interne KO´s sind:
8-bit (-128. 127)
Kesseldruck
8-bit (-128. 127)
Redox
pH
8 Bit (0-100%) EIS6
Cl Rest
pH- Rest
Temperaturen 8-bit (-128. 127)
Pool
Aussen
Wärmetauscher VL
Poolhütte
Relais 1-bit (Schalt/Jal...) EIS1
Filterpumpe
Heizungsventil
I-Pad Steckdose
Rückspülung
Pool Relais 7
pH- (Pumpe)
Chlor (Pumpe)
Kompressor
8-bit (-128. 127) vorher schon mit 16-bit probiert (67000... )
Flowsensor
Inzwischen die Typen der Ko´s vielfältig geändert und sogar die Relais auf 8-bit gesetzt, da man ja auch auf Automatik ( nicht nur An und Aus )schalten kann. Leider ist es das auch nicht gewesen.
Wenn ich die /GetState.csv aufrufe bekomme ich immer eine HTML Seite und keinen Datenstrang. Könnte das vielleicht damit zusammenhängen ?
Leider bisher kein Glück. Daran dachte ich auch sofort. Das war es nicht. GetState.csv ist auf 14byte gesetzt.
Die Datenformate der anderen KO´s habe ich so gesetzt:
Die anderen KO (alles nur interne KO´s sind:
8-bit (-128. 127)
Kesseldruck
8-bit (-128. 127)
Redox
pH
8 Bit (0-100%) EIS6
Cl Rest
pH- Rest
Temperaturen 8-bit (-128. 127)
Pool
Aussen
Wärmetauscher VL
Poolhütte
Relais 1-bit (Schalt/Jal...) EIS1
Filterpumpe
Heizungsventil
I-Pad Steckdose
Rückspülung
Pool Relais 7
pH- (Pumpe)
Chlor (Pumpe)
Kompressor
8-bit (-128. 127) vorher schon mit 16-bit probiert (67000... )
Flowsensor
Inzwischen die Typen der Ko´s vielfältig geändert und sogar die Relais auf 8-bit gesetzt, da man ja auch auf Automatik ( nicht nur An und Aus )schalten kann. Leider ist es das auch nicht gewesen.
Wenn ich die /GetState.csv aufrufe bekomme ich immer eine HTML Seite und keinen Datenstrang. Könnte das vielleicht damit zusammenhängen ?
-
wernerLi
- Beiträge: 37
- Registriert: 7. Januar 2015, 10:14
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Hallo airbus,
damit das Ganze funktioniert, muss der HTTP-Abfruf von GetState.csv einen Datensatz liefern der mit "SYSINFO,..." beginnt.
Falls in dem KO-Objekt der Inhalt der HTML-Seite landet stimmt etwas nicht.
In deinem ersten Beitrag zu diesem Thema hattest du doch auch einen entsprechenden SYSINFO-Datensatz aufgelistet?
Bzgl. der genauen Typen für die einzelnen KO-Objekte kann ich gerne bei mir nachsehen - komme allerdings frühestens morgen dazu, da ich die Tage unterwegs bin.
Schon mal vorab: der Typ "8bit (-128..127)" unterstützt keine Nachkommastellen! D.h. er eignet sich eigentlich zum einen nicht für Werte bei denen du Nachkommastellen haben möchtest, wie z.B. Temperaturen oder den pH-Wert. Zum anderen sind bei Redox und Kesseldruck höhere Werte als 127 zu erwarten. Wenn ich mich recht erinnere habe ich bei mir für all diese Werte den Typ "16bit (-671088,64..670760,96/EIS5)" verwendet.
Wenn ich wieder Zugriff auf mein Homeserver-Projekt habe, kann ich mir das Ganze noch einmal genauer anschauen.
Viele Grüße
Werner
damit das Ganze funktioniert, muss der HTTP-Abfruf von GetState.csv einen Datensatz liefern der mit "SYSINFO,..." beginnt.
Falls in dem KO-Objekt der Inhalt der HTML-Seite landet stimmt etwas nicht.
In deinem ersten Beitrag zu diesem Thema hattest du doch auch einen entsprechenden SYSINFO-Datensatz aufgelistet?
Bzgl. der genauen Typen für die einzelnen KO-Objekte kann ich gerne bei mir nachsehen - komme allerdings frühestens morgen dazu, da ich die Tage unterwegs bin.
Schon mal vorab: der Typ "8bit (-128..127)" unterstützt keine Nachkommastellen! D.h. er eignet sich eigentlich zum einen nicht für Werte bei denen du Nachkommastellen haben möchtest, wie z.B. Temperaturen oder den pH-Wert. Zum anderen sind bei Redox und Kesseldruck höhere Werte als 127 zu erwarten. Wenn ich mich recht erinnere habe ich bei mir für all diese Werte den Typ "16bit (-671088,64..670760,96/EIS5)" verwendet.
Wenn ich wieder Zugriff auf mein Homeserver-Projekt habe, kann ich mir das Ganze noch einmal genauer anschauen.
Viele Grüße
Werner
-
wernerLi
- Beiträge: 37
- Registriert: 7. Januar 2015, 10:14
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Hallo airbus,
noch etwas - die Reihenfolge der Datenblöcke bei der Abfrage ist relevant.
D.h. diese muss so wie in deinem ersten Beitrag zu diesem Thema sein:
1. Beliebige Daten
2. Text (SYSINFO,)
3. Wert als Klartext
In dem Screenshot zu deinem letzten Beitrag sind 2 und 3 vertauscht.
Viele Grüße
Werner
noch etwas - die Reihenfolge der Datenblöcke bei der Abfrage ist relevant.
D.h. diese muss so wie in deinem ersten Beitrag zu diesem Thema sein:
1. Beliebige Daten
2. Text (SYSINFO,)
3. Wert als Klartext
In dem Screenshot zu deinem letzten Beitrag sind 2 und 3 vertauscht.
Viele Grüße
Werner
-
airbus
- Beiträge: 25
- Registriert: 10. Juli 2016, 15:37
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
2 und 3 sind in der richtigen Folge jetzt. Hatte den Screenshot gemacht, als ich am ausprobieren war.
Alles wieder in der richtigen Reihenfolge.
Habe jetzt die KO "GetState.csv" nochmals als normale 14byte Adresse und nicht als internes KO angelegt und probiert.
Leider keinen Erfolg.
Glaube das könnte vielleicht daran liegen, das mir das System bei Abfrage im Browser mit:
"192.168.1.20/getstate.csv" nur dieses Bild bringt und nicht mehr den Datensatz, den ich vorher erhalten habe.
In der Fehlermeldung heißt es unter Hinweise:
Ausgang liefert anderes Dateiformat, Kommunkationsobjekt passt nicht
Weitere Informationen:
Pool, Abfrage Telegramm (1)
Daher nehme ich an, es liegt an dem ersten Teil der Logik - Abfrage der Webadresse.
Andererseits kommt nach der Prüfung auf der Logikseite immer ein roter Verbindungsstrich beim Relais #5 zum KO bei mir ?
Habe das PlugIn mal in txt ausgelesen und du hattest da wirklich schon etwas zu tippen gehabt.
Deine Erklärungen im Text sind ebenfalls sehr hilfreich und aufschlußreich gewesen.
Mir ist aber kein Grund aufgefallen, warum da bei Relais#5 ein Cut sein könnte. Das läuft ja einfach nummeriert weiter im Block.
Alles wieder in der richtigen Reihenfolge.
Habe jetzt die KO "GetState.csv" nochmals als normale 14byte Adresse und nicht als internes KO angelegt und probiert.
Leider keinen Erfolg.
Glaube das könnte vielleicht daran liegen, das mir das System bei Abfrage im Browser mit:
"192.168.1.20/getstate.csv" nur dieses Bild bringt und nicht mehr den Datensatz, den ich vorher erhalten habe.
In der Fehlermeldung heißt es unter Hinweise:
Ausgang liefert anderes Dateiformat, Kommunkationsobjekt passt nicht
Weitere Informationen:
Pool, Abfrage Telegramm (1)
Daher nehme ich an, es liegt an dem ersten Teil der Logik - Abfrage der Webadresse.
Andererseits kommt nach der Prüfung auf der Logikseite immer ein roter Verbindungsstrich beim Relais #5 zum KO bei mir ?
Habe das PlugIn mal in txt ausgelesen und du hattest da wirklich schon etwas zu tippen gehabt.
Deine Erklärungen im Text sind ebenfalls sehr hilfreich und aufschlußreich gewesen.
Mir ist aber kein Grund aufgefallen, warum da bei Relais#5 ein Cut sein könnte. Das läuft ja einfach nummeriert weiter im Block.
-
wernerLi
- Beiträge: 37
- Registriert: 7. Januar 2015, 10:14
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Hallo airbus,
die URL ist "case sensitiv" d.h. du müsstest 192.168.1.20/GetState.csv verwenden.
Wenn ich getstate.csv im Browser verwende bekomme ich auch die HTML des Poolcontroller Menü's.
Hier die von mir verwendeten Datentypen meiner KO's (alles interne KO-Objekte):
GetState.csv = 14-Byte Text
Messwert_Kesseldruck = 16-Bit (0..65535)
Messwert_Redox = 16-Bit (-671088,64..670760,96)
Messwert_pH = 16-Bit (-671088,64..670760,96)
Temp_* = 16-Bit (-671088,64..670760,96)
Meldung_Wasserstand = 1-Bit (0..1)
Relais_* = 8-Bit (0..255)
Durchfluß = 16-Bit (-671088,64..670760,96)
Restmenge_Chlor = 8-Bit (0..100%)
Restmenge_pH- = 8-Bit (0..100%)
Verbrauch_Chlor = 16-Bit (0..65535)
Verbrauch_pH- = 16-Bit (0..65535)
Das Problem mit dem Relais#5 kann ich mir aus der Ferne auch nicht erklären. Welchen Datentyp hat den das zugehörige KO-Objekt?
Viele Grüße
Werner
die URL ist "case sensitiv" d.h. du müsstest 192.168.1.20/GetState.csv verwenden.
Wenn ich getstate.csv im Browser verwende bekomme ich auch die HTML des Poolcontroller Menü's.
Hier die von mir verwendeten Datentypen meiner KO's (alles interne KO-Objekte):
GetState.csv = 14-Byte Text
Messwert_Kesseldruck = 16-Bit (0..65535)
Messwert_Redox = 16-Bit (-671088,64..670760,96)
Messwert_pH = 16-Bit (-671088,64..670760,96)
Temp_* = 16-Bit (-671088,64..670760,96)
Meldung_Wasserstand = 1-Bit (0..1)
Relais_* = 8-Bit (0..255)
Durchfluß = 16-Bit (-671088,64..670760,96)
Restmenge_Chlor = 8-Bit (0..100%)
Restmenge_pH- = 8-Bit (0..100%)
Verbrauch_Chlor = 16-Bit (0..65535)
Verbrauch_pH- = 16-Bit (0..65535)
Das Problem mit dem Relais#5 kann ich mir aus der Ferne auch nicht erklären. Welchen Datentyp hat den das zugehörige KO-Objekt?
Viele Grüße
Werner
-
airbus
- Beiträge: 25
- Registriert: 10. Juli 2016, 15:37
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Hallo Werner,
danke für Deine Mühe. Werde ich morgen gleich testen. Liege schon im Bett.
Case Sensitive - da wäre ich nie drauf gekommen. Dachte immer das sei völlig egal bei Browsern.
Werde die Gruppenadressen dann auch umsetzen.
Melde mich und bin jetzt wieder zuversichtlich.
danke für Deine Mühe. Werde ich morgen gleich testen. Liege schon im Bett.
Case Sensitive - da wäre ich nie drauf gekommen. Dachte immer das sei völlig egal bei Browsern.
Werde die Gruppenadressen dann auch umsetzen.
Melde mich und bin jetzt wieder zuversichtlich.
-
airbus
- Beiträge: 25
- Registriert: 10. Juli 2016, 15:37
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Es hat geklappt !
Jetzt fehlen mir nur noch die schönen Grafiken die ich bei "oldman943" auf Seite 2 gesehen habe.
Glaube die schon mal im KNX User Forum gesehen zu haben.
So, nun die Erklärung warum es nicht gefunzt hat:
Habe die Abfrage mit dem Auslöser gleich mit dem 14-byte KO belegt. Das kann natürlich nicht funktionieren.
Um die Telegrammabfrage anzustossen muss ein 1-bit Befehl alle x Sek abgesendet werden. Der löst die Webseiten Abfrage aus und füllt quasi die 14-byte Adresse die im Webseiten Abfrage Text steht. Man braucht also zwei KO für die Abfrage. Die Bilder machen es deutlicher. Der Kommunikationsbaustein liest die txt-Datei vom Polocontroller kommende aus und füllt die Daten in die entsprechenden Felder in Werners Baustein. Weiterführend werden die dann wieder auf die eigenen Kommunikationsobjekte gelegt, die man im eigenen System verwenden kann.
So mal einfach für den Laien ausgedrückt.
Hier die Einstellungen von mir im Detail:
Hier beachten, das normale Kommunikationsobjekt mit 1-bit "10.0.1 (meine Adresse)" und nicht das interne 14byte nehmen.
Das war mein Fehler. Weil das KO ruft dann die Routine "Webabfrage" auf und füttert die Daten in das dort hinterlegte KO mit 14byte ein.
Dann wieder im Menü zu Kommunikation -> IP/Webseite abfragen
Hier oben aufpassen, es heißt: /GetState.csv
- Großschreibung und den Slash ( / ) nicht vergessen
Jetzt fehlen mir nur noch die schönen Grafiken die ich bei "oldman943" auf Seite 2 gesehen habe.
Glaube die schon mal im KNX User Forum gesehen zu haben.
So, nun die Erklärung warum es nicht gefunzt hat:
Habe die Abfrage mit dem Auslöser gleich mit dem 14-byte KO belegt. Das kann natürlich nicht funktionieren.
Um die Telegrammabfrage anzustossen muss ein 1-bit Befehl alle x Sek abgesendet werden. Der löst die Webseiten Abfrage aus und füllt quasi die 14-byte Adresse die im Webseiten Abfrage Text steht. Man braucht also zwei KO für die Abfrage. Die Bilder machen es deutlicher. Der Kommunikationsbaustein liest die txt-Datei vom Polocontroller kommende aus und füllt die Daten in die entsprechenden Felder in Werners Baustein. Weiterführend werden die dann wieder auf die eigenen Kommunikationsobjekte gelegt, die man im eigenen System verwenden kann.
So mal einfach für den Laien ausgedrückt.
Hier die Einstellungen von mir im Detail:
Hier beachten, das normale Kommunikationsobjekt mit 1-bit "10.0.1 (meine Adresse)" und nicht das interne 14byte nehmen.
Das war mein Fehler. Weil das KO ruft dann die Routine "Webabfrage" auf und füttert die Daten in das dort hinterlegte KO mit 14byte ein.
Dann wieder im Menü zu Kommunikation -> IP/Webseite abfragen
Hier oben aufpassen, es heißt: /GetState.csv
- Großschreibung und den Slash ( / ) nicht vergessen
Zuletzt geändert von airbus am 5. Juni 2020, 13:54, insgesamt 3-mal geändert.
-
airbus
- Beiträge: 25
- Registriert: 10. Juli 2016, 15:37
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Das Kommunikationsobjekt ist jetzt ein internes KO und muß 14 Byte Text sein !
So sollte es klappen...
Viel Glück. Bei mir geht es jetzt und habe die Webabfrage im Homeserver mit Logikbaustein verstanden.
Danke Werner, für Deine Hilfe. Ohne Deine Antwort hätte ich schon aufgegeben.
So sollte es klappen...
Viel Glück. Bei mir geht es jetzt und habe die Webabfrage im Homeserver mit Logikbaustein verstanden.
Danke Werner, für Deine Hilfe. Ohne Deine Antwort hätte ich schon aufgegeben.
-
guw
- Beiträge: 31
- Registriert: 8. Juli 2019, 12:20
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Hallo!
Ich musste bei meinen UWS leider umplanen. Sind nun doch DMX verbaut worden, die der Controller jetzt steuert. Kann man das auch über die API und den Baustein beeinflussen? Würde das gern auf den KNX Bus bekommen.
-Gunnar
Ich musste bei meinen UWS leider umplanen. Sind nun doch DMX verbaut worden, die der Controller jetzt steuert. Kann man das auch über die API und den Baustein beeinflussen? Würde das gern auf den KNX Bus bekommen.
-Gunnar
-
airbus
- Beiträge: 25
- Registriert: 10. Juli 2016, 15:37
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Kannst Du mit deinen KNX Mitteln ( Homeserver z.B. ) eine Webabfrage machen ?
Du bekommst aber nur den Zustand gesendet. Eine Funktion auslösen wird sehr schwierig.
Du bekommst aber nur den Zustand gesendet. Eine Funktion auslösen wird sehr schwierig.
-
airbus
- Beiträge: 25
- Registriert: 10. Juli 2016, 15:37
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Nur um das Thema komplett zu machen:
Im Quadclient das Plugin "Wertanzeige / Wetterstation" verwenden (also Darstellung im Quadrant rechts oben bzw. rechts unten) dort findet man die Icon's in der Auswahlliste für die darzustellenden Symbole.
Kann jeder sich selbst zusammenstellen.
Hier das Bild:
Im Quadclient das Plugin "Wertanzeige / Wetterstation" verwenden (also Darstellung im Quadrant rechts oben bzw. rechts unten) dort findet man die Icon's in der Auswahlliste für die darzustellenden Symbole.
Kann jeder sich selbst zusammenstellen.
Hier das Bild:
-
braunrob
- Beiträge: 72
- Registriert: 3. Januar 2019, 09:49
Re: GetState.csv Logikbaustein für GIRA Homeserver (KNX)
Super umgesetzt!
Ich hab meine Werte auch in meiner Heimautomation Loxone, genau gleich geholt mit der .csv Datei.
Loxone hätte halt viele gute Sensoren und Logiken rund ums Haus, jetzt überlege ich das Gartenlicht doch dort draufhängen,
weil Schreiben geht ja nicht. Also nur lesender Zugriff auf den Poolcontroller.
Oder liege ich da falsch?
Kann ich von KNX/GIRA/Loxone auch zur Poolcontroller Steuerung Befehle senden?
Danke,
schöne Grüße,
Robert
Ich hab meine Werte auch in meiner Heimautomation Loxone, genau gleich geholt mit der .csv Datei.
Loxone hätte halt viele gute Sensoren und Logiken rund ums Haus, jetzt überlege ich das Gartenlicht doch dort draufhängen,
weil Schreiben geht ja nicht. Also nur lesender Zugriff auf den Poolcontroller.
Oder liege ich da falsch?
Kann ich von KNX/GIRA/Loxone auch zur Poolcontroller Steuerung Befehle senden?
Danke,
schöne Grüße,
Robert