Hallo,
da jetzt einige Leute aus dem Bus-Profi-Forum auch die IP-Symcon-Software gekauft haben, habe ich mal etwas ausführlicher beschrieben, wie ich die Anbindung realisiert habe.
Die Scripte sind inzwischen im nicht-öffentlichen Bereich des Forums beim bus-profi
Nachdem ich mal wieder ein paar Stunden gespielt habe, bleibt mal wieder 'ne Frage hängen …
Der „Schieberegler“ im Designer verändert mir (ganz wunderbar) die Variable eines Ausgangs in IPS.
Wie kann ich denn diesen veränderten Wert wieder zum LCN bringen?
Da fehlt mir doch irgendwas skriptiges, was erkennt „Variable verändert, Wert übernehmen, …$result = COMPort_SendText(LCN_Port, $TX_BUF)“, oder?
Ja, GGssss hat recht. Wenn du dein Script direkt durch die veränderte Variable triggern lässt wird das Script womöglich wenn du von 0% auf 100% regelst 100 mal ausgeführt. Das wäre, selbst wenn es trotzdem funktioniert, unsaube rund unschön.
Bau einen Button neben den Regler, stell den Wert ein und bestätige den neuen Wert in dem du auf den Button klickst. Der Button löst dein Script aus in dem dann dein LCN angesteuert wird.
durch Mausbewegung den Schieber an die gewünschte Position fahren;
Maustaste loslassen;
Der springende Punkt ist hier die Nummer 4.
Erst beim Loslassen der Maustaste wird ein Event ausgelöst. Man kann das im Debugger nachprüfen. Ein anderes Verhalten wäre auch nicht sinnvoll.
Es besteht also keine Gefahr, dass „jede Menge“ Events auftreten. Ein zusätzlicher Button ist nicht erforderlich. Es ist aber auch kein Fehler einen solchen zu verwenden.
Ich verwende Schieberegler schon sehr lange. Von fehlgetriggerten Scripts habe ich bisher nichts bemerkt.
Also dein Schieberegler verändert bereits eine Variable im IPS?
Sodann:
ein Skript erstellen
bei dem Skript unter Events deine ‚Schieberegler‘ Variable hinzufügren - der Eventtyp OnChange ist meist gut geeignet für sowas
-> dein Skript wird nun automatisch aufgerufen sobald sich die Variable durch stellen des Schiebereglers ändert
innerhalb des Skriptes kannst du mit GetValueInteger(„deine_variable“) den Wert des Schiebereglers auslesen
bin seit einer Woche auch User von IPS und komme wie UweR auch vom LCN-Lager:)
Wenn ich das richtig verstehe, wird die Variable die dem Schieberegler zugeordnet ist, nicht während dem Schieben, sondern erst beim loslassen des Reglers verändert. Somit ist IMO ein stetiges Dimmen über den Regler nicht möglich?
Die „Bruchstücke“ des LCN-PCK-Befehls habe ich (als Wunsch der Issendorffer) durch „xx“ ersetzt … (Klartext unter Ausschluß der Öffentlichkeit @ )
Dieses eine Script werkelt für ALLE Dimmer im Designer (im Event stehen alle xx.dimm-Variablen), es müssen nur die Dimmer-Variablen angelegt werden (auch dafür existiert ein Script).
BTW: ich kenne als Visualisierung (alternativ;) ) die LCNW. Dort muss man den Schiebe-Button direkt anfassen und ändert mit dem Schieben direkt den Wert. Auf einem Touch kommt das an der Lampe sehr „ruckelig“ an. Hier kann man auch neben den Button touchen, er läuft dann dort hin - beim loslassen wird der Wert dann „gleitend“ eingestellt. IMHO „viel besser“
Die Nutzung von und an LCN ist mittlerweile sehr gewachsen und hat nichts mehr mit der ursprünglichen (sehr spartanischen) Anbindung von Ralf zu tun.
Auf Wunsch des Herstellers mussten wir die Skripte in einem geschützten Bereich unterbringen (deshalb ist auch im IPS-Forum kein öffentlich zugänglicher LCN-Teil vorhanden). Wir haben für die V1 ein „Leseskript“, das fast das gesamte System beherrscht. Mit/für V2 hat Paresy einiges „gezaubert“.
Wenn du mehr wissen möchtest, melde dich im Bus-Profi-Forum an und oute dich dort in einer PM (oder im öffentlichen IPS-Bereich). Du wirst dann von einem Admin freigeschaltet werden. Als Vorraussetzung sehen wir allerdings eine LCN-Anlage und eine IPS-Lizenz (sonst macht es keinen Sinn).
Bislang haben wir jedem „Anfänger“ sein IPS mit LCN verbunden und zum laufen gebracht.
Ganz allgemein gilt natürlich: ja, es ist ‚unschön‘, dass wir da so im Verborgenen arbeiten müssen … aber wir möchten uns natürlich unseren Hersteller erhalten und nicht sein „Knoff-Hoff“ in die Welt posaunen.