YESLY Smart Home

Startseite Foren Fibaro Forum (Z-Wave) Fibaro LUA Scripts für HC2 Und noch ein Rollladen Script

Dieses Thema enthält 104 Antworten und 17 Teilnehmer. Es wurde zuletzt aktualisiert von dirkg173 dirkg173 vor 2 Tagen, 17 Stunden.

Ansicht von 15 Beiträgen - 1 bis 15 (von insgesamt 105)
  • Autor
    Beiträge
  • #64172

    jeep
    Teilnehmer

    Hallo zusammen,

    ich nutze seit 2 Monaten dieses Rollladenscript. Im EG habe ich 6 Rollläden und im OG 2. Also habe ich das script 2 mal hinterlegt weil ich ja nicht gleichzeitig oben und unten sein kann und mein Hauptaugenmerk die Anwesenheitssimulation war.
    Ich habe das Urscript von Daniel verwendet und es nach nach meinen Bedürfnissen angepasst. Zusätzlich habe ich es modularer aufgebaut so da man es leicht abändern oder erweitern kann.
    Die Variable „rollershutter_runs“ wird auch bei diesen Script benötigt. Gesteuert wird hauptsächlich über Sonnenaufgang, Sonnenuntergang, Temperatur und natürlich fast immer zufällig. Morgens und Abends werden die Rollläden in 2 Stufen geöffnet. Wehr mehr Bedingungen haben will kann dass leicht erweitern.
    Man kann für morgens und abends unterschiedliche Rollläden angeben. Sind wir nicht im Urlaub wird der Rolladen an der Terrassentür nicht automatisch heruntergefahren, so das man sich nie aussperrt.
    Also wer das Script nutzen will, einfach die Rolläden in den beiden Variablen ‚rollerIDsM‘ und ‚rollerIDsE‘ (Morning und Evening) eintragen.
    Have fun.


    Grüße, Jeep
    • Dieses Thema wurde geändert vor 2 Jahre, 6 Monate von  jeep.
    #64329

    boomx
    Teilnehmer

    Cool, danke für deine Mühen und fürs Teilen :)

    #94526

    jeep
    Teilnehmer

    Rolladensteuerung etwas anders!

    Hallo zusammen,
    da ich sehe dass doch einige Benutzer Probleme mit dem hier im Forum vorhandenen Rollladenscript haben, will ich mal meine Version vorstellen.
    Vor 1 1/2 Jahren habe ich auch mit dem Initialscript von boomx angefangen, habe aber kurze Zeit später meine eigene Version hochgeladen.
    Was ist an dieser neuen Version anders oder besser? Nun zuerst habe ich versucht das Script so modular wie möglich aufzubauen. Dadurch
    ist es leichter wartbar und überschaubarer so das auch LUA-Neulinge viel leichter Anpassungen vornehmen können.
    Wie schon in meinem vorherigen Beitrag angedeutet, war ein wichtiger Punkt die Anwesenheitssimulation, da wir öfter mal verreisen und
    dass soll ja nicht sofort ersichtlich sein. Deshalb gehen die Rollläden in 2 Stufen hoch oder runter. Das ist aber nur eine Option die
    jeder so handhaben kann wie er will. Bedingungen können beliebig hinzugefügt oder abgeändert werden. Zu jeder Bedingung gibt es die
    zugehörige Funktion die je nach Bedarf auch leicht abgeändert werden kann.
    Der Sonnenauf- und untergang ist ein wichtiger Teil der Steuerung. Da sich aber der Sonnenauf/Untergang im Laufe eines Jahres (zwischen
    Dezember und Juni)um bis zu fast 4 Std. verschiebt und von der geographischen Lage abhängt, habe ich die Möglichkeit geschaffen zu jedem
    Monat, morgens und abends Korrekturwerte anzugeben, wie hier im Beispiel:

    Natürlich kann man die Rollläden zu festen Zeiten hoch oder runter fahren.
    Eine Besonderheit ist der Sonnenschutz. An ganz heißen Sommertagen Überhitzen sich die Räume mit der zur Sonnenseite zugewandten Fenster
    doch sehr stark, so das man damit dagegen steuern kann und die Rollläden bis auf ein minumum schließen kann. Zur Steuerung wird die
    Helligkeit und/oder die Außentemperatur verwendet.
    Wichtiger ist natürlich die Temperatur da es auch im Winter Lichtverhältnisse bis zu einigen Zigtausend Lux gibt.
    Was ist aber an diesem Sonnenschutz so besonders? Nun er merkt sich die Position der Rollläden und stellt den vorherigen Zustand wieder her.
    Beispiel: Sie verlassen morgens das Haus und haben Ihre Rollläden so zwischen 40% und 60% gestellt so dass die Blumen noch genügend Licht haben.
    Zwischen 11:00 und 15:00 wird es aber sehr heiß und der Sonnenschutz wird die Rollläden bis auf die z.B. eingestellten 85% schließen. Ist
    die Temperatur wieder normal, wird der für jeden einzelnen Rollladen ermittelte vorherige Wert wiederhergestellt.

    Im großen ganzen beschränkt sich die Konfiguration im ermitteln der IDs der vorhandnen Sensoren und Rollläden und eintragen derselben in die
    zugehörigen Variablen.
    Ist das Feiertage Script hier aus dem Forum installiert, kann es ohne Änderungen mit benutzt werden.

    Die IDs der Rolläden werden in 3 verschiedenen Arrays eingetragen:
    local rollerIDsM = {151, 217, 178, 179, 180, 182 }} -- IDs der Rolllaeden fuer morgens {n1, n2, nn}

    local rollerIDsS = {151, 217, 178, 179 } -- IDs der Rolllaeden fuer den Sonnenschutz auf der Suedseite.

    Die Variablen Namen sind zwar sprechend aber ich werde demnächst noch das Readme PDF fertigstellen wo alles nochmal erklärt wird. Bei
    Problemen helfe ich Euch gerne.


    Grüße, Jeep
    • Diese Antwort wurde geändert vor 1 Jahr, 1 Monat von  jeep.
    • Diese Antwort wurde geändert vor 1 Jahr, 1 Monat von  jeep.
    • Diese Antwort wurde geändert vor 1 Jahr, 1 Monat von  jeep.
    #94532

    lodi
    Teilnehmer

    Hi Jeep,

    sehr cool, Danke. Wie Du evtl. gesehen hast habe ich mit dem anderen Rolladenskript auch ein paar Problemchen. Meist läuft es sehr gut, aber leider nicht immer :-).
    Also werde ich am Wochenede mal Deine Szene einbauen.

    Vielen Dank fürs Teilen
    Alex

    #94538

    jeep
    Teilnehmer

    Leider hat die vorige Version noch ein wenig debugging Code enthalten und der Sonnenschutz war deaktiviert.
    Darum bitte nur diese Version (1.1.8) benutzen. Danke!


    Grüße, Jeep
    #94561

    lodi
    Teilnehmer

    Hi Jeep,

    hatte gestern noch die Szene eingebaut und bekomme leider eine für mich nict nachvollziehbare Fehlermeldung. Habe eigentlich nicht geändert außer den Sensor-/Geräte-Variablen und die habe ich jetzt schon x-mal überprüft.
    Wäre prima wenn Du Dir mal den code und die Fehlermeldung ansehen könntest.

    Ach ja, in der Version unten hatte ich zusätzlich die simulationszeiten in Zeile 299-300 aktiviert. Das macht aber keine Unterschied, weil das Script dort nie ankommt.

    Gruß
    Alex

    [DEBUG] 12:54:23: — Zeiten für 30.Jun 2018, Version: 1.1.8 —
    [DEBUG] 12:54:23: RealSunrise: 04:52
    [DEBUG] 12:54:23: New SunRise: 05:59
    [DEBUG] 12:54:23: Later Open: 06:09
    [DEBUG] 12:54:23: —
    [DEBUG] 12:54:23: RealSunset: 21:52
    [DEBUG] 12:54:23: New SunSet: 22:24
    [DEBUG] 12:54:23: LaterClose 22:34
    [DEBUG] 12:54:23: Temperatur: 26° um 12:54
    [DEBUG] 12:54:23: ———————————
    [DEBUG] 12:54:23: [1;31m2018-06-30 12:54:23.132173 [ fatal] Unknown exception: /opt/fibaro/FibaroSceneAPI.lua:334: attempt to concatenate local ‚deviceID‘ (a nil value)
    Copy sceneClick the button below to copy this scene. Created copy will be opened to be modified.Copy

    #94575

    jeep
    Teilnehmer

    Hi Alex,

    ich denke das Problem liegt daran dass Du die Vairable lamp1ID auf nil gesetzt hast. Das fange ich nicht ab da ich davon ausgehe dass jeder eine Lampe im Netz hat. Wenn nicht müsstest Du die Zeilen mit „fibaro:call(lamp1ID,…)“ auskommentieren.

    Ach ja, in der Version unten hatte ich zusätzlich die simulationszeiten in Zeile 299-300 aktiviert. Das macht aber keine Unterschied, weil das Script dort nie ankommt.

    Doch doch, sogar jede Minute einmal. Du kannst mal eine debug Ausgabe dazwischen positionieren. Bitte melden wenn Du die Fehlermeldung weiterhin bekommen solltest.


    Grüße, Jeep
    #94585

    lodi
    Teilnehmer

    Hi Jeep,

    ja, die fehlende Lampe war tatsächlich ein Problem. Ich hatte das auch schon vorher versucht und hatte eine Lampenvarible mit eingebaut. Der Test hatte sich aber dann mit einem anderen Fehler (rollershutterRuns = 1) überlagert und ich habe dann auch dir Lampe wieder herausgenommen.

    Wie auch immer neuer Versuch mit Lampe führt dazu, dass zumindest die erste Phase (Rollladen auf 30%) läuft, dann aber im Anschluß die Szene wieder in den Fehler läuft. Das passiert dann wenn die Zeit für „newsunriseHour“ erreicht wird. Ich versuche also jetzt noch mal die Szene ohne die beiden Variablen für die Simulation laufen zu lassen. Vielleicht liegt es ja daran. Die Fehlermeldung ist leider -zumindest für mich- etwas unspezifisch (s.u.)

    Gruß und Vielen Dank für die Tipps
    Alex

    DEBUG] 13:09:16: — Zeiten für 01.Jul 2018, Version: 1.1.8 —
    [DEBUG] 13:09:16: RealSunrise: 04:53
    [DEBUG] 13:09:16: New SunRise: 05:46
    [DEBUG] 13:09:16: Later Open: 05:56
    [DEBUG] 13:09:16: —
    [DEBUG] 13:09:16: RealSunset: 21:52
    [DEBUG] 13:09:16: New SunSet: 22:10
    [DEBUG] 13:09:16: LaterClose 22:20
    [DEBUG] 13:09:16: Temperatur: 26.2° um 13:09
    [DEBUG] 13:09:16: ———————————
    [DEBUG] 13:09:23: Rolllaeden 30% geoeffnet – Sun Jul 1 13:09:23 2018
    [DEBUG] 13:21:23: [1;31m2018-07-01 13:21:23.964733 [ error] timer handler failed with error

    #94593

    lodi
    Teilnehmer

    Moin,

    leider war es da auch nicht. Jetzt geht es gleich mit dieser Fehlermeldung los. Die Lampe ist eine Hue. Kann das einen Unterschied machen?

    Gruß
    Alex

    [DEBUG] 15:01:09: — Zeiten für 01.Jul 2018, Version: 1.1.8 —
    [DEBUG] 15:01:09: RealSunrise: 04:53
    [DEBUG] 15:01:09: New SunRise: 05:46
    [DEBUG] 15:01:09: Later Open: 05:56
    [DEBUG] 15:01:09: —
    [DEBUG] 15:01:09: RealSunset: 21:52
    [DEBUG] 15:01:09: New SunSet: 22:10
    [DEBUG] 15:01:09: LaterClose 22:20
    [DEBUG] 15:01:09: Temperatur: 26.8° um 15:01
    [DEBUG] 15:01:09: ———————————
    [DEBUG] 15:01:17: Rolllaeden 30% geoeffnet – Sun Jul 1 15:01:17 2018
    [DEBUG] 15:01:17: [1;31m2018-07-01 15:01:17.438377 [ fatal] Unknown exception: /opt/fibaro/scenes/141.lua:140: attempt to compare number with nil

    #94605

    jeep
    Teilnehmer

    Hi Alex,

    ja klar liegt es an der HUE. Die kann man so viel ich weiß (habe keine Hues) nicht mit fiabro Befehlen steuern.
    Der nächste Fehler geht auf meine Kappe. 😀
    Ersetze bitte die Zeile 264 (brigthness=…) durch die folgenden 5.

    Ich hole mir nämlich die Helligkeit aus einer globalen Variable, die von einem nicht ZWave Gerät per http request geliefert wird.
    Sorry für die Umstände, freue mich aber über Dein feedback.


    Grüße, Jeep
    #94607

    lodi
    Teilnehmer

    Hi Jeep,

    ja die brightness Variable hatte ich auch gerade am Wickel. Ich habe jetzt mal Dein Update eingebaut und melde mich wieder..

    Gruß
    Alex

    #94626

    lodi
    Teilnehmer

    Moin Jeep,

    prima es läuft bestens. Ich musste allerdings noch eine „tonumber“ einsetzen damit die brightness Variable verwendet werden konnte. Ebenso auch in Zeile 64. Aber jetzt flutscht es und ich kann mich an die Feineinstellungen (weitere Shutter, Helligkeiten und Rollladenstellungen..) machen.

    Ach ja, Philips Hue funktioniert wie jeder andere Fibaro Aktor einwandfrei. Kann man also auch als Anwesenheitssimulator benutzen.

    Best Grüße aus S-H
    Alex

    Hier nochmal die bei mir laufende Szene: