Hallo,
da in dem anderen Post so viel los ist mach ich es mal einzeln.
Also ich habe leider Probleme damit ASC bei mir nach meinen Vorstellungen ein zu richten.
Hier mal meine sehr überschaubares Setup und was ich möchte:
- Aktor: 1x HM-LC-JA1PBU-FM
- Es geht mir nur um dieses eine Fenster mit einer Jalousie
- Fenster Richtung: Westen
- Sonneneinstrahlung: ab azimuth > 180.0 bis elevation < 6.0
- Dahinter befindet sich ein langgezogenes Wohnzimmer in dem fensternah ein Fernseher steht und am entfernten Ende eine Motorleinwand mit Beamer
- Die Leinwand soll beim herunterfahren direkt die Jalousie steuern (verdunkeln). Beim hoch fahren wieder die "Automatik" aktiviren so das die Jalousie auf die von ASC vorgesehene Position fährt. (Leinwand ist als Gerät in FHEM vorhanden)
- Der Fernseher ist bei Sonneneinstrahlung nur schlecht zu erkennen. Daher fahren wir nach bedarf die Jalousie manuell herunter. (keine Automatik)
- Das Fenster ist sehr groß und lässt nachts wenn wir schlafen zu viel Licht in die Wohnung. Daher soll die Jalousie herunter fahren wenn das rgr Gerät asleep bzw. gotosleep meldet.
- Im Sommer muss die Jalousie immer beschatten da sich die Wohnung sonst zu stark aufheizt. (auch bei Abwesenheit aber nur wenn es nicht zu windig ist)
- Im Sommer und im Winter soll die Jalousie abends automatisch nach oben fahren um noch das restliche Licht von draußen zu nutzen. (elevation < 6.0 bzw auch azimuth)
- Morgends soll die Jalousie einfach vom rgr Gerät gesteuert werden (awoken oder home).
- Es soll ein Wetterschutz umgesetzt werden Weather Modul Auswertung die ich gern extern machen möchte die mir ermöglicht die Jalousie nach oben zu fahren und die weitere Ansteuerung zu deaktivieren. (Regen, Schnee, Sturm, Bewölkt usw.) Evtl. kommen hier später auch noch eigene Sensoren bzw eine Wetterstation hinzu. Ideal währe eine Schutzposition. Eine Jalousie ist hier besonders anfällig allerdings ist dies auch bei normalen Rollos sinvoll um diese bei Hagel nach oben zu fahren und vor Beschädigung zu schützen.
- Es soll ein Frostschutz umgesetzt werden unter 0°C Jalousie hoch fahren und nicht mehr ansteuern.
Hier zunächst mal meine Versuche (reduziert auf die relevanten attr):
defmod xx.AutoShuttersControl AutoShuttersControl
attr xx.AutoShuttersControl ASC_Shading_Mode always
attr xx.AutoShuttersControl ASC_autoShuttersControlComfort on
attr xx.AutoShuttersControl ASC_autoShuttersControlEvening on
attr xx.AutoShuttersControl ASC_autoShuttersControlMorning on
attr xx.AutoShuttersControl ASC_freezeTemp 0
attr xx.AutoShuttersControl ASC_residentsDev Bewohner:state
attr xx.AutoShuttersControl ASC_shuttersDriveDelay 0
attr xx.AutoShuttersControl ASC_tempSensor xx.Aussenthermometer:temperature
attr xx.AutoShuttersControl ASC_twilightDevice mz.Twilight
attr xx.AutoShuttersControl ASC_windSensor xx.Wetter.openweathermap:wind
defmod mz.HM.Rollo CUL_HM 6686C3
attr mz.HM.Rollo ASC 2
attr mz.HM.Rollo ASC_Antifreeze soft
attr mz.HM.Rollo ASC_Antifreeze_Pos 100
attr mz.HM.Rollo ASC_BlockingTime_afterManual 1200
attr mz.HM.Rollo ASC_BlockingTime_beforDayOpen 3600
attr mz.HM.Rollo ASC_BlockingTime_beforNightClose 3600
attr mz.HM.Rollo ASC_Closed_Pos 0
attr mz.HM.Rollo ASC_Down roommate
attr mz.HM.Rollo ASC_DriveUpMaxDuration 60
attr mz.HM.Rollo ASC_ExternalTrigger wz.Leinwand:state drive-down:drive-up 0:100
attr mz.HM.Rollo ASC_Mode_Down always
attr mz.HM.Rollo ASC_Mode_Up always
attr mz.HM.Rollo ASC_Open_Pos 100
attr mz.HM.Rollo ASC_PrivacyDown_Pos 0
attr mz.HM.Rollo ASC_RainProtection on
attr mz.HM.Rollo ASC_Roommate_Device Bewohner
attr mz.HM.Rollo ASC_Shading_InOutAzimuth 180:280
attr mz.HM.Rollo ASC_Shading_MinMax_Elevation 6.0:100.0
attr mz.HM.Rollo ASC_Shading_Min_OutsideTemperature 0
attr mz.HM.Rollo ASC_Shading_Mode always
attr mz.HM.Rollo ASC_Shading_Pos 0
attr mz.HM.Rollo ASC_ShuttersPlace window
attr mz.HM.Rollo ASC_Sleep_Pos 0
attr mz.HM.Rollo ASC_WindParameters 30:20 100
attr mz.HM.Rollo ASC_WindProtection on
Ich habe leider noch nicht herausgefunden wann das alles nun funktioniert und wann nicht. Geschweige denn wie ich alle Funktionen noch einbauen muss. Den einen Tag fährt die Jalousie morgens hoch den anderen wieder nicht. Die Beschattung funktioniert nur zum Teil. Die Jalousie fährt runter aber dann nicht wieder hoch. Und abends wenn wir schlafen gehen fährt die Jalousie auch nicht jedes mal herunter. Das reading ASC_ShuttersLastDrive steht immer auf manual auch wenn ASC die Jalousie mal gesteuert hat.
Leider hab ich keine Idee mehr an welcher Schraube ich noch drehen kann.
Ich erwarte mir hier keine Komplettlösung für das was ich mir vorstelle sondern vielleicht eher so was wie eine Diskussion zu einzelnen Parametern und wie diese zu verwenden sind. Im Wiki verstehe ich die readinggroups z.B. nicht da dort und auch hier im Forum Parameter beschrieben sind die es scheinbar gar nicht mehr gibt. Desweiteren finde ich die Beschreibung der Parameter oftmals auch ziemlich knapp. Ich könnte hier auch gern unterstürzen und im Wiki Ergänzungen machen wenn ich dann mal geblickt habe wie ASC funktioniert.
LG Alina
Mach mal bitte kleine Schritte.
Mach erstmal nur Morgens hoch und Abends runter wenn Deine Frau und Du ins Bett gehen oder auf stehen. Dazu kannst Du hin der Tat das Residents Device als roommate für das Rollo an geben. Ich habe das getestet, das geht.
Als weiteres kannst Du ja erstmal die Leinwand und Fernsehr Geschichte testen. Es gibt das Attribut external Trigger welches Du nehmen kannst. Versuch erstmal nur die beiden Sachen funktional um zu setzen.
Grüße
Also das fahren mit dem Roommate und der Leinwand funktioniert nun. Allerdings finde ich es immer noch merkwürdig das ASC_ShuttersLastDrive jedes mal auf manual schaltet wenn die Jalousie fertig gefahren ist und der Jalousieaktor die neue Position meldet.
Hier das Log davon:
2020-04-14_01:05:48 mz.HM.Rollo ASC_ShuttersLastDrive: manual
2020-04-14_01:05:48 mz.HM.Rollo timedOn: off
2020-04-14_01:05:48 mz.HM.Rollo off
2020-04-14_01:05:48 mz.HM.Rollo slatDir: stop
2020-04-14_01:05:48 mz.HM.Rollo pctSlat: 0
2020-04-14_01:05:48 mz.HM.Rollo pct: 0
2020-04-14_01:05:48 mz.HM.Rollo motor: stop:off
2020-04-14_01:05:48 mz.HM.Rollo level: 0
2020-04-14_01:05:48 mz.HM.Rollo deviceMsg: off (to xx.VCCU)
2020-04-14_01:04:46 mz.HM.Rollo ASC_ShuttersLastDrive: roommate asleep
2020-04-14_01:04:46 mz.HM.Rollo timedOn: off
2020-04-14_01:04:46 mz.HM.Rollo on
2020-04-14_01:04:46 mz.HM.Rollo slatDir: down
2020-04-14_01:04:46 mz.HM.Rollo pctSlat: 100
2020-04-14_01:04:46 mz.HM.Rollo pct: 100
2020-04-14_01:04:46 mz.HM.Rollo motor: down:on
2020-04-14_01:04:46 mz.HM.Rollo level: 100
2020-04-14_01:04:46 mz.HM.Rollo deviceMsg: on (to xx.VCCU)
2020-04-14_01:04:46 mz.HM.Rollo set_0
2020-04-14_01:04:46 mz.HM.Rollo level: set_0
Evtl. hat ja hierzu noch jemand eine Idee
LG Alina
Setz mal event-on-change-reading .* Im Rollo Device.
Außerdem scheint Dir das Attribut ASC_Pos_Reading zu fehlen. Ist nicht so schlimm in Deinem Fall aber eigentlich wird es immer automatisch gesetzt. Bei Dir auf pct
Hm irgendwie will es nicht wie es soll:
2020-04-14_15:29:38 mz.HM.Rollo ASC_ShuttersLastDrive: manual
2020-04-14_15:29:37 mz.HM.Rollo off
2020-04-14_15:29:37 mz.HM.Rollo slatDir: stop
2020-04-14_15:29:37 mz.HM.Rollo pctSlat: 0
2020-04-14_15:29:37 mz.HM.Rollo pct: 0
2020-04-14_15:29:37 mz.HM.Rollo motor: stop:off
2020-04-14_15:29:37 mz.HM.Rollo level: 0
2020-04-14_15:29:37 mz.HM.Rollo deviceMsg: off (to xx.VCCU)
2020-04-14_15:28:36 mz.HM.Rollo on
2020-04-14_15:28:36 mz.HM.Rollo slatDir: down
2020-04-14_15:28:36 mz.HM.Rollo motor: down:on
2020-04-14_15:28:36 mz.HM.Rollo level: 100
2020-04-14_15:28:35 mz.HM.Rollo set_0
2020-04-14_15:28:35 mz.HM.Rollo level: set_0
2020-04-14_15:28:35 Bewohner gotosleep
Ich hab jetzt folgendes eingestellt:
attr mz.HM.Rollo ASC 2
attr mz.HM.Rollo ASC_Antifreeze soft
attr mz.HM.Rollo ASC_Antifreeze_Pos 100
attr mz.HM.Rollo ASC_BlockingTime_afterManual 1200
attr mz.HM.Rollo ASC_BlockingTime_beforDayOpen 3600
attr mz.HM.Rollo ASC_BlockingTime_beforNightClose 3600
attr mz.HM.Rollo ASC_Closed_Pos 0
attr mz.HM.Rollo ASC_Down roommate
attr mz.HM.Rollo ASC_DriveUpMaxDuration 60
attr mz.HM.Rollo ASC_ExternalTrigger wz.Leinwand:state drive-down:drive-up 0:100
attr mz.HM.Rollo ASC_Mode_Down always
attr mz.HM.Rollo ASC_Mode_Up always
attr mz.HM.Rollo ASC_Open_Pos 100
attr mz.HM.Rollo ASC_Pos_Reading pct
attr mz.HM.Rollo ASC_Roommate_Device Bewohner
attr mz.HM.Rollo ASC_Shading_InOutAzimuth 180:280
attr mz.HM.Rollo ASC_Shading_MinMax_Elevation 6.0:100.0
attr mz.HM.Rollo ASC_Shading_Min_OutsideTemperature 0
attr mz.HM.Rollo ASC_Shading_Mode always
attr mz.HM.Rollo ASC_Shading_Pos 0
attr mz.HM.Rollo ASC_ShuttersPlace window
attr mz.HM.Rollo ASC_Sleep_Pos 0
attr mz.HM.Rollo ASC_Time_Down_Early 00:00
attr mz.HM.Rollo ASC_Time_Down_Late 01:00
attr mz.HM.Rollo ASC_Time_Up_Early 06:00
attr mz.HM.Rollo ASC_Time_Up_Late 09:00
attr mz.HM.Rollo ASC_Time_Up_WE_Holiday 09:00
attr mz.HM.Rollo ASC_Up roommate
attr mz.HM.Rollo ASC_WindParameters 30:20 100
attr mz.HM.Rollo ASC_WindProtection on
attr xx.AutoShuttersControl ASC_AutoAstroModeEvening HORIZON
attr xx.AutoShuttersControl ASC_AutoAstroModeEveningHorizon -9
attr xx.AutoShuttersControl ASC_AutoAstroModeMorning NAUTIC
attr xx.AutoShuttersControl ASC_Pos_Reading pct
attr xx.AutoShuttersControl ASC_Shading_Mode always
attr xx.AutoShuttersControl ASC_autoShuttersControlComfort on
attr xx.AutoShuttersControl ASC_autoShuttersControlEvening on
attr xx.AutoShuttersControl ASC_autoShuttersControlMorning on
attr xx.AutoShuttersControl ASC_freezeTemp 0
attr xx.AutoShuttersControl ASC_residentsDev Bewohner:state
attr xx.AutoShuttersControl ASC_shuttersDriveDelay 0
attr xx.AutoShuttersControl ASC_tempSensor xx.Aussenthermometer:temperature
attr xx.AutoShuttersControl ASC_twilightDevice mz.Twilight
attr xx.AutoShuttersControl ASC_windSensor xx.Wetter.openweathermap:wind
Sorry aber ich kann mit RAW nichts anfangen. Mach mal bitte ein richtiges list
Jalousie:
Internals:
DEF 6686C3
FUUID 5c4ba490-f33f-43f7-95a4-a6f2032523850372
FVERSION 10_CUL_HM.pm:0.210930/2020-02-02
IODev MAPLECUL868HM
LASTInputDev MAPLECUL868HM
MAPLECUL868HM_MSGCNT 41
MAPLECUL868HM_RAWMSG A1093A4106686C33083930601C80080C800::-65:MAPLECUL868HM
MAPLECUL868HM_RSSI -65
MAPLECUL868HM_TIME 2020-04-14 15:31:02
MSGCNT 41
NAME mz.HM.Rollo
NOTIFYDEV global
NR 197
NTFY_ORDER 50-mz.HM.Rollo
STATE on
TYPE CUL_HM
chanNo 01
lastMsg No:93 - t:10 s:6686C3 d:308393 0601C80080C800
peerList self01,self02,
protLastRcv 2020-04-14 15:31:02
protRcv 41 last_at:2020-04-14 15:31:02
protSnd 41 last_at:2020-04-14 15:31:02
protState CMDs_done
rssi_MAPLECUL868HM cnt:19 min:-66 max:-58 avg:-62.42 lst:-64
rssi_at_MAPLECUL868HM cnt:41 min:-65.5 max:-55.5 avg:-60.95 lst:-65
READINGS:
2020-03-19 06:37:47 ASC_Enable on
2020-04-14 15:31:02 ASC_ShuttersLastDrive manual
2020-04-14 15:24:26 ASC_Time_DriveDown roommate only
2020-04-14 15:24:26 ASC_Time_DriveUp roommate only
2020-04-14 15:30:01 CommandAccepted yes
2019-03-29 18:31:55 D-firmware 2.11
2019-03-30 23:20:13 D-serialNr PEQ0096625
2019-04-07 18:34:23 PairedTo 0x308393
2018-07-26 20:52:11 R-confBtnTime permanent
2018-07-27 18:23:22 R-driveDown 54 s
2018-07-26 21:15:59 R-driveTurn 0.5 s
2018-07-27 18:23:34 R-driveUp 54 s
2018-07-26 20:53:51 R-intKeyVisib visib
2018-07-26 20:52:11 R-localResDis off
2018-07-26 20:52:11 R-pairCentral 0x308393
2018-07-26 21:15:59 R-posSaveTime 2 s
2018-07-26 21:15:59 R-refRunCounter 0
2018-07-26 21:26:48 R-refRunTimeSlats 1.3 s
2018-07-26 20:54:00 R-self01-lgActionType jmpToTarget
2018-07-26 20:54:00 R-self01-lgBlJtDlyOff refOff
2018-07-26 20:54:00 R-self01-lgBlJtDlyOn dlyOff
2018-07-26 20:54:00 R-self01-lgBlJtOff dlyOff
2018-07-26 20:54:00 R-self01-lgBlJtOn dlyOff
2018-07-26 20:54:00 R-self01-lgBlJtRampOff rampOff
2018-07-26 20:54:00 R-self01-lgBlJtRampOn on
2018-07-26 20:54:00 R-self01-lgBlJtRefOff rampOff
2018-07-26 20:54:00 R-self01-lgBlJtRefOn on
2018-07-26 20:54:00 R-self01-lgCtDlyOff geLo
2018-07-26 20:54:00 R-self01-lgCtDlyOn geLo
2018-07-26 20:54:00 R-self01-lgCtOff geLo
2018-07-26 20:54:00 R-self01-lgCtOn geLo
2018-07-26 20:54:00 R-self01-lgCtRampOff geLo
2018-07-26 20:54:00 R-self01-lgCtRampOn geLo
2018-07-26 20:54:00 R-self01-lgCtRefOff geLo
2018-07-26 20:54:00 R-self01-lgCtRefOn geLo
2018-07-26 20:54:00 R-self01-lgCtValHi 100
2018-07-26 20:54:00 R-self01-lgCtValLo 50
2018-07-26 20:54:00 R-self01-lgDriveMode direct
2018-07-26 20:54:00 R-self01-lgMaxTimeF unused
2018-07-26 20:54:00 R-self01-lgMultiExec off
2018-07-26 20:54:00 R-self01-lgOffDly 0 s
2018-07-26 20:54:00 R-self01-lgOffLevel 0 %
2018-07-26 20:54:00 R-self01-lgOffTime unused
2018-07-26 20:54:00 R-self01-lgOffTimeMode absolut
2018-07-26 20:54:00 R-self01-lgOnDly 0 s
2018-07-26 20:54:00 R-self01-lgOnLevel 100 %
2018-07-26 20:54:00 R-self01-lgOnTime unused
2018-07-26 20:54:00 R-self01-lgOnTimeMode absolut
2018-07-26 21:03:14 R-self01-shActionType jmpToTarget
2018-07-26 20:54:00 R-self01-shBlJtDlyOff refOff
2018-07-26 20:54:00 R-self01-shBlJtDlyOn dlyOff
2018-07-26 20:54:00 R-self01-shBlJtOff dlyOff
2018-07-26 20:54:00 R-self01-shBlJtOn dlyOff
2018-07-26 20:54:00 R-self01-shBlJtRampOff rampOff
2018-07-26 20:54:00 R-self01-shBlJtRampOn on
2018-07-26 20:54:00 R-self01-shBlJtRefOff rampOff
2018-07-26 20:54:00 R-self01-shBlJtRefOn on
2018-07-26 20:54:00 R-self01-shCtDlyOff geLo
2018-07-26 20:54:00 R-self01-shCtDlyOn geLo
2018-07-26 20:54:00 R-self01-shCtOff geLo
2018-07-26 20:54:00 R-self01-shCtOn geLo
2018-07-26 20:54:00 R-self01-shCtRampOff geLo
2018-07-26 20:54:00 R-self01-shCtRampOn geLo
2018-07-26 20:54:00 R-self01-shCtRefOff geLo
2018-07-26 20:54:00 R-self01-shCtRefOn geLo
2018-07-26 20:54:00 R-self01-shCtValHi 100
2018-07-26 20:54:00 R-self01-shCtValLo 50
2018-07-26 20:54:00 R-self01-shDriveMode direct
2018-07-26 21:00:58 R-self01-shMaxTimeF 0.4 s
2018-07-26 21:03:14 R-self01-shMultiExec on
2018-07-26 20:54:00 R-self01-shOffDly 0 s
2018-07-26 20:54:00 R-self01-shOffLevel 0 %
2018-07-26 20:54:00 R-self01-shOffTime unused
2018-07-26 21:03:14 R-self01-shOffTimeMode absolut
2018-07-26 20:54:00 R-self01-shOnDly 0 s
2018-07-26 20:54:00 R-self01-shOnLevel 100 %
2018-07-26 20:54:00 R-self01-shOnTime unused
2018-07-26 21:03:14 R-self01-shOnTimeMode absolut
2018-07-26 21:03:15 R-self02-lgActionType jmpToTarget
2018-07-26 21:03:15 R-self02-lgBlJtDlyOff dlyOn
2018-07-26 21:03:15 R-self02-lgBlJtDlyOn refOn
2018-07-26 21:03:15 R-self02-lgBlJtOff dlyOn
2018-07-26 21:03:15 R-self02-lgBlJtOn dlyOn
2018-07-26 21:03:15 R-self02-lgBlJtRampOff off
2018-07-26 21:03:15 R-self02-lgBlJtRampOn rampOn
2018-07-26 21:03:15 R-self02-lgBlJtRefOff off
2018-07-26 21:03:15 R-self02-lgBlJtRefOn rampOn
2018-07-26 21:03:15 R-self02-lgCtDlyOff geLo
2018-07-26 21:03:15 R-self02-lgCtDlyOn geLo
2018-07-26 21:03:15 R-self02-lgCtOff geLo
2018-07-26 21:03:15 R-self02-lgCtOn geLo
2018-07-26 21:03:15 R-self02-lgCtRampOff geLo
2018-07-26 21:03:15 R-self02-lgCtRampOn geLo
2018-07-26 21:03:15 R-self02-lgCtRefOff geLo
2018-07-26 21:03:15 R-self02-lgCtRefOn geLo
2018-07-26 21:03:15 R-self02-lgCtValHi 100
2018-07-26 21:03:15 R-self02-lgCtValLo 50
2018-07-26 21:03:15 R-self02-lgDriveMode direct
2018-07-26 21:03:15 R-self02-lgMaxTimeF unused
2018-07-26 21:03:15 R-self02-lgMultiExec off
2018-07-26 21:03:15 R-self02-lgOffDly 0 s
2018-07-26 21:03:15 R-self02-lgOffLevel 0 %
2018-07-26 21:03:15 R-self02-lgOffTime unused
2018-07-26 21:03:15 R-self02-lgOffTimeMode absolut
2018-07-26 21:03:15 R-self02-lgOnDly 0 s
2018-07-26 21:03:15 R-self02-lgOnLevel 100 %
2018-07-26 21:03:15 R-self02-lgOnTime unused
2018-07-26 21:03:15 R-self02-lgOnTimeMode absolut
2018-07-26 21:03:15 R-self02-shActionType jmpToTarget
2018-07-26 21:03:15 R-self02-shBlJtDlyOff dlyOn
2018-07-26 21:03:15 R-self02-shBlJtDlyOn refOn
2018-07-26 21:03:15 R-self02-shBlJtOff dlyOn
2018-07-26 21:03:15 R-self02-shBlJtOn dlyOn
2018-07-26 21:03:15 R-self02-shBlJtRampOff off
2018-07-26 21:03:15 R-self02-shBlJtRampOn rampOn
2018-07-26 21:03:15 R-self02-shBlJtRefOff off
2018-07-26 21:03:15 R-self02-shBlJtRefOn rampOn
2018-07-26 21:03:15 R-self02-shCtDlyOff geLo
2018-07-26 21:03:15 R-self02-shCtDlyOn geLo
2018-07-26 21:03:15 R-self02-shCtOff geLo
2018-07-26 21:03:15 R-self02-shCtOn geLo
2018-07-26 21:03:15 R-self02-shCtRampOff geLo
2018-07-26 21:03:15 R-self02-shCtRampOn geLo
2018-07-26 21:03:15 R-self02-shCtRefOff geLo
2018-07-26 21:03:15 R-self02-shCtRefOn geLo
2018-07-26 21:03:15 R-self02-shCtValHi 100
2018-07-26 21:03:15 R-self02-shCtValLo 50
2018-07-26 21:03:15 R-self02-shDriveMode direct
2018-07-26 21:03:15 R-self02-shMaxTimeF 0.4 s
2018-07-26 21:03:15 R-self02-shMultiExec on
2018-07-26 21:03:15 R-self02-shOffDly 0 s
2018-07-26 21:03:15 R-self02-shOffLevel 0 %
2018-07-26 21:03:15 R-self02-shOffTime unused
2018-07-26 21:03:15 R-self02-shOffTimeMode absolut
2018-07-26 21:03:15 R-self02-shOnDly 0 s
2018-07-26 21:03:15 R-self02-shOnLevel 100 %
2018-07-26 21:03:15 R-self02-shOnTime unused
2018-07-26 21:03:15 R-self02-shOnTimeMode absolut
2018-07-26 21:15:59 R-sign off
2018-07-26 21:15:59 R-statusInfoMinDly 2 s
2018-07-26 21:15:59 R-statusInfoRandom 1 s
2018-07-26 21:15:59 R-transmitTryMax 6
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgActionType jmpToTarget
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtDlyOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtDlyOn refOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtOn dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRampOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRampOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRefOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRefOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtDlyOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtDlyOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRampOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRampOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRefOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRefOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtValHi 100
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtValLo 50
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgDriveMode direct
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgMaxTimeF unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgMultiExec off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffLevel 0 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffTimeMode absolut
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnLevel 100 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnTimeMode absolut
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shActionType jmpToTarget
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtDlyOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtDlyOn refOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtOn dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRampOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRampOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRefOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRefOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtDlyOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtDlyOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRampOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRampOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRefOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRefOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtValHi 100
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtValLo 50
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shDriveMode direct
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shMaxTimeF 0.1 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shMultiExec off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffLevel 0 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffTimeMode absolut
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnLevel 100 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnTimeMode absolut
2020-04-13 19:42:01 associatedWith xx.AutoShuttersControl
2020-04-14 15:31:02 deviceMsg on (to xx.VCCU)
2020-04-14 15:31:02 level 100
2018-09-03 16:56:18 levelMissed desired:100
2020-03-16 16:19:42 levelSlat set_
2020-04-14 15:31:02 motor stop:on
2020-04-14 15:31:02 pct 100
2020-04-14 15:31:02 pctSlat 100
2020-04-11 19:36:21 peerList self01,self02,
2018-07-27 14:04:17 powerOn 2018-07-27 14:04:17
2020-04-14 15:31:02 recentStateType info
2020-04-14 15:31:02 slatDir stop
2020-04-14 15:31:02 state on
2020-04-14 15:31:02 timedOn off
helper:
HM_CMDNR 147
cSnd 113083936686C3800100CA,113083936686C38001C8CA
dlvlCmd ++A0113083936686C38001C8CA
mId 0107
peerFriend peerSens,peerVirt
peerOpt 3:blindActuator
regLst 0,1,3p
rxType 1
supp_Pair_Rep 0
dir:
cur stop
rct up
expert:
def 1
det 1
raw 0
tpl 0
io:
newChn +6686C3,00,00,00
nextSend 1586871062.6597
rxt 0
vccu xx.VCCU
p:
6686C3
00
00
00
prefIO:
MAPLECUL868HM
mRssi:
mNo 93
io:
MAPLECUL868HM:
-61
-61
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
role:
chn 1
dev 1
prs 1
rpt:
IO MAPLECUL868HM
flg A
ts 1586871062.5608
ack:
HASH(0x469a448)
9380023083936686C300
rssi:
MAPLECUL868HM:
avg -62.421052631579
cnt 19
lst -64
max -58
min -66
at_MAPLECUL868HM:
avg -60.9512195121951
cnt 41
lst -65
max -55.5
min -65.5
tmpl:
Attributes:
ASC 2
ASC_Antifreeze soft
ASC_Antifreeze_Pos 100
ASC_BlockingTime_afterManual 1200
ASC_BlockingTime_beforDayOpen 3600
ASC_BlockingTime_beforNightClose 3600
ASC_Closed_Pos 0
ASC_Down roommate
ASC_DriveUpMaxDuration 60
ASC_ExternalTrigger wz.Leinwand:state drive-down:drive-up 0:100
ASC_Mode_Down always
ASC_Mode_Up always
ASC_Open_Pos 100
ASC_Pos_Reading pct
ASC_Roommate_Device Bewohner
ASC_Shading_InOutAzimuth 180:280
ASC_Shading_MinMax_Elevation 6.0:100.0
ASC_Shading_Min_OutsideTemperature 0
ASC_Shading_Mode always
ASC_Shading_Pos 0
ASC_ShuttersPlace window
ASC_Sleep_Pos 0
ASC_Time_Down_Early 00:00
ASC_Time_Down_Late 01:00
ASC_Time_Up_Early 06:00
ASC_Time_Up_Late 09:00
ASC_Time_Up_WE_Holiday 09:00
ASC_Up roommate
ASC_WindParameters 30:20 100
ASC_WindProtection on
IODev MAPLECUL868HM
IOgrp xx.VCCU:MAPLECUL868HM
alexaName Rollo
alexaRoom Büro
alias Rollo
assistantName Rollo
autoReadReg 4_reqStatus
cmdIcon 100:fts_shutter_up stop:fts_shutter_manual 0:fts_shutter_down
devStateIcon on:fts_window_2w:0 9\d.*:fts_shutter_10 8\d.*:fts_shutter_20 7\d.*:fts_shutter_30 6\d.*:fts_shutter_40 5\d.*:fts_shutter_50 4\d.*:fts_shutter_60 3\d.*:fts_shutter_70 2\d.*:fts_shutter_80 1\d.*:fts_shutter_90 0\d.*:fts_shutter_100 off:fts_shutter_100:100 set_on:fts_shutter_up set_off:fts_shutter_down
event-on-change-reading .*
expert 1_allReg
firmware 2.11
gassistantName Rollo
genericDeviceType blind
group Beschattung
homebridgeMapping CurrentPosition=pct,minValue=0,maxValue=100,minStep=1
TargetPosition=CurrentPosition,minValue=0,maxValue=100,minStep=1,cmd=pct
icon fts_shutter
model HM-LC-JA1PBU-FM
peerIDs 00000000,6686C301,6686C302,
room 0 Home,1 Wohnung->1 Büro,GoogleAssistant,Homekit
serialNr PEQ0096625
siriName Rollo
subType blindActuator
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_beforDayOpen ASC_BlockingTime_beforNightClose 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_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_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 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 100:stop:0:pct
widgetOverride pct:select,100,90,80,70,60,50,40,30,20,10,0
ASC:
Internals:
FUUID 5e5aa54b-f33f-43f7-9c1f-ae939a14d905e343
FVERSION 73_AutoShuttersControl.pm:v0.8.26-s21634/2020-04-10 TESTING
MID da39a3ee5e6b4b0d3255bfef95601890afd80709
NAME xx.AutoShuttersControl
NOTIFYDEV global,xx.AutoShuttersControl,mz.HM.Rollo,xx.Wetter.openweathermap,wz.Leinwand,mz.Twilight,Bewohner
NR 248
NTFY_ORDER 51-xx.AutoShuttersControl
STATE manual
TYPE AutoShuttersControl
VERSION v0.8.26
OLDREADINGS:
READINGS:
2020-03-19 06:36:53 ASC_Enable on
2020-03-28 08:00:02 ASC_Time_DriveDown 28.03.2020 - 19:43
2020-03-28 08:00:02 ASC_Time_DriveUp 29.03.2020 - 09:00
2020-03-26 21:57:51 ascEnable on
2020-03-19 06:36:53 associatedWith xx.AutoShuttersControl
2020-03-21 09:06:38 controlShading on
2020-02-29 20:58:03 hardLockOut off
2020-04-14 15:31:02 mz.HM.Rollo_PosValue 100
2020-04-14 15:28:35 mz.HM.Rollo_lastPosValue 100
2020-04-14 06:35:07 mz.HM.Rollo_nextAstroTimeEvent 14.04.2020 - 20:12
2020-04-14 06:35:07 rg_ASC_Rolllaeden_Times commands {level => 'pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',
ASC_Time_Down_Early => 'ASC_Time_Down_Early:15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00',
ASC_Time_Down_Late => 'ASC_Time_Down_Late:19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30',
ASC_Time_Up_WE_Holiday => 'ASC_Time_Up_WE_Holiday:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
ASC_Time_Up_Early => 'ASC_Time_Up_Early:05:00,05:05,05:30,05:55,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
_lastPosValue 0
2020-04-14 06:35:07 rg_ASC_Rolllaeden_Times commands {level => 'pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',
ASC_Time_Down_Early => 'ASC_Time_Down_Early:15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00',
ASC_Time_Down_Late => 'ASC_Time_Down_Late:19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30',
ASC_Time_Up_WE_Holiday => 'ASC_Time_Up_WE_Holiday:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
ASC_Time_Up_Early => 'ASC_Time_Up_Early:05:00,05:05,05:30,05:55,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
_nextAstroTimeEvent 14.04.2020 - 20:12
2020-04-14 06:35:07 rg_ASC_Rolllaeden_Times commands {level => 'pct:selectnumbers,0,5,100,0,lin',
dim => 'dim:selectnumbers,0,5,99,0,lin',
position => 'pct:selectnumbers,0,5,99,0,lin',
ASC_Mode_Down => 'ASC_Mode_Down:always,absent,off',
ASC_Mode_Up => 'ASC_Mode_Up:always,absent,off',
ASC_Time_Down_Early => 'ASC_Time_Down_Early:time',
ASC_Time_Down_Late => 'ASC_Time_Down_Late:time',
ASC_Time_Up_Early => 'ASC_Time_Up_Early:time',
ASC_Time_Up_Late =>'ASC_Time_Up_Late:time',_lastPosValue 0
2020-04-14 06:35:07 rg_ASC_Rolllaeden_Times commands {level => 'pct:selectnumbers,0,5,100,0,lin',
dim => 'dim:selectnumbers,0,5,99,0,lin',
position => 'pct:selectnumbers,0,5,99,0,lin',
ASC_Mode_Down => 'ASC_Mode_Down:always,absent,off',
ASC_Mode_Up => 'ASC_Mode_Up:always,absent,off',
ASC_Time_Down_Early => 'ASC_Time_Down_Early:time',
ASC_Time_Down_Late => 'ASC_Time_Down_Late:time',
ASC_Time_Up_Early => 'ASC_Time_Up_Early:time',
ASC_Time_Up_Late =>'ASC_Time_Up_Late:time',_nextAstroTimeEvent 14.04.2020 - 20:12
2020-04-13 19:42:01 room_0_Home_1_Wohnung-_1_B__ro_GoogleAssistant_Homekit mz.HM.Rollo
2020-02-29 20:58:11 selfDefense off
2020-04-14 15:31:02 state manual
2020-03-19 06:37:21 sunriseTimeWeHoliday on
2020-04-13 19:42:01 userAttrList rolled out
2020-04-03 22:23:21 wz.Leinwand_PosValue 0
2020-03-28 08:00:02 xx.AutoShuttersControl_lastPosValue 0
helper:
shuttersList:
mz.HM.Rollo
monitoredDevs:
Bewohner:
mz.HM.Rollo ASC_Roommate_Device
xx.AutoShuttersControl ASC_residentsDev
mz.HM.Rollo:
mz.Twilight:
xx.AutoShuttersControl ASC_twilightDevice
wz.Leinwand:
mz.HM.Rollo ASC_ExternalTrigger
xx.Wetter.openweathermap:
xx.AutoShuttersControl ASC_windSensor
Attributes:
ASC_AutoAstroModeEvening HORIZON
ASC_AutoAstroModeEveningHorizon -9
ASC_AutoAstroModeMorning NAUTIC
ASC_Pos_Reading pct
ASC_Shading_Mode always
ASC_autoShuttersControlComfort on
ASC_autoShuttersControlEvening on
ASC_autoShuttersControlMorning on
ASC_freezeTemp 0
ASC_residentsDev Bewohner:state
ASC_shuttersDriveDelay 0
ASC_tempSensor xx.Aussenthermometer:temperature
ASC_twilightDevice mz.Twilight
ASC_windSensor xx.Wetter.openweathermap:wind
devStateIcon { AutoShuttersControl_DevStateIcon($name) }
group Beschattung
icon fts_shutter_automatic
room 1 Wohnung->1 Büro
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_beforDayOpen ASC_BlockingTime_beforNightClose 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_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_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 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
Lösche bitte das gesamte ASC Device einmal.
Userattr hat im ASC nicht verloren. Genau so wenig wie ASC_Pos_Reading pct.
Du hattest mal das Attribut ASC im ASC Device gesetzt, das ist falsch.
Hi,
leider funktioniert bei mir immer noch nichts wie es sollte. Im AutoShuttersControl wird mir set shutterASCenableToggle mit dem Parameter 0%20Home angezeigt. Dies ist irgendwie der halbe Raumname. Wo ist da der Rest vom Namen? Laut Wiki sollte dieser set Befehl keinen Parameter haben. Laut Commandref sollte er on/off als Parameter haben aber nur einen einzelnes Rollo schalten? Wo gibt man dieses an?
Führe ich das aus was mir in der Weboberfläche angezeigt wird kommt folgendes im LOG:
2020.04.16 19:36:18 1 : ERROR: empty name in readingsBeginUpdate
2020.04.16 19:36:18 1 : stacktrace:
2020.04.16 19:36:18 1 : main::readingsBeginUpdate called by fhem.pl (4935)
2020.04.16 19:36:18 1 : main::readingsSingleUpdate called by ./FHEM/73_AutoShuttersControl.pm (664)
2020.04.16 19:36:18 1 : FHEM::AutoShuttersControl::Set called by fhem.pl (3766)
2020.04.16 19:36:18 1 : main::CallFn called by fhem.pl (1900)
2020.04.16 19:36:18 1 : main::DoSet called by fhem.pl (1932)
2020.04.16 19:36:18 1 : main::CommandSet called by fhem.pl (1243)
2020.04.16 19:36:18 1 : main::AnalyzeCommand called by ./FHEM/01_FHEMWEB.pm (2709)
2020.04.16 19:36:18 1 : main::FW_fC called by ./FHEM/01_FHEMWEB.pm (981)
2020.04.16 19:36:18 1 : main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (590)
2020.04.16 19:36:18 1 : main::FW_Read called by fhem.pl (3771)
2020.04.16 19:36:18 1 : main::CallFn called by fhem.pl (753)
2020.04.16 19:36:18 1 : PERL WARNING: Use of uninitialized value $name in concatenation (.) or string at fhem.pl line 4790.
2020.04.16 19:36:18 1 : readingsUpdate(,ASC_Enable,on) missed to call readingsBeginUpdate first.
2020.04.16 19:36:18 1 : stacktrace:
2020.04.16 19:36:18 1 : main::readingsBulkUpdate called by fhem.pl (4936)
2020.04.16 19:36:18 1 : main::readingsSingleUpdate called by ./FHEM/73_AutoShuttersControl.pm (664)
2020.04.16 19:36:18 1 : FHEM::AutoShuttersControl::Set called by fhem.pl (3766)
2020.04.16 19:36:18 1 : main::CallFn called by fhem.pl (1900)
2020.04.16 19:36:18 1 : main::DoSet called by fhem.pl (1932)
2020.04.16 19:36:18 1 : main::CommandSet called by fhem.pl (1243)
2020.04.16 19:36:18 1 : main::AnalyzeCommand called by ./FHEM/01_FHEMWEB.pm (2709)
2020.04.16 19:36:18 1 : main::FW_fC called by ./FHEM/01_FHEMWEB.pm (981)
2020.04.16 19:36:18 1 : main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (590)
2020.04.16 19:36:18 1 : main::FW_Read called by fhem.pl (3771)
2020.04.16 19:36:18 1 : main::CallFn called by fhem.pl (753)
2020.04.16 19:36:18 1 : PERL WARNING: Use of uninitialized value $d in hash element at fhem.pl line 4543.
2020.04.16 19:36:18 1 : PERL WARNING: Use of uninitialized value $dev in hash element at fhem.pl line 3643.
2020-04-16 19:36:18 AutoShuttersControl xx.AutoShuttersControl shutterASCenableToggle 0%20Home
Ich vermute mal das es hier irgendwelche Fehler im Code des Modules gibt und dieses nicht mit meinen Raumnamen oder irgend was was ich anders habe klar kommt. Ich möchte aber gern helfen diese Fehler zu korrigieren.
Hier meine Geräte aktuell:
Internals:
DEF 6686C3
FUUID 5c4ba490-f33f-43f7-95a4-a6f2032523850372
FVERSION 10_CUL_HM.pm:0.210930/2020-02-02
IODev MAPLECUL868HM
LASTInputDev MAPLECUL868HM
MAPLECUL868HM_MSGCNT 10
MAPLECUL868HM_RAWMSG A1044A4106686C330839306010000800000::-58.5:MAPLECUL868HM
MAPLECUL868HM_RSSI -58.5
MAPLECUL868HM_TIME 2020-04-16 19:32:42
MSGCNT 10
NAME mz.HM.Rollo
NOTIFYDEV global
NR 197
NTFY_ORDER 50-mz.HM.Rollo
STATE off
TYPE CUL_HM
chanNo 01
lastMsg No:44 - t:10 s:6686C3 d:308393 06010000800000
peerList self01,self02,
protLastRcv 2020-04-16 19:32:42
protRcv 10 last_at:2020-04-16 19:32:42
protSnd 10 last_at:2020-04-16 19:32:42
protState CMDs_done
rssi_MAPLECUL868HM cnt:5 min:-66 max:-58 avg:-62 lst:-59
rssi_at_MAPLECUL868HM cnt:10 min:-66 max:-58.5 avg:-61.5 lst:-58.5
READINGS:
2020-04-14 16:01:38 ASC_Enable on
2020-04-16 19:32:42 ASC_ShuttersLastDrive wiggle end drive
2020-04-16 06:28:45 ASC_Time_DriveDown roommate only
2020-04-16 06:28:45 ASC_Time_DriveUp roommate only
2020-04-16 19:32:32 CommandAccepted yes
2019-03-29 18:31:55 D-firmware 2.11
2019-03-30 23:20:13 D-serialNr PEQ0096625
2019-04-07 18:34:23 PairedTo 0x308393
2018-07-26 20:52:11 R-confBtnTime permanent
2018-07-27 18:23:22 R-driveDown 54 s
2018-07-26 21:15:59 R-driveTurn 0.5 s
2018-07-27 18:23:34 R-driveUp 54 s
2018-07-26 20:53:51 R-intKeyVisib visib
2018-07-26 20:52:11 R-localResDis off
2018-07-26 20:52:11 R-pairCentral 0x308393
2018-07-26 21:15:59 R-posSaveTime 2 s
2018-07-26 21:15:59 R-refRunCounter 0
2018-07-26 21:26:48 R-refRunTimeSlats 1.3 s
2018-07-26 20:54:00 R-self01-lgActionType jmpToTarget
2018-07-26 20:54:00 R-self01-lgBlJtDlyOff refOff
2018-07-26 20:54:00 R-self01-lgBlJtDlyOn dlyOff
2018-07-26 20:54:00 R-self01-lgBlJtOff dlyOff
2018-07-26 20:54:00 R-self01-lgBlJtOn dlyOff
2018-07-26 20:54:00 R-self01-lgBlJtRampOff rampOff
2018-07-26 20:54:00 R-self01-lgBlJtRampOn on
2018-07-26 20:54:00 R-self01-lgBlJtRefOff rampOff
2018-07-26 20:54:00 R-self01-lgBlJtRefOn on
2018-07-26 20:54:00 R-self01-lgCtDlyOff geLo
2018-07-26 20:54:00 R-self01-lgCtDlyOn geLo
2018-07-26 20:54:00 R-self01-lgCtOff geLo
2018-07-26 20:54:00 R-self01-lgCtOn geLo
2018-07-26 20:54:00 R-self01-lgCtRampOff geLo
2018-07-26 20:54:00 R-self01-lgCtRampOn geLo
2018-07-26 20:54:00 R-self01-lgCtRefOff geLo
2018-07-26 20:54:00 R-self01-lgCtRefOn geLo
2018-07-26 20:54:00 R-self01-lgCtValHi 100
2018-07-26 20:54:00 R-self01-lgCtValLo 50
2018-07-26 20:54:00 R-self01-lgDriveMode direct
2018-07-26 20:54:00 R-self01-lgMaxTimeF unused
2018-07-26 20:54:00 R-self01-lgMultiExec off
2018-07-26 20:54:00 R-self01-lgOffDly 0 s
2018-07-26 20:54:00 R-self01-lgOffLevel 0 %
2018-07-26 20:54:00 R-self01-lgOffTime unused
2018-07-26 20:54:00 R-self01-lgOffTimeMode absolut
2018-07-26 20:54:00 R-self01-lgOnDly 0 s
2018-07-26 20:54:00 R-self01-lgOnLevel 100 %
2018-07-26 20:54:00 R-self01-lgOnTime unused
2018-07-26 20:54:00 R-self01-lgOnTimeMode absolut
2018-07-26 21:03:14 R-self01-shActionType jmpToTarget
2018-07-26 20:54:00 R-self01-shBlJtDlyOff refOff
2018-07-26 20:54:00 R-self01-shBlJtDlyOn dlyOff
2018-07-26 20:54:00 R-self01-shBlJtOff dlyOff
2018-07-26 20:54:00 R-self01-shBlJtOn dlyOff
2018-07-26 20:54:00 R-self01-shBlJtRampOff rampOff
2018-07-26 20:54:00 R-self01-shBlJtRampOn on
2018-07-26 20:54:00 R-self01-shBlJtRefOff rampOff
2018-07-26 20:54:00 R-self01-shBlJtRefOn on
2018-07-26 20:54:00 R-self01-shCtDlyOff geLo
2018-07-26 20:54:00 R-self01-shCtDlyOn geLo
2018-07-26 20:54:00 R-self01-shCtOff geLo
2018-07-26 20:54:00 R-self01-shCtOn geLo
2018-07-26 20:54:00 R-self01-shCtRampOff geLo
2018-07-26 20:54:00 R-self01-shCtRampOn geLo
2018-07-26 20:54:00 R-self01-shCtRefOff geLo
2018-07-26 20:54:00 R-self01-shCtRefOn geLo
2018-07-26 20:54:00 R-self01-shCtValHi 100
2018-07-26 20:54:00 R-self01-shCtValLo 50
2018-07-26 20:54:00 R-self01-shDriveMode direct
2018-07-26 21:00:58 R-self01-shMaxTimeF 0.4 s
2018-07-26 21:03:14 R-self01-shMultiExec on
2018-07-26 20:54:00 R-self01-shOffDly 0 s
2018-07-26 20:54:00 R-self01-shOffLevel 0 %
2018-07-26 20:54:00 R-self01-shOffTime unused
2018-07-26 21:03:14 R-self01-shOffTimeMode absolut
2018-07-26 20:54:00 R-self01-shOnDly 0 s
2018-07-26 20:54:00 R-self01-shOnLevel 100 %
2018-07-26 20:54:00 R-self01-shOnTime unused
2018-07-26 21:03:14 R-self01-shOnTimeMode absolut
2018-07-26 21:03:15 R-self02-lgActionType jmpToTarget
2018-07-26 21:03:15 R-self02-lgBlJtDlyOff dlyOn
2018-07-26 21:03:15 R-self02-lgBlJtDlyOn refOn
2018-07-26 21:03:15 R-self02-lgBlJtOff dlyOn
2018-07-26 21:03:15 R-self02-lgBlJtOn dlyOn
2018-07-26 21:03:15 R-self02-lgBlJtRampOff off
2018-07-26 21:03:15 R-self02-lgBlJtRampOn rampOn
2018-07-26 21:03:15 R-self02-lgBlJtRefOff off
2018-07-26 21:03:15 R-self02-lgBlJtRefOn rampOn
2018-07-26 21:03:15 R-self02-lgCtDlyOff geLo
2018-07-26 21:03:15 R-self02-lgCtDlyOn geLo
2018-07-26 21:03:15 R-self02-lgCtOff geLo
2018-07-26 21:03:15 R-self02-lgCtOn geLo
2018-07-26 21:03:15 R-self02-lgCtRampOff geLo
2018-07-26 21:03:15 R-self02-lgCtRampOn geLo
2018-07-26 21:03:15 R-self02-lgCtRefOff geLo
2018-07-26 21:03:15 R-self02-lgCtRefOn geLo
2018-07-26 21:03:15 R-self02-lgCtValHi 100
2018-07-26 21:03:15 R-self02-lgCtValLo 50
2018-07-26 21:03:15 R-self02-lgDriveMode direct
2018-07-26 21:03:15 R-self02-lgMaxTimeF unused
2018-07-26 21:03:15 R-self02-lgMultiExec off
2018-07-26 21:03:15 R-self02-lgOffDly 0 s
2018-07-26 21:03:15 R-self02-lgOffLevel 0 %
2018-07-26 21:03:15 R-self02-lgOffTime unused
2018-07-26 21:03:15 R-self02-lgOffTimeMode absolut
2018-07-26 21:03:15 R-self02-lgOnDly 0 s
2018-07-26 21:03:15 R-self02-lgOnLevel 100 %
2018-07-26 21:03:15 R-self02-lgOnTime unused
2018-07-26 21:03:15 R-self02-lgOnTimeMode absolut
2018-07-26 21:03:15 R-self02-shActionType jmpToTarget
2018-07-26 21:03:15 R-self02-shBlJtDlyOff dlyOn
2018-07-26 21:03:15 R-self02-shBlJtDlyOn refOn
2018-07-26 21:03:15 R-self02-shBlJtOff dlyOn
2018-07-26 21:03:15 R-self02-shBlJtOn dlyOn
2018-07-26 21:03:15 R-self02-shBlJtRampOff off
2018-07-26 21:03:15 R-self02-shBlJtRampOn rampOn
2018-07-26 21:03:15 R-self02-shBlJtRefOff off
2018-07-26 21:03:15 R-self02-shBlJtRefOn rampOn
2018-07-26 21:03:15 R-self02-shCtDlyOff geLo
2018-07-26 21:03:15 R-self02-shCtDlyOn geLo
2018-07-26 21:03:15 R-self02-shCtOff geLo
2018-07-26 21:03:15 R-self02-shCtOn geLo
2018-07-26 21:03:15 R-self02-shCtRampOff geLo
2018-07-26 21:03:15 R-self02-shCtRampOn geLo
2018-07-26 21:03:15 R-self02-shCtRefOff geLo
2018-07-26 21:03:15 R-self02-shCtRefOn geLo
2018-07-26 21:03:15 R-self02-shCtValHi 100
2018-07-26 21:03:15 R-self02-shCtValLo 50
2018-07-26 21:03:15 R-self02-shDriveMode direct
2018-07-26 21:03:15 R-self02-shMaxTimeF 0.4 s
2018-07-26 21:03:15 R-self02-shMultiExec on
2018-07-26 21:03:15 R-self02-shOffDly 0 s
2018-07-26 21:03:15 R-self02-shOffLevel 0 %
2018-07-26 21:03:15 R-self02-shOffTime unused
2018-07-26 21:03:15 R-self02-shOffTimeMode absolut
2018-07-26 21:03:15 R-self02-shOnDly 0 s
2018-07-26 21:03:15 R-self02-shOnLevel 100 %
2018-07-26 21:03:15 R-self02-shOnTime unused
2018-07-26 21:03:15 R-self02-shOnTimeMode absolut
2018-07-26 21:15:59 R-sign off
2018-07-26 21:15:59 R-statusInfoMinDly 2 s
2018-07-26 21:15:59 R-statusInfoRandom 1 s
2018-07-26 21:15:59 R-transmitTryMax 6
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgActionType jmpToTarget
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtDlyOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtDlyOn refOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtOn dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRampOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRampOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRefOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgBlJtRefOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtDlyOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtDlyOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRampOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRampOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRefOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtRefOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtValHi 100
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgCtValLo 50
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgDriveMode direct
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgMaxTimeF unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgMultiExec off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffLevel 0 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOffTimeMode absolut
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnLevel 100 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-lgOnTimeMode absolut
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shActionType jmpToTarget
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtDlyOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtDlyOn refOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtOff dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtOn dlyOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRampOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRampOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRefOff off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shBlJtRefOn rampOn
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtDlyOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtDlyOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRampOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRampOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRefOff geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtRefOn geLo
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtValHi 100
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shCtValLo 50
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shDriveMode direct
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shMaxTimeF 0.1 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shMultiExec off
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffLevel 0 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOffTimeMode absolut
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnDly 0 s
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnLevel 100 %
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnTime unused
2019-04-07 18:34:26 R-xx.VCCU_chn-01-shOnTimeMode absolut
2020-04-16 00:50:23 associatedWith xx.AutoShuttersControl
2020-04-16 19:32:42 deviceMsg off (to xx.VCCU)
2020-04-16 19:32:42 level 0
2018-09-03 16:56:18 levelMissed desired:100
2020-03-16 16:19:42 levelSlat set_
2020-04-16 19:32:42 motor stop:off
2020-04-16 19:32:42 pct 0
2020-04-16 19:32:42 pctSlat 0
2020-04-16 00:49:36 peerList self01,self02,
2018-07-27 14:04:17 powerOn 2018-07-27 14:04:17
2020-04-16 19:32:42 recentStateType info
2020-04-16 19:32:42 slatDir stop
2020-04-16 19:32:42 state off
2020-04-16 19:32:42 timedOn off
helper:
HM_CMDNR 68
cSnd 113083936686C380010ACA,113083936686C3800100CA
dlvlCmd ++A0113083936686C3800100CA
mId 0107
peerFriend peerSens,peerVirt
peerOpt 3:blindActuator
regLst 0,1,3p
rxType 1
supp_Pair_Rep 0
dir:
cur stop
rct down
expert:
def 1
det 1
raw 0
tpl 0
io:
newChn +6686C3,00,00,00
nextSend 1587058362.74097
rxt 0
vccu xx.VCCU
p:
6686C3
00
00
00
prefIO:
MAPLECUL868HM
mRssi:
mNo 44
io:
MAPLECUL868HM:
-52.5
-52.5
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
role:
chn 1
dev 1
prs 1
rpt:
IO MAPLECUL868HM
flg A
ts 1587058362.64183
ack:
HASH(0x4b6b9d0)
4480023083936686C300
rssi:
MAPLECUL868HM:
avg -62
cnt 5
lst -59
max -58
min -66
at_MAPLECUL868HM:
avg -61.5
cnt 10
lst -58.5
max -58.5
min -66
tmpl:
Attributes:
ASC 2
ASC_BlockingTime_afterManual 1
ASC_BlockingTime_beforDayOpen 1
ASC_BlockingTime_beforNightClose 1
ASC_BrightnessSensor xx.Wetter.wunderground:solarRadiation
ASC_Closed_Pos 0
ASC_Down roommate
ASC_DriveUpMaxDuration 65
ASC_ExternalTrigger drive-down:drive-up 0:100
ASC_Mode_Down always
ASC_Mode_Up always
ASC_Open_Pos 100
ASC_Pos_Reading pct
ASC_Roommate_Device Bewohner
ASC_Roommate_Reading state
ASC_Shading_InOutAzimuth 180:280
ASC_Shading_MinMax_Elevation 6.0:100.0
ASC_Shading_Min_OutsideTemperature 0
ASC_Shading_Mode always
ASC_Shading_Pos 0
ASC_Shading_StateChange_SunnyCloudy 400:300
ASC_Shading_WaitingPeriod 0
ASC_ShuttersPlace window
ASC_Sleep_Pos 0
ASC_Time_Down_Early 00:00
ASC_Time_Down_Late 01:00
ASC_Time_Up_Early 06:00
ASC_Time_Up_Late 09:00
ASC_Time_Up_WE_Holiday 08:00
ASC_Up roommate
ASC_WindParameters 25:20 100
ASC_WindProtection on
IODev MAPLECUL868HM
IOgrp xx.VCCU:MAPLECUL868HM
alexaName Rollo
alexaRoom Büro
alias Rollo
assistantName Rollo
autoReadReg 4_reqStatus
cmdIcon 100:fts_shutter_up stop:fts_shutter_manual 0:fts_shutter_down
devStateIcon on:fts_window_2w:0 9\d.*:fts_shutter_10 8\d.*:fts_shutter_20 7\d.*:fts_shutter_30 6\d.*:fts_shutter_40 5\d.*:fts_shutter_50 4\d.*:fts_shutter_60 3\d.*:fts_shutter_70 2\d.*:fts_shutter_80 1\d.*:fts_shutter_90 0\d.*:fts_shutter_100 off:fts_shutter_100:100 set_on:fts_shutter_up set_off:fts_shutter_down
event-on-change-reading .*
expert 1_allReg
firmware 2.11
gassistantName Rollo
genericDeviceType blind
group Beschattung
homebridgeMapping CurrentPosition=pct,minValue=0,maxValue=100,minStep=1
TargetPosition=CurrentPosition,minValue=0,maxValue=100,minStep=1,cmd=pct
icon fts_shutter
model HM-LC-JA1PBU-FM
peerIDs 00000000,6686C301,6686C302,
room 0 Home,1 Wohnung->1 Büro,GoogleAssistant,Homekit
serialNr PEQ0096625
siriName Rollo
subType blindActuator
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_beforDayOpen ASC_BlockingTime_beforNightClose 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_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_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 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 100:stop:0:pct
widgetOverride pct:select,100,90,80,70,60,50,40,30,20,10,0
Internals:
FUUID 5e95c14d-f33f-43f7-6a87-e282de004d73b212
FVERSION 73_AutoShuttersControl.pm:v0.8.27-s21670/2020-04-14 TESTING
MID da39a3ee5e6b4b0d3255bfef95601890afd80709
NAME xx.AutoShuttersControl
NOTIFYDEV Bewohner,global,mz.HM.Rollo,xx.AutoShuttersControl
NR 263
NTFY_ORDER 51-xx.AutoShuttersControl
STATE wiggle end drive
TYPE AutoShuttersControl
VERSION v0.8.27
OLDREADINGS:
READINGS:
2020-04-16 19:35:58 ascEnable on
2020-04-15 18:08:01 controlShading on
2020-04-15 18:06:03 hardLockOut off
2020-04-16 19:32:42 mz.HM.Rollo_PosValue 0
2020-04-16 01:00:02 mz.HM.Rollo_lastPosValue 100
2020-04-16 06:28:45 mz.HM.Rollo_nextAstroTimeEvent 16.04.2020 - 20:16
2020-04-15 05:08:40 rg_ASC_Rolllaeden_Times commands {level => 'pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',
2020-04-16 00:50:23 room_0_Home_1_Wohnung-_1_B__ro_GoogleAssistant_Homekit mz.HM.Rollo
2020-04-15 18:06:03 selfDefense off
2020-04-16 19:32:42 state wiggle end drive
2020-04-15 18:08:08 sunriseTimeWeHoliday on
2020-04-16 00:50:23 userAttrList rolled out
helper:
shuttersList:
0%20Home
monitoredDevs:
Bewohner:
xx.AutoShuttersControl ASC_residentsDev
mz.HM.Rollo:
Attributes:
ASC_autoAstroModeEvening HORIZON
ASC_autoAstroModeEveningHorizon -9
ASC_autoAstroModeMorning NAUTIC
ASC_autoShuttersControlEvening on
ASC_autoShuttersControlMorning on
ASC_freezeTemp 0
ASC_residentsDev Bewohner
ASC_tempSensor xx.Aussenthermometer:temperature
ASC_twilightDevice mz.Twilight
ASC_windSensor xx.Wetter.openweathermap:wind
devStateIcon { AutoShuttersControl_DevStateIcon($name) }
group Beschattung
icon fts_shutter_automatic
room 1 Wohnung->1 Büro
LG Alina
Ich kann mir nur vorstellen daß es Probleme gibt mit Mehrdimensionalen Raumnamen.
Wohnung->1 Büro
Das muss ich testen.
OK das war es nicht. Das klappt bei mir.
Mach mal bitte scanForShutters. Ist das Problem dann immer noch da?
Nach scanForShutters zeigt er nun den Gerätenamen der Jalousie an. Aber warum war das falsch? hab die Namen ja nicht geändert.
Die Funktion wiggle funktioniert. Wenn ich mein Bewohner Gerät auf asleep setze passiert aber nichts und wenn ich es auf home setze auch nicht. Die Beschattung geht auch nicht. ASC enable steht in der Jalousie und auch im ASC Gerät. Shading ist im ASC Gerät auch an.
Im LOG passiert nichts wenn ich Bewohner asleep/home setze außer das ich die Meldung vom Bewohner Gerät direkt. Was muss ich denn machen damit ASC das mitbekommt?
Setze mal bitte im ASC Device den TempSensor.
Eigentlich sollten die Rollos runter fahren wenn der Bewohner auf asleep geht.
Der ist gesetzt:
Lösch mal bitte noch das Reading im ASC Device welches heißt rg_ASC_Rolllaeden_Times.......
Und Pos 0 kannst Du nicht zum beschatten nehmen da dies schon die unterste Position ist also die zum schließen. Und alle Positionen müssen unterschiedlich sein. Nimmste 1 oder 5
Kann ich die Beschatten Funktion auch ohne Fenster Sensor nutzen? oder muss ich da ein Dummy anlegen und diesen angeben? Wie müsste dieser Dummy aussehen wenn ich einen brauche?
Hab übrigens herausgefunden das man bei ASC_Roommate_Device nicht einfach ein residents Device angeben kann. Hab nun die Roommates mit Komma getrennt dort angegeben und es tut.
Nein Du brauchst keinen Fenstersensor. Ich habe auch nicht überall einen. Die Beschattung geht auch so.
ZitatNein Du brauchst keinen Fenstersensor. Ich habe auch nicht überall einen. Die Beschattung geht auch so.
Die einzige Stelle wo man dringend einen haben sollte, ist die Terrassentür, um das Aussperren zu vermeiden.
Oder aber ASC_Shading_Pos so einstellen, dass man noch unten durchkriechen kann. ;)
Dann verstehe ich nicht was da noch fehlt das die Jalousie herunter fährt.
Meiner Meinung nach sind alle Bedingungen erfüllt. Ich wollte es testen indem ich das ASC_Shading_InOutAzimuth so einstelle das das astro Device dann den azimuth über den ersten Wert triggert. Es passiert aber einfach nichts. Elevation ist ja zwischen den beiden werten. Temperatur ist über 0°C und der ASC_BrightnessSensor liefert einen Wert von 510.1
Ich seh einfach nicht warum da nichts passiert. Hab im ASC Gerät schon verbose 5 eingestellt aber es sagt einfach nix wenn im astro der SunAz über den ersten Wert von ASC_Shading_InOutAzimuth steigt.
Edit: grad gemerkt Sunny Cloudy war zwischen den werten. Sehe ich irgendwo welchen Zustand ASC gerade hat?
Bitte kein Screenshots. Immer list vom Device.
Es gibt in der Detailansicht im ASC Device eine Tabellenübersicht. Da sieht man sehr gut welchen Shading Zustand das ganze gerade hat.
Bitte beachte auch die Shading Wartezeit welche Default 20 min ist, erst nach 10min wird wieder ine genaue Prüfung gemacht.
ZitatASC_Shading_StateChange_SunnyCloudy - Brightness Wert ab welchen die Beschattung stattfinden und aufgehoben werden soll, immer in Abhängigkeit der anderen einbezogenen Sensorwerte. Ein optionaler dritter Wert gibt an wie viele Brightnesswerte im Average Array enthalten sein sollen (default: 35000:20000 [3])
ZitatBitte beachte auch die Shading Wartezeit welche Default 20 min ist, erst nach 10min wird wieder ine genaue Prüfung gemacht.
Eine Frage dazu.
Und nach diesen 10 Minuten muß die Prüfung ergeben das der Brightnesswert drei mal über dem sunny-Wert gelegen hat das die Jalousie runterfährt ?
Zitat von: TomLee am 18 April 2020, 11:42:57
Eine Frage dazu.
Und nach diesen 10 Minuten muß die Prüfung ergeben das der Brightnesswert drei mal über dem sunny-Wert gelegen hat das die Jalousie runterfährt ?
Zweimal. Das erste mal in "in reserved" und dann in. Bei "in" wird dann in die Beschattung gefahren
Und wenn ich den default ändern möchte, geb ich den jetzt getrennt mit Doppelpunkt oder Leerzeichen an ?
Dafür gibt es keinen Default, das ist eine interne Logik.
Oder meinst Du das BrightnessAverage?
ASC_Shading_StateChange_SunnyCloudy 35000:25000 2
zwei bedeutet er soll den Durchschnitt der letzen 2 Brightness Werte nehmen.
Das BrightnessAverage meinte ich, also mit Leerzeichen. Danke.
Hi,
ich hab noch eine Frage zum Helligkeitssensor. Kann mir mal jemand beispielhaft einen Plot zeigen wie das an einem Sonnigen Tag aussieht und wie es aussieht wenn es bewölkt wird.
Hab mir aktuell eine Wunderground Wetterstation angelegt und verwende solarRadiation was mir W/m² liefert. Ich vermute aber das ich mit diesem Wert nicht das erreichen kann was ASC verlangt.
LG Alina
@Eistee hilft dir das? Sind 2 Mijia Zigbee Lichtsensoren.
https://de.aliexpress.com/item/4000476379615.html
Garage hat am Morgen einen Baum davor, der andere Bekommt relativ spät volle Sonne. Die Ausreißer nach unten sind Wolken.
Vielen Dank,
hab mir mal einen bestellt. aber da ist deutlich zu erkennen das ich mit W/m² nicht das messe was die xiaomi mit lux messen. Da ich eh zigbee2mqtt habe wird das ja laufen. Weisst du ob ich die einfach im freien komplett der Witterung ausgesetzt platzieren kann? Würde den einfach oben aufs flachdach setzen da ist durchgehend Sonne von auf- bis untergang.
LG Alina
Ich habe einen zerlegt, es sind sowohl am Glas, als als auch an der Taste und bei der Batterie Gummidichtungen dran.
Meine sollen auch aufs Dach demnächst, warte noch auf einen dritten für Ost, Süd und West Richtung.
Werte kommen alle 5 Minuten.
2020-04-19_12:08:23 Lichtsensor_02 lux: 5995
2020-04-19_12:08:23 Lichtsensor_02 lightlevel: 37779
2020-04-19_12:13:22 Lichtsensor_02 lightlevel: 37818
2020-04-19_12:13:22 Lichtsensor_02 lux: 6049
2020-04-19_12:18:21 Lichtsensor_02 lightlevel: 37855
2020-04-19_12:18:21 Lichtsensor_02 lux: 6101
2020-04-19_12:23:21 Lichtsensor_02 lux: 6165
2020-04-19_12:23:21 Lichtsensor_02 lightlevel: 37900
2020-04-19_12:28:20 Lichtsensor_02 lux: 6224
2020-04-19_12:28:20 Lichtsensor_02 lightlevel: 37942
2020-04-19_12:33:19 Lichtsensor_02 lux: 6269
2020-04-19_12:33:19 Lichtsensor_02 lightlevel: 37973
2020-04-19_12:38:16 Lichtsensor_02 lightlevel: 38000
2020-04-19_12:38:16 Lichtsensor_02 lux: 6308
2020-04-19_12:43:15 Lichtsensor_02 lightlevel: 38030
2020-04-19_12:43:15 Lichtsensor_02 lux: 6352
2020-04-19_12:48:15 Lichtsensor_02 lux: 6405
2020-04-19_12:48:15 Lichtsensor_02 lightlevel: 38066
2020-04-19_12:53:14 Lichtsensor_02 lightlevel: 38085
2020-04-19_12:53:14 Lichtsensor_02 lux: 6433
2020-04-19_12:58:13 Lichtsensor_02 lux: 6479
2020-04-19_12:58:13 Lichtsensor_02 lightlevel: 38116
2020-04-19_13:03:13 Lichtsensor_02 lightlevel: 38119
2020-04-19_13:03:13 Lichtsensor_02 lux: 6483
2020-04-19_13:08:12 Lichtsensor_02 lightlevel: 38130
2020-04-19_13:08:12 Lichtsensor_02 lux: 6500
2020-04-19_13:13:11 Lichtsensor_02 lightlevel: 38144
2020-04-19_13:13:11 Lichtsensor_02 lux: 6521
2020-04-19_13:18:11 Lichtsensor_02 lightlevel: 38160
2020-04-19_13:18:11 Lichtsensor_02 lux: 6545
2020-04-19_13:23:10 Lichtsensor_02 lux: 6590
2020-04-19_13:23:10 Lichtsensor_02 lightlevel: 38190
2020-04-19_13:28:10 Lichtsensor_02 lux: 6637
2020-04-19_13:28:10 Lichtsensor_02 lightlevel: 38221
2020-04-19_13:33:09 Lichtsensor_02 lightlevel: 38244
2020-04-19_13:33:09 Lichtsensor_02 lux: 6673
2020-04-19_13:38:10 Lichtsensor_02 lightlevel: 38322
2020-04-19_13:38:10 Lichtsensor_02 lux: 6794
Hi,
ich habe noch eine Frage zu ASC_Shading_Pos. Ich habe gelesen das hier perl code erlaubt ist. Was heißt das konkret? wenn die Beschattung aktiv ist wird dies dann permanent abgefragt so das ich z.b. bei sinkender sonne weiter runter fahren kann? oder wird dies nur einmalig abgefragt wenn die Bedingung zum beschatten aktiv wird? Falls es nur einmal abgefragt wird, kann ich es irgendwie dazu bringen es erneut zu prüfen?
LG Alina
Es wird jedes mal wenn die Routine aufgerufen wird abgefragt und entsprechend nachjustiert.
Heißt das müsste so funktionieren:
attr mz.HM.Rollo ASC_Shading_Pos { RolladenHitze(222, 50, 75.4, 12, 273) }
99_myUtils.pmsub RolladenHitze {
my $C_HOEHE = $_[0]; # 0: Höhe (cm) = sichtbare Höhe des Fensters (Glas innerhalb des Rahmens)
my $C_TIEFE = $_[1]; # 1: Tiefe (cm) = Wie weit darf die Sonne "ins Fenster" scheinen (vom Fensteraussenscheibe messen!)
my $C_DACHWINKEL = $_[2]; # 2: Dachwinkel (Grad) = native Neigung der Fensterscheibe (=Dach), bzw. 90° bei "normalen" Wandfenstern
my $C_AUFBAU = $_[3]; # 3: Aufbauhöhe (cm) = Wieviel cm tragen Rollläden, Wandvorsprünge, etc. zur Fensterscheibe auf?
my $C_F_AUSRICHTUNG = $_[4]; # 4: Fensterausrichtung (Grad) = In welche Himmelsrichtung "schaut" das Fenster? -> Senkrechte auf die Scheibe, Nord = 0°, Süd = 180°
# allgemeine Variablen/Konstanten
my $pi = 3.1415926535897932;
my @V_Rollo = (0, 0, 0); # Vektor Rollo
my @V_Sonne = (0, 0, 0); # Vektor Sonne
my $Aufbauwinkel = 0;
my $Gesamtneigung = 0;
my $Theta = 0;
my $Phi = 0;
my $Winkel = 0;
my $RolloPos = 0;
my $Elev = ReadingsVal('xx.Astro', 'SunAlt', '0');
my $Azim = ReadingsVal('xx.Astro', 'SunAz', '0');
# rad = grad * pi / 180; grad = rad * 180 / pi
# Sonnenvektor berechnen
$Theta = (90 + $Elev) * ($pi / 180);
$Phi = $Azim * ($pi / 180);
$V_Sonne[0] = sin($Theta) * sin($Phi);
$V_Sonne[1] = cos($Theta);
$V_Sonne[2] = sin($Theta) * cos($Phi) * -1;
# Gesamtneigung berechnen
$Aufbauwinkel = atan2($C_AUFBAU, $C_HOEHE) * (180 / $pi);
$Gesamtneigung = $C_DACHWINKEL + $Aufbauwinkel;
# Rollo-Vektor berechnen
$Theta = (90 + $Gesamtneigung) * ($pi / 180);
$Phi = $C_F_AUSRICHTUNG * ($pi / 180);
$V_Rollo[0] = sin($Theta) * sin($Phi) * -1;
$V_Rollo[1] = cos($Theta);
$V_Rollo[2] = sin($Theta) * cos($Phi) * -1;
# Sonnenwinkel auf Fensterfläche berechnen (=Winkel der beiden Vektoren)
$Winkel = acos(($V_Rollo[0] * $V_Sonne[0] + $V_Rollo[1] * $V_Sonne[1] + $V_Rollo[2] * $V_Sonne[2]) /
(sqrt($V_Rollo[0] ** 2 + $V_Rollo[1] ** 2 + $V_Rollo[2] ** 2) *
sqrt($V_Sonne[0] ** 2 + $V_Sonne[1] ** 2 + $V_Sonne[2] ** 2)));
$RolloPos = ((($C_TIEFE + $C_AUFBAU) / tan($Winkel)) / $C_HOEHE) * 100;
if ($RolloPos < 0) {$RolloPos = 0};
if ($RolloPos > 100) {$RolloPos = 100};
$RolloPos = (round($RolloPos / 5) * 5);
return $RolloPos;
}
Ich werde berichten :)
Sieht gut aus. Ich wäre auf jeden Fall am Ergebnis interessiert.
Grüße
Das scheint leider nicht zu funktionieren. Beim beschatten in lieferte die Funktion 85 und er fuhr meine Jalousie auf 85%. Inzwischen liefert die Funktion 0 für (ganz unten) aber das Rollo steht immer noch auf 85. Die Helligkeit ist inzwischen allerdings zu gering so das er eigentlich auf 100% (ganz oben) fahren sollte was auch nicht passiert.
PS: Hab das Script im anderen post nochmal aktualisiert so das er immer nur in 5% Schritten einen wert liefert.
Raus fahren wird er jetzt nicht mehr da ja der derzeitige Stand 85 nicht die Beschattungsposition ist.
Zitat von: CoolTux am 03 Mai 2020, 19:13:42
Raus fahren wird er jetzt nicht mehr da ja der derzeitige Stand 85 nicht die Beschattungsposition ist.
Doch diese 85 ist als Beschattungsposition angefahren wurden. Im ASC_ShuttersLastDrive stand ja auch noch shading in
Ja schon, aber zum Zeitpunkt der Entschattung hast ja selbst gesagt war die ShadinPos eigentlich 0, doch da stand das Rollo ja nicht.
Kann man diese "Prüfung" der aktuellen Position irgendwie deaktivieren?
Das Modul kann ja feststellen wenn ein Rollo extern gefahren wird und kann sich auch merken wenn es selbst dieses gefahren hat.
Der Sinn dahinter die aktuelle Position da noch irgendwie auszuwerten erschließt sich mir da nicht.
Wenn ich ein Rollo von Hand irgend wo hin fahre soll es ja auch entschatten wenn die Sonne untergegangen ist (nach Ablauf der blockingtime). Schließlich ist dann ja "Schatten".
Der Sinn dahinter ist das das Rollo weiß wieso es sich gerade genau in dieser Position befindet und ich dies abfrage.
Ist das Rollo auf 30 wegen lüften oder wegen Beschatten oder oder.
Teste mal bitte noch etwas.
Dann hab ich nicht verstanden wofür das reading ASC_ShuttersLastDrive da ist.
Zitat von: Eistee am 04 Mai 2020, 17:17:03
Dann hab ich nicht verstanden wofür das reading ASC_ShuttersLastDrive da ist.
Es dient lediglich zur Info des Users. Intern wird alles mit Hilfe der Position analysiert. Man kann schlecht Nummerische Werte und Strings vergleichen. Wie soll ich raus finden ob der aktuelle Stand unterhalb oder oberhalb der Fenster offen Position ist, geht schlecht mit String.
Nochmal eine Frage:
Welche readings muss ich nach einer manuellen Fahrt wie setzen so das das ASC Modul denkt das es In der Beschattungsposition steht.
Nach dieser manuellen fahrt ist die Jalousieposition gleich wie ASC_Shading_Pos.
Oder falls das nicht geht. Kann ich in dem Script welches bei ASC_Shading_Pos hinterlegt ist irgendwie einen Fahrbefehl auslösen ohne das dieser als manuelle fahrt erkannt wird?
Zitat von: Eistee am 08 Mai 2020, 13:48:13
Nochmal eine Frage:
Welche readings muss ich nach einer manuellen Fahrt wie setzen so das das ASC Modul denkt das es In der Beschattungsposition steht.
Nach dieser manuellen fahrt ist die Jalousieposition gleich wie ASC_Shading_Pos.
Oder falls das nicht geht. Kann ich in dem Script welches bei ASC_Shading_Pos hinterlegt ist irgendwie einen Fahrbefehl auslösen ohne das dieser als manuelle fahrt erkannt wird?
Sobald die Beschattung an sich erkannt wurde "in" und Du dann eine manuelle Fahrt vor nimmst bleibt die Beschattungssteuerung deaktiviert bis wieder eine vollständige Entschattung statt gefunden hat.
Im Perlcode darf als Rückgabe ausschließlich eine gültige Positionsangabe raus kommen.
So hab eine Lösung gefunden. Mich würde mal interessieren was du davon hältst :)
################################
### Rolladensteuerung ###
################################
# Beispiel: attr mz.HM.Rollo ASC_Shading_Pos { RolladenHitze(222, 20, 75.4, 2, 273, "mz.HM.Rollo") }
sub RolladenHitze {
my $C_HOEHE = $_[0]; # 0: Höhe (cm) = sichtbare Höhe des Fensters (Glas innerhalb des Rahmens)
my $C_TIEFE = $_[1]; # 1: Tiefe (cm) = Wie weit darf die Sonne "ins Fenster" scheinen (vom Fensteraussenscheibe messen!)
my $C_DACHWINKEL = $_[2]; # 2: Dachwinkel (Grad) = native Neigung der Fensterscheibe (=Dach), bzw. 90° bei "normalen" Wandfenstern
my $C_AUFBAU = $_[3]; # 3: Aufbauhöhe (cm) = Wieviel cm tragen Rollläden, Wandvorsprünge, etc. zur Fensterscheibe auf?
my $C_F_AUSRICHTUNG = $_[4]; # 4: Fensterausrichtung (Grad) = In welche Himmelsrichtung "schaut" das Fenster? -> Senkrechte auf die Scheibe, Nord = 0°, Süd = 180°
my $shutterDev = $_[5]; # 5: Rolladen Gerät
# allgemeine Variablen/Konstanten
my @V_Rollo = (0, 0, 0); # Vektor Rollo
my @V_Sonne = (0, 0, 0); # Vektor Sonne
my $Aufbauwinkel = 0;
my $Gesamtneigung = 0;
my $Theta = 0;
my $Phi = 0;
my $Winkel = 0;
my $RolloPos = 0;
my $Raster = 5; # Position in x% Schritten berechnen
my $ascDev = ASC_Dev->new();
my $shutters = ASC_Shutters->new();
$shutters->setShuttersDev($shutterDev);
# Sonnenvektor berechnen
$Theta = deg2rad(90 + $ascDev->getElevation);
$Phi = deg2rad($ascDev->getAzimuth);
$V_Sonne[0] = sin($Theta) * sin($Phi);
$V_Sonne[1] = cos($Theta);
$V_Sonne[2] = sin($Theta) * cos($Phi) * -1;
# Gesamtneigung berechnen
$Aufbauwinkel = rad2deg(atan2($C_AUFBAU, $C_HOEHE));
$Gesamtneigung = $C_DACHWINKEL + $Aufbauwinkel;
# Rollo-Vektor berechnen
$Theta = deg2rad(90 + $Gesamtneigung);
$Phi = deg2rad($C_F_AUSRICHTUNG);
$V_Rollo[0] = sin($Theta) * sin($Phi) * -1;
$V_Rollo[1] = cos($Theta);
$V_Rollo[2] = sin($Theta) * cos($Phi) * -1;
# Sonnenwinkel auf Fensterfläche berechnen (=Winkel der beiden Vektoren)
$Winkel = acos((($V_Rollo[0] * $V_Sonne[0]) + ($V_Rollo[1] * $V_Sonne[1]) + ($V_Rollo[2] * $V_Sonne[2])) / (sqrt(($V_Rollo[0] * $V_Rollo[0]) + ($V_Rollo[1] * $V_Rollo[1]) + ($V_Rollo[2] * $V_Rollo[2])) * sqrt(($V_Sonne[0] * $V_Sonne[0]) + ($V_Sonne[1] * $V_Sonne[1]) + ($V_Sonne[2] * $V_Sonne[2]))));
# Winkel > 90 korrigieren
if (rad2deg($Winkel) > 90) {
$Winkel = deg2rad(90 - (rad2deg($Winkel) - 90));
}
$RolloPos = ((($C_TIEFE + $C_AUFBAU) / tan($Winkel)) / $C_HOEHE) * 100.0;
if ($RolloPos < 0.0) {$RolloPos = 0.0};
if ($RolloPos > 100.0) {$RolloPos = 100.0};
$RolloPos = round($RolloPos / $Raster) * $Raster;
# Rollo weiter fahren wenn Istposition != Sollposition
if ( $shutters->getIfInShading
&& !$shutters->getShadingManualDriveStatus
&& $shutters->getStatus != $RolloPos) {
$shutters->setLastDrive('shading in');
$shutters->setNoDelay(1);
$shutters->setDriveCmd($RolloPos);
$shutters->setLastDriveReading;
$ascDev->setStateReading;
}
return $RolloPos;
}
Sieht soweit schlüssig aus. Du arbeitest damit natürlich komplett an der Beschattungsfunktion im ASC vorbei. Aber so lange es funktioniert.
Die Routine wird jedesmal aufgerufen wenn die Funktion getShadingPos aufgerufen wird. Musste mal beobachten ob das so geht.
Hier mal von meinen drei Sensoren ein Bild. Sensoren sind auf dem Dach.
Beim Sonnenaufgang steht noch ein Baum davor vom Nachbarn, daher etwas steil die Kurve
Zitat von: Eistee am 09 Mai 2020, 21:05:26
So hab eine Lösung gefunden. Mich würde mal interessieren was du davon hältst :)
ist das jetzt die gleiche Funktion wie unter https://github.com/fhem/AutoShuttersControl/issues/42#issuecomment-511757627 ?
Wie oft verändert das Rollo denn jetzt die Position? Hab so meine Bedenken, ob es gut ist, wenn alle paar Minuten der Motor kurz anspringt. Wobei ich die grundsätzliche Idee mag, immer nur das notwendige Abzuschatten.
Ja ist die Funktion von da und ich hab die Ausgabe in 10% Schritten gemacht so das er immer nur 10% weiter fährt. Das kann man ja anpassen. Leider ist die Funktion aber fehlerhaft so das ich die aktuell nicht benutze. Für mein West Fenster gibt Sie nicht die gewünschten Werte aus. Ich hab auch noch keine Zeit gehabt den Fehler zu suchen.