Sollwert Raumheizung einstellen

Moin…

… wie schaut Dein Aktions-Skript aus?! Welchen EIS-Typ benutzt Du und welchen IPS-Befehl hast genommen?!
Du musst natürlich beim ändern der Variable ein „EIB_“-Befehl per Aktions-Skript ausführen!
Du hast sicherlich versucht per Webfront die Variable zu ändern und gehofft das die KNX-Instanz dann den Wert auf den Bus schickt oder?! Das macht IPS leider nicht!

Gruß,
Peter

Hallo Peter,

Datentyp ist EIS 5, 2 Byte Float.

IPS BEfehl ist „SetValue($_IPS[‚VARIABLE‘], $_IPS[‚VALUE‘]);“ wie hier zuvor beschrieben.

Wenn ich Dich richtig verstehe bedeutet das, dass ich den Sollwert über IPS nicht verstellen, sondern quasi nur anzeigen kann, oder?

Grüße

Joerg

Ne…

Aktionsskript erstellen, der Variablen zuweisen mit Inhalt:

EIB_Value(12345, $_IPS[‚Value‘]);

Bin gerade über Tapatalk online, daher kann ich keine Code-Tag nutzen, sorry!

ID 12345 ist deine KNX-Instanz!
Wenn Du statt $_IPS[‚Value‘] einen Wert nimmst und Ausführen drückst sollte der Wert auf den Bus gesendet werden ( zum testen ).

Hallo Joerg,

das Nee… von Peter würde ich so nicht stehen lassen. Aus meiner Sicht würde ich Dir zustimmen. Da Du die Variable nicht ändern kannst (sie nimmt bei IPS nur die Daten vom Bus auf und Du würdest beim Ändern nur die Variable ändern aber nichts auf den Bus senden), schickst Du einfach den geänderten Wert direkt auf den Bus. Dadurch ändert sich dann auch die Variable.

Gruß,

Marcus

Das Ne von Peter war darauf bezogen, das er den Wert über IPS ändern kann, aber eben nicht per SetValue… sondern per EIB_Value!

Klassisches Mistverständnis… Nichts für ungut! :wink:

Aktionsskript erstellen, der Variablen zuweisen mit Inhalt:

  • das Aktionsskript ist erstellt und verknüpft.

EIB_Value(12345, $_IPS[‚Value‘]);

Bin gerade über Tapatalk online, daher kann ich keine Code-Tag nutzen, sorry!

ID 12345 ist deine KNX-Instanz!
Wenn Du statt $_IPS[‚Value‘] einen Wert nimmst und Ausführen drückst sollte der Wert auf den Bus gesendet werden ( zum testen ).[/QUOTE]

  • das werde ich versuchen, komm allerdings erst wieder am Montagabend dazu.

Schönes Wochenende!

Äh ok. Über EIB Value sollte es klappen. Kapiert, habe ich eben auf dem iPhone überlesen.

Danke für Eure Hilfe… Und Euch beiden ein schönes Wochenende!

Grüße

Joerg

Joerg,

ich bin grade noch mal meine Konfiguration durchgegangen und mir ist aufgefallen, dass mein Script, was den Wert auf den Bus schickt, im Thread fehlt. Also hier mein Script:

<?
SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);
EIB_Value(46622 /*[Connectoren\EIB-Gruppen\Erdgeschoß\Wohnzimmer\Heizung\Temp Sollwert]*/, $_IPS["VALUE"]);
?>

Ich denke dann wird das ganze klarer. Damit schreibe ich den Wert aus dem WF als EIB-Telegramm auf den Bus.

Hier noch die Umgebung in der IPS-Verwaltungskonsole:

Die Variable „TempSollwert“ (46622) ist mit der Gruppenadresse des Sollwerts verknüpft, dieser wird im zugehörigen Value abgelegt (was nicht beschrieben werden kann). Das Konstrukt um „TempSettings“ (40324) enthält die Variable zum Schreiben auf den Bus, wobei „SetTemp“ (35638) das o.a. Script enthält.

Gruß,

Marcus

@Marcus:

Warum benutzt Du eine 2. Variable und nicht gleich die der KNX Instanz!? Welchen Vorteil hat das?!

Gruß,
Peter

Die kann ich beschreiben, die der KNX-Instanz nicht. Das war doch Dein Problem, oder?

Mein Problem?! Eigentlich nicht! Ich hab hier nur auf das Problem vom Joerg geantwortet, der versuchte die Variable zu beschreiben.

Gruß,
Peter

Ups, schon wieder daneben. Aber die Antwort bleibt. Wenn man versucht direkt auf eine KNX-Variable zu schreiben kommt die Fehlermeldung:

„Variable wurde als nur lesen markiert und kann nicht verändert werden“

Daher sende ich doch mit EIB_VALUE direkt auf die Gruppenadresse (und damit auf den Bus), während die Telegramme vom Bus in der Variablen zwischengespeichert werden (die ich von IPS aus nicht verändern darf).

Oder reden wir aneinander vorbei? :confused:

Gruß,

Marcus

Wir reden nicht aneinander vorbei, ich verstehe nur den Sinn des Zwischenspeichern nicht, denn wenn der Wert angenommen über ein Teilnehmer am Bus geändert wird, wird Dir der neue Wert in der KNX-Instanz angezeigt, weil IPS ja auf dem Bus mithört. Wenn der wert per EIB_Value… von Dir auf den Bus gesendet wird, wird der neue Wert ja auch in der Variablen der KNX-Instanz angezeigt. Du brauchst den Wert der Variablen ja auch eigentlich nicht direkt beschreiben. Weißt was ich meine?

Ein Aktionsskript mit folgendem Inhalt würde ausreichen, um den im Webfront geänderten Wert auf den Bus zu senden:


<?

EIB_Value(IPS_GetParent($_IPS['VARIABLE']), $_IPS['VALUE']);

?> 

Dieses Skript kannst Du jeder SOLL-Temperatur-Variablen einer KNX-INSTANZ als AKTIONSSKRIPT zuweisen. Einmal erstellen… allen zuweisen, das wars.

Wenn Du jetzt per Webfront die Variable änderst, wird der neue Wert auf den BUS gesendet.

Gleiches Problem wie Joerg hatte jemand hier im Forum vor kurzen schon mal. Siehe hier…

Oder wir reden wirklich aneinander vorbei!? :rolleyes:

Gruß,
Peter

Hallo Peter,

bin erst jetzt dazu gekommen, Dein Aktionsskript zu verknüpfen. Und was soll ich sagen, es geht perfekt.

Danke für Deine Hilfe!

Grüße

Joerg

Hallo,

ich habe ein Problem beim Webfront, wenn ich die Solltemperatur ändere, dann wird ein „Fehler“ angezeigt.
Der Sollwert wird aber korrekt geändert. Im App bekomme ich keine Meldung und arbeitet einwandfrei.
Wo lieg hier der Fehler? Komme nicht auf den Fehler :mad:

Script.pngVariable2.pngVariable.png

Fehler.png

Moin!

War das nicht das Problem mit Leerzeichen/-zeilen vor dem „<php“ am Anfang vom Skript!? :slight_smile:

Grüße,
Chris

Ach du Scheiße! Läuft :smiley:
Danke!!! Da hat ich jetzt noch ewig gesucht.

Gruß

Christian

Ich habe mal das Leerzeichen im meinem Skript-Post entfernt.
Somit sollten keine Copy/Paste-Fehler mehr auftauchen.

Peter

Hast du das hin bekommen?

Gruß