FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: the ratman am 02 März 2016, 21:09:55

Titel: rollo notstop mit doif realisieren?
Beitrag von: the ratman am 02 März 2016, 21:09:55
hallo,

ich möchte gerne (derzeit noch theoretisch, weil ich immer noch auf den elektriker warte) ein aussenrollo vor dem fahren hindern, wenn ein magnetkontakt offenen zustand meldet.
im idealfall sperrt das doif sowohl befehle von fhem als auch von der tasterwippe selber.

dazu hab ich mal hier aus div. forendiskussionen ein paar sachen zusammengetragen und hätte jetzt von den profis hier gerne ein go/nogo oder gleich ne intelligentere/bessere lösung.
da ich das ganze zum lernen nehmen will, wäre ne erklärung zu änderungen dann natürlich das tüpfelchen auf dem i.

magnetkontakt: HM-SEC-SC-2
schaltaktor: HM-LC-Bl1PBU-FM
define NotStop_TerrassenRollo
DOIF ([MK_Fliegengitter:state] eq "closed")
   (set WZ_Terrasse_Rollo regSet shActionType on self01;; set WZ_Terrasse_Rollo regSet lgActionType on self01;;
    set WZ_Terrasse_Rollo regSet shActionType on self02;; set WZ_Terrasse_Rollo regSet lgActionType on self02;;
    set WZ_Terrasse_Rollo inhibit off;;)
DOELSE
   (set WZ_Terrasse_Rollo regSet shActionType off self01;; set WZ_Terrasse_Rollo regSet lgActionType off self01;;
    set WZ_Terrasse_Rollo regSet shActionType off self02;; set WZ_Terrasse_Rollo regSet lgActionType off self02;;
    set WZ_Terrasse_Rollo inhibit on;;)


jetzt die frage: funzt das konstrukt oder liegt ihr schon vor lachen am boden?
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: frank am 03 März 2016, 08:37:30
Zitatim idealfall sperrt das doif sowohl befehle von fhem als auch von der tasterwippe selber.
ich finde, am besten ist es immer, sowas direkt zu probieren.

mit get regList bekommst du einen überblick der möglichen register und deren werte. bist du sicher, dass es actiontype=on gibt? das müsste wahrscheinlich eher jmpToTarget sein.

inhibit sperrt peers. falls es auch mit eigenen peers funktioniert (self01/2), brauchst du keine actionType register verbiegen. am besten probieren.

das schalten aus fhem heraus hast du bisher aber noch nicht abgedeckt. das könntest du erreichen, indem du das schalten aus fhem über virtuelle buttons machst. zb mit einem virtuellen chn deiner vccu peeren, der dann auch über inhibit gesperrt wäre.
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 03 März 2016, 10:42:55
vielen dank für die infos.
wär ja super, wenn ich gar nur inhibit bräuchte.

könnte ich die fhem-interne sperrung nicht eventuell über nen watchdog machen?
ich bilde mir ein, irgendwas in der richtung "watchdog zum sperren" mal im forum gelesen zu haben, find aber den beitrag nicht mehr.
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: frank am 03 März 2016, 11:16:10
Zitatkönnte ich die fhem-interne sperrung nicht eventuell über nen watchdog machen?
ob nun notify, at, doif oder watchdog ist ja erstmal egal. entscheidend ist der befehl zum sperren.

es gäbe noch attr dummy oder disable. hier wird dann aber wahrscheinlich zuviel gesperrt.
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 03 März 2016, 12:27:18
zu viel kann ma wohl ned sperren. der rolladen soll ja eigentlich tatsächlich "toter mann" spielen, ist mir ganz recht. kann ich wenigstens keinen schrott mit befehlen von anderer stelle bauen.

zum attr dummy find ich jetzt allerdings leider auch ned grade abendfüllende infos.
die hilfe gibt hier nur her, dass es das attr gibt. magst mir kurz auf die sprünge helfen?
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: frank am 03 März 2016, 12:48:35
wahrscheinlich werden mit attr dummy keine msgs von fhem an das device gesendet, empfangene msgs aber dennoch verarbeitet. einfach mal probieren.
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 03 März 2016, 14:57:36
sobald ich meinen blöden nulleiter beim schalter hab wird probiert *g*

zumindest hast mir schöne richtungen ind infos geben - thx dafür nochmal.

nachtrag:

hab das jetzt mal mit nem hm dimmer probiert.
"dummy 1" und "dummy 0" verhindern tatsächlich das schalten. nur wenn man den dummy dann wieder löscht damit man überhaupt schalten kann, wird der zustand hergestellt, den man vorher nicht erreichen konnte wegen sperre.
mal schaun, ob das bei den rollos auch so sein wird - wäre blöd, wenn mir das ding dann irgendwie irgendwann los fahrt.
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 04 März 2016, 17:26:07
so, nun hab ich meinen nulleiter und die rollos funzt soweit ...

mein doif mag aber nicht so 100% und ich komm nicht dahinter.

([MK_Fliegengitter:state] eq "closed")
      (deleteattr WZ_Terrasse_Rollo dummy; set WZ_Terrasse_Rollo inhibit off; )

   DOELSE
      (attr WZ_Terrasse_Rollo dummy 1; set WZ_Terrasse_Rollo inhibit on;)
(ohne jegliche weitere attribute bei doif und zumindest ändert ein "do alwas" nichts am verhalten.)

verhalten:
o) im geschlossenen zustand alles o.k.
o) im offenen zustand lässt sich nichts mehr über fhem steuern, ABER die hardwaretaste schaltet nur 1 mal nicht. drücke ich ein 2. mal fährt das rollo trotzdem.
das weitaus schlimmere daran: ich kriege mit dem doif nach einiger zeit (wenn ich teste) ein "missing ack" auf verschiedenen rollos, dass ich nur durch neu anlegen des schalters weg kriege (manchesmal "nur" mit neu pairen).
nachdem das vor meinen doif-tests nicht aufgetreten ist, nehm ich mal an, es hängt damit zusammen.
x) lösche ich die 2 dummy-befehle raus, funktioniert der schalter wie er soll, also: funktionslos bei offenem magnet und schaltbar bei geschlossenem magnet. nutzt nur nix, weil dann ja leider fhem noch schaltbefehle senden kann.

man sieht mich ratlos ...
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: frank am 04 März 2016, 18:09:29
(attr WZ_Terrasse_Rollo dummy 1; set WZ_Terrasse_Rollo inhibit on;)
das kann ja schon mal vom prinzip her nicht funktionieren.
wenn du attr dummy setzt, wird ja nichts mehr gesendet.  ;)
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 04 März 2016, 20:32:26
naja, dummy war ja ne idee von dir *g*
Zitat von: frank am 03 März 2016, 12:48:35
wahrscheinlich werden mit attr dummy keine msgs von fhem an das device gesendet, empfangene msgs aber dennoch verarbeitet. einfach mal probieren.

lest fhem eig. zuverlässig immer von links nach rechts? weil dann müsste ich ja nur den doelse umstellen auf:
([MK_Fliegengitter:state] eq "closed")
      (deleteattr WZ_Terrasse_Rollo dummy; set WZ_Terrasse_Rollo inhibit off; )

   DOELSE
      (set WZ_Terrasse_Rollo inhibit on; attr WZ_Terrasse_Rollo dummy 1; )
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: frank am 04 März 2016, 20:54:20
Zitatweil dann müsste ich ja nur den doelse umstellen auf:
das meinte ich ja. eventuell noch ein sleep zwischendrin, so dass notfalls auch noch wiederholungen gesendet werden können.
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 05 März 2016, 12:15:57
das umstellen nutzt auch nichts.
beim 2. mal tippen am taster fährt das ding ...
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 06 März 2016, 14:38:35
ich hab jetzt mal ignore probiert - macht leider auch nur das selbe wie inhibit, also nur den taster lahm legen. ich kann dann immer noch per fhem befehle absetzen.

o.k. ich verzichte aufs lernen ... was muß ich machen, damit auch aus fhem keine befehle mehr abgesetzt werden können?
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: martinp876 am 06 März 2016, 16:53:17
Eine cul kann immer aendern und befehle absetzen. Du kannst ein iodevices nutzen, das nicht sendet oder das es nicht gibt. Ändere das iodev oder iogrp auf nicht reale werde. Du wirst alles empfangen und nichts senden.
Wenn du wieder aktiv werden willst mache zuvor ein clear msgevents
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 06 März 2016, 16:59:36
es gibt also echt keinen einfachen/simplen befehl/attr/... um das device einfach ein/aus-zuschalten und dafür gleich mind. 2 attribute, um den hardware-schalter abzustellen?
würde sagen: da könnte echt mal ein progger ran ...
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: martinp876 am 06 März 2016, 21:47:35
Wir sind nicht in der Sicherheitstechnik. Damit kein Notaus. Schon mal weil es elektronische Schalter sind die, wenn es um Sicherheit geht, über die Sicherung.

Vielleicht willst du einen reset machen, sicherheitshalber. Danach geht es erst wieder nach pairen.
Du kannst doch so ein Kommando selbst bauen, wo ist dein Problem?
So wirklich verstehe ich das nicht. Beim tapezieren Sicherung raus.
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 07 März 2016, 10:57:45
was hat das mit sicherheit zu tun?

ich habe ein fliegengitter, das zu sein muß, wenn eine rollo fährt. das is alles.
um das zu gewährleisten hab ich mir einen magnetsensor extra für dieses fliegengitter gekauft. nun ich kann den hardwaretaster des rollos über den sensor abstellen aber den schalter in fhem nicht?
das ist bitte noch millionen kilometer von jeglicher sicherheitstechnik entfernt. das würde - nett betrachtet - eventuell grad mal unter idiotensicherung fallen.
ganz im speziellen, wenn du leute im haus hast, die automatisation irgendwie gar nicht interessiert und du trotz denen nicht immer nen code in deine steuerungstablets/fernbedienungen/... eingeben willst oder jegliche automatische rollofahrten bei deiner abwesenheit unterbinden mußt, weil du sonst angst haben musst, das oben erwähnte personen wieder mal knöpfe drücken, die sie nicht drücken sollen, weil jetzt halt gerade die zeit dazu nicht passt.
btw - was schreibst du leuten, die ihre alarmanlage über fhem steuern und z.b. durch solche spielchen die flucht des einbrechers erschweren wollen?
ich hoffe, mich jetzt verständlicher ausgedrückt zu haben!
Titel: Antw:rollo notstop mit doif realisieren?
Beitrag von: the ratman am 09 März 2016, 17:54:08
so, ich scheins zu haben. zumindest hat jetzt 5 mal magnetkontakt öffnen das schalten per taster UND fhem unterbunden.

warum auf einmal auch ignore funzt, weiß ich nicht. ich htte auch schon ignore probiert und alles mehrfach gelöscht und neu angelegt (mit schalter reset).
aber gut, es geht und an andere stelle hier im forum wurde mir ja schon gesagt, dass man sich eh nicht sicher sein kann und auf nix bei fhem verlassen darf (<-- zynismus, wer ihn nicht erkennt) ...([MK_Fliegengitter:state] eq "closed")
      ( attr WZ_Terrasse_Rollo ignore 0;
        set WZ_Terrasse_Rollo inhibit off;)

   DOELSE
      ( set WZ_Terrasse_Rollo inhibit on;
        attr WZ_Terrasse_Rollo ignore 1;)
man könnte noch bemängeln, dass das rollo weiter fährt, wenn der magnetkontakt erst nachträglich geöffnet wird, ist bei meinem problem aber egal, da das fliegengitter in etwa die gleiche größe wie das rollo hat, also maximal recht unschöne töne macht, wenn die dinger aneinander schleifen.