[gelöst] [ASC] Shading - twilight als BrightnessSensor verwenden?

Begonnen von AndreAC, 21 Juli 2023, 13:28:38

Vorheriges Thema - Nächstes Thema

AndreAC

Hallo zusammen,

ich habe jetzt seit einiger Zeit das ASC Modul im Einsatz um meine Rollladensteuerung zu automatisieren. Das funktioniert soweit wunderbar, auch weil ich hier im Forum viele Antworten auf auftretende Fragen gefunden habe. :) Bei einem Thema komme ich jetzt aber leider weder mit Hilfe des Handbuchs noch mit alten Threads hier im Forum weiter.

Ich würde sehr gerne die Shading-Funktion nutzen, d.h. die Rollladen auf der Sonnenseite an sehr warmen Tagen herunterfahren. Zur Zeit habe ich aber keine Helligkeitssensoren bzw. nur Bewegungsmelder, die nur einen Status (Dunkel 0/1) liefern. Meine Überlegung war, einen Helligkeitssensor zu simulieren, indem ich z.B. Wetterdaten (sonnig, bewölkt, etc.) in einen numerischen Lux-Wert "übersetze" und diesen in einem Dummy speichere. Bei der Recherche nach Beispielen bin ich dann darauf gestoßen, dass das Twilight-Modul ein twilight_weather Reading hat, und dachte mir, dass ich das doch benutzen könnte, bis ich eine vernünftige Hardware-Lösung habe.

Jetzt bin ich mir aber unschlüssig, wie ich das in ASC konfigurieren soll. Laut Manual ist das zugehörige Attribut so definiert:

ASC_BrightnessSensor Sensorname[:brightness [400:800]]
ASC_BrightnessSensor DEVICE[:READING] WERT-MORGENS:WERT-ABENDS

Twilight liefert nun einen %-Wert, demnach würde ich ja einen Schwellwert wie z.B. 90 setzen - also bei > 90% soll die Rolllade herunterfahren. Jetzt ist mir aber nicht klar, warum zwischen morgens und abends unterschieden wird? Bedeutet das mit den Default-Settings, dass die Rolllade morgens bei einer Helligkeit > 400 Lux herunterfährt und Abends erst bei > 800 Lux? Dann ist mir aber nicht klar, wie sich morgens und abends in dem Kontext definieren, und ob sie zwischendurch wieder hochfährt...

Ich habe jetzt folgendes gesetzt, in dem Glauben, dass ich so das Shading aktiviere, wenn der twilight-Wert über 90% liegt:

attr Rollade_Schlafzimmer ASC_BrightnessSensor Twilight:twilight_weather 90:90
Der Vollständigkeit halber unten einmal die aktuelle "list" für das ASC Modul und eine Rolllade (Schlafzimmer), die beschatten soll. Wenn ihr noch weitere Infos braucht, sagt einfach kurz Bescheid.

Nach meinem Verständnis sollte die Beschattung jetzt starten, wenn die Außentemperatur über 20 Grad, twilight_weather über 90% und es zwischen 10 und 20 Uhr ist. Aber leider ohne Effekt.

Vermutlich stehe ich einfach total auf dem Schlauch und brauche nur den entscheidenden kleinen Hinweis. Für den wäre ich euch dankbar. :)

Internals:
  FUUID      63fb72b6-f33f-50bc-a59c-ae17b12bec2b632c
  FVERSION  73_AutoShuttersControl.pm:v0.10.25-s26950/2023-01-03
  MID        da39a3ee5e6b4b0d3255bfef95601890afd80709
  NAME      Rollladenautomatik
  NOTIFYDEV  Astro,Fensterkontakt_Badezimmer,Jalousie_Flur,Rollade_Badezimmer,Rollade_Buero,Rollade_Flur_oben_links,Rollade_Flur_oben_rechts,Rollade_Flur_unten,Rollade_Gaestetoilette,Rollade_Gaestezimmer,Rollade_Kueche,Rollade_Schlafzimmer,Rollade_Wohnzimmer_Fenster,Rollade_Wohnzimmer_Tuer,Rollladenautomatik,Tuerkontakt_Wohnzimmer,Twilight,Wetter,global
  NR        335
  NTFY_ORDER 51-Rollladenautomatik
  STATE      manual
  TYPE      AutoShuttersControl
  VERSION    v0.10.25
  eventCount 194
  OLDREADINGS:
  READINGS:
    2023-07-21 10:34:36  Jalousie_Flur_PosValue 0
    2023-07-21 08:00:02  Jalousie_Flur_lastPosValue 100
    2023-07-21 08:00:02  Jalousie_Flur_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 07:44:15  Rollade_Badezimmer_PosValue 19
    2023-07-20 07:30:02  Rollade_Badezimmer_lastPosValue 85
    2023-07-21 07:55:19  Rollade_Badezimmer_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:04:36  Rollade_Buero_PosValue 70
    2023-07-20 07:30:02  Rollade_Buero_lastPosValue 100
    2023-07-21 07:55:19  Rollade_Buero_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:05:24  Rollade_Flur_oben_links_PosValue 100
    2023-07-20 07:30:02  Rollade_Flur_oben_links_lastPosValue 100
    2023-07-21 07:55:19  Rollade_Flur_oben_links_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:05:22  Rollade_Flur_oben_rechts_PosValue 100
    2023-07-20 07:30:02  Rollade_Flur_oben_rechts_lastPosValue 100
    2023-07-21 07:55:19  Rollade_Flur_oben_rechts_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:00:59  Rollade_Flur_unten_PosValue 100
    2023-07-21 08:00:02  Rollade_Flur_unten_lastPosValue 0
    2023-07-21 08:00:02  Rollade_Flur_unten_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:05:21  Rollade_Gaestetoilette_PosValue 100
    2023-07-20 07:30:02  Rollade_Gaestetoilette_lastPosValue 0
    2023-07-21 07:55:19  Rollade_Gaestetoilette_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:04:46  Rollade_Gaestezimmer_PosValue 100
    2023-07-19 22:00:03  Rollade_Gaestezimmer_lastPosValue 0
    2023-07-21 09:00:02  Rollade_Gaestezimmer_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:00:19  Rollade_Kueche_PosValue 100
    2023-07-20 07:30:02  Rollade_Kueche_lastPosValue 0
    2023-07-21 07:55:19  Rollade_Kueche_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 10:36:04  Rollade_Schlafzimmer_PosValue 100
    2023-07-19 22:00:03  Rollade_Schlafzimmer_lastPosValue 36
    2023-07-21 09:00:02  Rollade_Schlafzimmer_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 07:59:34  Rollade_Wohnzimmer_Fenster_PosValue 100
    2023-07-20 07:30:02  Rollade_Wohnzimmer_Fenster_lastPosValue 0
    2023-07-21 07:55:20  Rollade_Wohnzimmer_Fenster_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 08:00:09  Rollade_Wohnzimmer_Tuer_PosValue 100
    2023-07-09 22:00:04  Rollade_Wohnzimmer_Tuer_lastDelayPosValue 30
    2023-07-20 07:30:03  Rollade_Wohnzimmer_Tuer_lastPosValue 0
    2023-07-21 07:55:20  Rollade_Wohnzimmer_Tuer_nextAstroTimeEvent 21.07.2023 - 22:00
    2023-07-21 07:55:37  ascEnable      on
    2023-07-21 10:34:34  controlShading  on
    2023-02-26 16:16:18  hardLockOut    off
    2023-07-20 20:37:52  room_1._Badezimmer_HomeKit_Homematic Rollade_Badezimmer
    2023-07-20 20:37:52  room_1._Buero_HomeKit_Homematic Rollade_Buero
    2023-07-20 20:37:52  room_1._Flur_oben_HomeKit_Homematic Rollade_Flur_oben_links,Rollade_Flur_oben_rechts
    2023-07-20 20:37:52  room_1._Flur_unten_HUEDevice_HomeKit Jalousie_Flur
    2023-07-20 20:37:52  room_1._Flur_unten_HomeKit_Homematic Rollade_Flur_unten
    2023-07-20 20:37:52  room_1._Gaestetoilette_Homematic Rollade_Gaestetoilette
    2023-07-20 20:37:52  room_1._Gaestezimmer_HomeKit_Homematic Rollade_Gaestezimmer
    2023-07-20 20:37:52  room_1._Kueche_HomeKit_Homematic Rollade_Kueche
    2023-07-20 20:37:52  room_1._Schlafzimmer_HomeKit_Homematic Rollade_Schlafzimmer
    2023-07-20 20:37:52  room_1._Wohnzimmer_HomeKit_Homematic Rollade_Wohnzimmer_Fenster,Rollade_Wohnzimmer_Tuer
    2023-02-26 16:16:18  selfDefense    off
    2023-07-21 10:36:04  state          manual
    2023-02-26 22:40:05  sunriseTimeWeHoliday on
    2023-07-20 21:10:33  userAttrList    rolled out
  helper:
    shuttersList:
      Jalousie_Flur
      Rollade_Badezimmer
      Rollade_Buero
      Rollade_Flur_oben_links
      Rollade_Flur_oben_rechts
      Rollade_Flur_unten
      Rollade_Gaestetoilette
      Rollade_Gaestezimmer
      Rollade_Kueche
      Rollade_Schlafzimmer
      Rollade_Wohnzimmer_Fenster
      Rollade_Wohnzimmer_Tuer
  monitoredDevs:
    Astro:
      Rollladenautomatik ASC_twilightDevice
    Fensterkontakt_Badezimmer:
      Rollade_Badezimmer ASC_WindowRec
    Jalousie_Flur:
    Rollade_Badezimmer:
    Rollade_Buero:
    Rollade_Flur_oben_links:
    Rollade_Flur_oben_rechts:
    Rollade_Flur_unten:
    Rollade_Gaestetoilette:
    Rollade_Gaestezimmer:
    Rollade_Kueche:
    Rollade_Schlafzimmer:
    Rollade_Wohnzimmer_Fenster:
    Rollade_Wohnzimmer_Tuer:
    Tuerkontakt_Wohnzimmer:
      Rollade_Wohnzimmer_Tuer ASC_WindowRec
    Twilight:
      Rollade_Gaestezimmer ASC_BrightnessSensor
      Rollade_Schlafzimmer ASC_BrightnessSensor
    Wetter:
      Rollladenautomatik ASC_windSensor
Attributes:
  ASC_autoAstroModeEvening HORIZON
  ASC_autoAstroModeEveningHorizon -4
  ASC_autoAstroModeMorning REAL
  ASC_autoAstroModeMorningHorizon -3
  ASC_autoShuttersControlComfort on
  ASC_expert 0
  ASC_tempSensor Wetter:temperature
  ASC_twilightDevice Astro
  ASC_windSensor Wetter:wind
  devStateIcon { ShuttersControl_DevStateIcon($name) }
  icon      fts_shutter_automatic
  room      ASC

Internals:
  DEF        SERIAL:1
  FUUID      63aa1508-f33f-50bc-cae7-79d8d34d9cc70759
  IODev      d_ccu
  NAME      Rollade_Schlafzimmer
  NR        250
  STATE      open
  TYPE      HMCCUCHN
  ccuaddr    SERIAL:1
  ccudevstate active
  ccuif      BidCos-RF
  ccuname    HM-LC-Bl1-FM SERIAL:1
  ccurolectrl BLIND
  ccurolestate BLIND
  ccusubtype HM-LC-Bl1-FM
  ccutype    HM-LC-Bl1-FM
  chntype    ?
  eventCount 194
  firmware  2.11
  readonly  no
  READINGS:
    2023-02-26 15:55:07  ASC_Enable      on
    2023-07-21 10:46:05  ASC_ShadingMessage INFO: current shading status is 'out' - next check in 10m
    2023-07-21 10:36:04  ASC_ShuttersLastDrive manual
    2023-07-21 09:00:02  ASC_Time_DriveDown 21.07.2023 - 22:00
    2023-07-21 09:00:02  ASC_Time_DriveUp 22.07.2023 - 10:00
    2023-07-21 10:36:04  DIRECTION      none
    2023-07-21 10:36:04  INHIBIT        false
    2023-07-20 21:10:32  IODev          d_ccu
    2023-07-21 10:35:49  L-Rollade_Schlafzimmer- 1
    2023-07-21 10:36:04  LEVEL          open
    2023-07-21 10:36:04  WORKING        no
    2023-07-21 10:36:04  activity        alive
    2023-07-20 20:37:54  associatedWith  Rollladenautomatik
    2023-07-21 10:36:04  control        open
    2023-07-21 10:36:04  devstate        ok
    2023-07-21 10:36:04  hmstate        open
    2023-07-21 10:36:04  level          open
    2023-07-21 10:36:04  pct            100
    2023-07-21 10:36:04  rssidevice      -71
    2023-07-21 10:36:04  rssipeer        -68
    2023-07-21 10:36:04  sign            off
    2023-07-21 10:36:04  state          open
  hmccu:
    channels  1
    detect    1
    devspec    SERIAL:1
    nodefaults 1
    role      1:BLIND
    setDefaults 0
    cmdlist:
      get       
      set        oldPos:noArg pct down close:noArg stop:noArg up open:noArg toggle:noArg
    control:
      chn        1
      dpt        LEVEL
    dp:
        --- gekürzt ---
        VALUES:
    roleCmds:
      get:
      set:
        close:
          channel    1
          role      BLIND
          subcount  1
          syntax    V:LEVEL:0
          usage      close
          subcmd:
            000:
              args      0
              dpt        LEVEL
              fnc       
              max        1.000000
              min        0.000000
              parname    LEVEL
              partype    3
              ps        VALUES
              scn        000
              unit      100%
        down:
          channel    1
          role      BLIND
          subcount  1
          syntax    V:LEVEL:?delta=-20
          usage      down [delta]
          subcmd:
            000:
              args      -20
              dpt        LEVEL
              fnc       
              max        1.000000
              min        0.000000
              parname    delta
              partype    2
              ps        VALUES
              scn        000
              unit      100%
        oldPos:
          channel    1
          role      BLIND
          subcount  1
          syntax    V:LEVEL:100.5
          usage      oldPos
          subcmd:
            000:
              args      100.5
              dpt        LEVEL
              fnc       
              max        1.000000
              min        0.000000
              parname    LEVEL
              partype    3
              ps        VALUES
              scn        000
              unit      100%
        open:
          channel    1
          role      BLIND
          subcount  1
          syntax    V:LEVEL:100
          usage      open
          subcmd:
            000:
              args      100
              dpt        LEVEL
              fnc       
              max        1.000000
              min        0.000000
              parname    LEVEL
              partype    3
              ps        VALUES
              scn        000
              unit      100%
        pct:
          channel    1
          role      BLIND
          subcount  1
          syntax    V:LEVEL:?level
          usage      pct level
          subcmd:
            000:
              args     
              dpt        LEVEL
              fnc       
              max        1.000000
              min        0.000000
              parname    level
              partype    2
              ps        VALUES
              scn        000
              unit      100%
        stop:
          channel    1
          role      BLIND
          subcount  1
          syntax    V:STOP:1
          usage      stop
          subcmd:
            000:
              args      1
              dpt        STOP
              fnc       
              max        1
              min        0
              parname    STOP
              partype    3
              ps        VALUES
              scn        000
              unit     
        up:
          channel    1
          role      BLIND
          subcount  1
          syntax    V:LEVEL:?delta=+20
          usage      up [delta]
          subcmd:
            000:
              args      +20
              dpt        LEVEL
              fnc       
              max        1.000000
              min        0.000000
              parname    delta
              partype    2
              ps        VALUES
              scn        000
              unit      100%
    state:
      chn        1
      dpt        LEVEL
Attributes:
  ASC        2
  ASC_BrightnessSensor Twilight:twilight_weather 90:90
  ASC_Mode_Up always
  ASC_Pos_Reading pct
  ASC_Shading_BetweenTheTime 10:00-20:00
  ASC_Shading_Min_OutsideTemperature 20.0
  ASC_Shading_Mode always
  ASC_Shading_Pos 30
  ASC_Time_Down_Early 17:00
  ASC_Time_Down_Late 22:00
  ASC_Time_Up_Early 09:00
  ASC_Time_Up_Late 10:00
  ASC_Time_Up_WE_Holiday 10:00
  alexaName  Schlafzimmerfenster
  cmdIcon    open:fts_shutter_up stop:fts_shutter_manual close:fts_shutter_down
  genericDeviceType blind
  room      1. Schlafzimmer,HomeKit,Homematic
  substexcl  pct
  userattr  ASC_Adv:on,off ASC_Antifreeze:off,soft,hard,am,pm ASC_Antifreeze_Pos:5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100 ASC_AutoAstroModeEvening:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ASC_AutoAstroModeEveningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ASC_AutoAstroModeMorning:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ASC_AutoAstroModeMorningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ASC_BlockingTime_afterManual ASC_BlockingTime_beforeDayOpen ASC_BlockingTime_beforeNightClose ASC_BrightnessSensor ASC_Closed_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_ComfortOpen_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_CommandTemplate ASC_Down:time,astro,brightness,roommate ASC_DriveUpMaxDuration ASC_Drive_Delay ASC_Drive_DelayStart ASC_ExternalTrigger ASC_GuestRoom:on,off ASC_LockOut:soft,hard,off ASC_LockOut_Cmd:inhibit,blocked,protection ASC_Mode_Down:absent,always,off,home ASC_Mode_Up:absent,always,off,home ASC_Open_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_Partymode:on,off ASC_Pos_Reading ASC_PrivacyDownValue_beforeNightClose ASC_PrivacyDown_Pos ASC_PrivacyUpValue_beforeDayOpen ASC_PrivacyUp_Pos ASC_RainProtection:on,off ASC_Roommate_Device ASC_Roommate_Reading ASC_Self_Defense_AbsentDelay ASC_Self_Defense_Mode:absent,gone,off ASC_Shading_BetweenTheTime ASC_Shading_InOutAzimuth ASC_Shading_MinMax_Elevation ASC_Shading_Min_OutsideTemperature ASC_Shading_Mode:absent,always,off,home ASC_Shading_Pos:10,20,30,40,50,60,70,80,90,100 ASC_Shading_StateChange_SunnyCloudy ASC_Shading_WaitingPeriod ASC_Shutter_IdleDetection ASC_ShuttersPlace:window,terrace,awning,EG_window ASC_SlatPosCmd_SlatDevice ASC_Sleep_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_TempSensor ASC_Time_Down_Early ASC_Time_Down_Late ASC_Time_Up_Early ASC_Time_Up_Late ASC_Time_Up_WE_Holiday ASC_Up:time,astro,brightness,roommate ASC_Ventilate_Pos:10,20,30,40,50,60,70,80,90,100 ASC_Ventilate_Window_Open:on,off ASC_WiggleValue ASC_WindParameters ASC_WindProtection:on,off ASC_WindowRec ASC_WindowRec_PosAfterDayClosed:open,lastManual ASC_WindowRec_subType:twostate,threestate
  webCmd    pct:open:close:stop
  widgetOverride pct:slider,0,10,100

schnuddel

Ich habe keinen Helligkeitssensor verwendet, sondern regele es nur abhängig von der Temperatur und der Uhrzeit.

define WZ_Schatten DOIF ([10:00-20:00] and [LokalWetter:temperature] > 27) (set WZ_Rolladen dim 20)
Vielleicht hilft das ja weiter?
Raspi, ZWave, HUE, Neato Botvac, Squeezebox

AndreAC

Zitat von: schnuddel am 21 Juli 2023, 14:15:38Ich habe keinen Helligkeitssensor verwendet, sondern regele es nur abhängig von der Temperatur und der Uhrzeit.

define WZ_Schatten DOIF ([10:00-20:00] and [LokalWetter:temperature] > 27) (set WZ_Rolladen dim 20)
Vielleicht hilft das ja weiter?

Danke dir! Ja, das ist die einfache Lösung und damit könnte ich es, zumindest wenn es jetzt kurzfristig nochmal extrem heiß wird, erstmal lösen. ;)

Ich würde das aber gerne über ASC regeln, weil die einzelnen Stati da aufeinander aufbauen, z.B. Sperre wegen geöffneter Terrassentür, Anwesenheiten, usw. Wenn ich die Logik richtig verstehe, wäre das DOIF für ASC ja im Grunde eine manuelle Fahrt.

CoolTux

#3
Die 90:90 kannst weg machen, das ist nur für Brightnessfahrten morgens und abends.
Wirft Dein Twilight für das Reading twilight_weather auch ein Event?
2023-07-21 10:46:05  ASC_ShadingMessage INFO: current shading status is 'out' - next check in 10m
    2023-07-21 10:36:04  ASC_ShuttersLastDrive manual

Hier ist kurz vor dem Shading manuell gefahren worden daher noch innerhalb der blocking time
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

AndreAC

Danke!

Ich habe mal explizit event-on-update-reading für das twilight_weather Reading gesetzt und ein Logfile eingerichtet, um das zu prüfen.

Ich habe jetzt auch...

ASC_ShadingMessage INFO: shading active, global temp sensor is set, but shutters temperature sensor is not set

Das bedeutet doch, dass die Rolllade jetzt beim nächsten erreichen der Bedingungen runterfahren müsste?

Eine Zusatzfrage habe ich noch. ;) Woher weiß das Modul denn, welchen Wert twilight_weather erreichen muss, damit es als "hell genug" gewertet wird? Das sind ja keine Lux-Werte, die ich da habe.

Vielen Dank nochmal!

CoolTux

ZitatASC_Shading_StateChange_SunnyCloudy - Shading starts/stops at this outdoor brightness, depending also on other sensor values. An optional parameter specifies how many successive brightness reading values should be used to average the brightness value. Defaults to 35000:20000 [3].

Mit dem Attribut musst Du das Brightness ersetzen durch die Werte von mir Twilight
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

AndreAC

Zitat von: CoolTux am 22 Juli 2023, 18:57:05
ZitatASC_Shading_StateChange_SunnyCloudy - Shading starts/stops at this outdoor brightness, depending also on other sensor values. An optional parameter specifies how many successive brightness reading values should be used to average the brightness value. Defaults to 35000:20000 [3].

Mit dem Attribut musst Du das Brightness ersetzen durch die Werte von mir Twilight

Auch hier nochmal vielen Dank. Das war tatsächlich das Attribut, das ich vermisst bzw. gedanklich nicht mit Brightness verknüpft habe. Jetzt funktioniert alles einwandfrei! :)