Gutes Neues euch allen!
ich möchte die Daten meiner Paradigma SystaComfort auf den KNX Bus senden, und hoffe dass ihr mir weiterhelfen könnt.
TL;DR - wie kann ich Werte aus einer Textdatei per groupwrite / groupswrite aufbereiten und auf den Bus senden?
Ausgangslage:
Um die Funktion einer Paradigma Solaranlage samt angeschlossenem Pufferspeicher auf den Bus zu bekommen, kommen mehrere Wege in Frage, hier im Forum wurden auch schon einige diskutiert (Servicemodul, LON auseinandernehmen etc).
Da ich meine Werte über einen SystaWeb Zugang abfragen kann, lag es für mich am nächsten die Werte direkt aus dem Webinterface zu übernehmen. Dort werden die Werte in Tabellenform ausgegeben und per Ajax aktualisiert. Das war ein wenig fummelig, aber ich hole nun per Cron Job alle zwei Minuten die Werte dort ab und schreibe sie in eine Textdatei. (Auf Wunsch erläutere ich die Vorgehensweise, bitte kurze Nachricht)
Die Textdatei besteht nun im Wesentlichen aus Datenpaaren (ID:Wert) mit folgenden Inhalt:
-gekürzt-
Die sechsstelligen Ziffern repräsentieren den übertragenen Wert, ich habe eine Zuordnungstabelle begonnen:
Die ist nur eine Zwischenlösung, denn die Werte sollen ja auf den Bus.
Ich habe ein wenig mit sed, grep etc herumprobiert, komme jedoch nicht weiter.
Soweit ich das erkennen kann, sind die folgenden Schritte notwendig:
- Zuordnen der ID zur GA (items.conf? - die Daten sollen auch in den Logger)
- Umrechnen des Wertes entsprechend Datentyp (Temperaturwerte müssen noch durch 10 dividiert werden)
- senden per groupwrite
Meine Frage:
Kann ich auf Funktionen innerhalb von smarthome zurückgreifen um das zu realisieren? Oder kann/muss man das mit einem Skript erledigen? Habe leider keine Programmierkenntnisse, weshalb ich für konkrete Beispiele sehr dankbar bin.
Ich hoffe dass ich mich nachvollziehbar ausgedrückt habe, und danke euch schonmal fürs mitdenken
ich möchte die Daten meiner Paradigma SystaComfort auf den KNX Bus senden, und hoffe dass ihr mir weiterhelfen könnt.
TL;DR - wie kann ich Werte aus einer Textdatei per groupwrite / groupswrite aufbereiten und auf den Bus senden?
Ausgangslage:
Um die Funktion einer Paradigma Solaranlage samt angeschlossenem Pufferspeicher auf den Bus zu bekommen, kommen mehrere Wege in Frage, hier im Forum wurden auch schon einige diskutiert (Servicemodul, LON auseinandernehmen etc).
Da ich meine Werte über einen SystaWeb Zugang abfragen kann, lag es für mich am nächsten die Werte direkt aus dem Webinterface zu übernehmen. Dort werden die Werte in Tabellenform ausgegeben und per Ajax aktualisiert. Das war ein wenig fummelig, aber ich hole nun per Cron Job alle zwei Minuten die Werte dort ab und schreibe sie in eine Textdatei. (Auf Wunsch erläutere ich die Vorgehensweise, bitte kurze Nachricht)
Die Textdatei besteht nun im Wesentlichen aus Datenpaaren (ID:Wert) mit folgenden Inhalt:
Code:
{"showInfo":0,"changeExists":0,"changeMsg":[],"values":{"245614":"0","245615":"1","245616":"1","245617":"0","245618":"0","245619":"0","245620":"0","245621":"0","245622":"0","245623":"0","245624":"0","245625":"1","245626":"0","275049":"0","265973":"1","245628":"0","245630":"1","266835":"0","266836":"0","266837":"0","245631":"0","245633":"0","245632":"0","286758":"0","286759":"0","286760":"0","286761":"0","245634":"550","245635":"Auto","245636":"Vorrang W\u00e4rmesenke 1","245637":"800","245638":"800","245639":"Keine","275422":"0","254999":"0","255000":"0","255001":"0","245641":"0","245642":"3","245643":"15","245644":"50","245646":"950","245647":"0","265974":"850","245648":"50","245650":"400","265975":"100","265976":"OPTIMA\/EXPRESSO","245652":"195","245653":"210","245654":"155","245655":"Automatik 1","245656":"450","245657":"500","245658":"50","245659":"350","245660":"13","245661":"650","245662":"200","245663":"100","245664":"20","245665":"120","245666":"0","245667":"0","245668":"200","245669":"100","245670":"2","245671":"50","245672":"30","245673":"0","245674":"Au\u00dfentemperatur","245675":"200","245676":"220","245677":"150","245678":"Automatik 1","245679":"100","245680":"100","245681":"350","245682":"13","245683":"700","245684":"200","245685":"100","245686":"20","245687":"120","245688":"0","245689":"0","245690":"200","245691":"100","245692":"2","245693":"50","245694":"30","245695":"0","245696":"Au\u00dfentemperatur","245697":"200","245698":"220","245699":"150","245700":"Automatik 1","245701":"350","245702":"13","245703":"700","245704":"200","245705":"100","245706":"20","245707":"120","245708":"0","245709":"200","245710":"100","245711":"2","275423":"Au\u00dfentemperatur","245712":"250","245713":"280","245714":"Automatik 1",
Die sechsstelligen Ziffern repräsentieren den übertragenen Wert, ich habe eine Zuordnungstabelle begonnen:
- 245534 Kollektor -TSA-
- 245542 Kollektor Maximum
- 245543 Solare Leistung
- 245544 Tagesgewinn
- 245545 Solargewinn
- 245538 Aussentemperatur -TAM-
- 245535 Solarruecklauf -TSE-
- 245536 Solarvorlauf -TSV-
- 245537 Speicher Oben -TW-
- 245540 Volumenstrom
- 245541 Speicher Oben -TW2-
- 245546 Kollektor 1 -TSA 1-
- 245548 Laufzeit Pumpe
- 245549 Zeit TSA MAX
- ... etc
Die ist nur eine Zwischenlösung, denn die Werte sollen ja auf den Bus.
Ich habe ein wenig mit sed, grep etc herumprobiert, komme jedoch nicht weiter.
Soweit ich das erkennen kann, sind die folgenden Schritte notwendig:
- Zuordnen der ID zur GA (items.conf? - die Daten sollen auch in den Logger)
- Umrechnen des Wertes entsprechend Datentyp (Temperaturwerte müssen noch durch 10 dividiert werden)
- senden per groupwrite
Meine Frage:
Kann ich auf Funktionen innerhalb von smarthome zurückgreifen um das zu realisieren? Oder kann/muss man das mit einem Skript erledigen? Habe leider keine Programmierkenntnisse, weshalb ich für konkrete Beispiele sehr dankbar bin.
Ich hoffe dass ich mich nachvollziehbar ausgedrückt habe, und danke euch schonmal fürs mitdenken

Kommentar