NEWS
Briefkasten abfrage mit Script?
-
HI,
habe meinen Briefkasten auf einen normalen optischen Kontakt zur Abfrage umgebaut.
Nun kann ich mit der Programmfunktion in der CCU aber nicht wirklich das Abfragen wie ich es möchte.
Habe versucht mit Blockly das ganze zu bauen aber ich komme nicht weiter.
Ich würde gern wenn der Briefkasten geöffnet wird und der Optische Kontakt reagiert soll die Meldung kommen Post da.
Wenn dann der Briefkasten wieder geöffnet wird und dann der optische Kontakt frei ist soll die Meldung verschwinden. Wird die Klappe geöffnet und wieder geschlossen und Post ist noch drin soll die Meldung weiterhin bleiben.
Habe einen optischen Fensterkontakt und einen 3fach Schließeraktor mit Reedkontakt verbaut.
Hab schon nach Videos gesucht aber nicht wirklich etwas hilfreiches gefunden…
Tobias
-
Hi Tobias,
noch eine Frage zur Verständnis, der optische Kontakt "detektiert" die Post und der Schließaktor den Briefkastendeckel?
Würde es denn dann nicht reichen nur den optischen Kontakt abzufragen da dieser ja entweder mit Post belegt ist oder eben nicht?
Das Abfragen eines optischen Sensors kannst du mit Script bspw. so machen:
// Objekt erstellen für die Briefkastenklappe createState("javascript.0.Briefkasten.Status" {def: 'false',type: 'boolean',name: 'Status ob der Briefkasten geöffnet wurde'}); //Abfragen des optischen Kontakts on("Briefkastendeckel geöffnet", function(dp) { if(dp.state.val) { setState("javascript.0.Briefkasten.Status", true); } else{ setState("javascript.0.Briefkasten.Status", false); } });
Den erstellten Datenpunkt könntest du dir dann z.B. in Vis mit Hilfe eines Widgets anzeigen lassen.
Hier zwei Bilder wie das bei mir aussieht:
Ohne Post
Mit Post
Gruß
Steffen
-
Ich häng mich mal hier mit dran, da ich auch vor dem selbigen Problem stehe.
Ich habe zwei optische Fensterkontaktsensoren und möchte diese nutzen um den Briefkasten zu überwachen.
-
einen für die Einwurfklappe (heist also state true, kurz false, dann wieder true)
-
einen für die Klappe zum Entleeren. (heist also state true, ein weniger länger false, dann wieder true)
Ich habe mir nun folgendes Skript gebastelt, doch dann kommt die Meldung 2 mal, weil ja von true auf false auf true geschalten wird. Habe ich auch soweit verstanden.
Um dies zu übergehen habe ich eine Variable eingefügt. Wenn ich nun eine Variable einfüge, springt er gar nicht in die untere Schleife… Was mache ich hier falsch?
-
-
Das habe ich auch mal versucht.
Leider ist im hecktischen München der Postbote schneller als die Reaktionszeit des optischen Homematic Sensors, so dass bei schneller Bedienung kein Wechsel getriggert wird.
-
Moin,
der Sensor ist schon schnell genug. Das Problem ist die Kommunikation zwischen CCU und ioBroker.
Kannst Du umgehen, indem auf der CCU ein Programm läuft, welches bei Änderung des Sensors einfach den virtuellen Kanal 50 der CCU kurz betätigt. Das ist der Standardtrigger, damit übernimmt ioBroker den Zustand unverzögert.
Gruß aus der Mitte
Dirk
-
@tobih83:Nun kann ich mit der Programmfunktion in der CCU aber nicht wirklich das Abfragen wie ich es möchte. `
Das geht aber schon auch mit den Bordmitteln der CCU. https://homematic-forum.de/forum/viewtopic.php?f=31&t=26282&p=262394#p262394!
Man kann sogar recht einfach die Einwürfe komplett ohne CCU und ioBroker per Raspi erfassen. https://homematic-forum.de/forum/viewtopic.php?f=18&t=43306#p431626 mein kleines Spaßprojekt dazu. Läuft seit Monaten absolut stabil. Ganz unten in dem Thread habe ich noch ein kleines Video mit meiner vis-Umsetzung gepostet.