FHEM Forum

FHEM - Hausautomations-Systeme => 1Wire => Thema gestartet von: Knurb am 01 April 2016, 16:20:15

Titel: Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Knurb am 01 April 2016, 16:20:15
Hallo zusammen, ich teste hier ein wenig an meinem Fhem Teststand rum und habe mir die Frage gestellt, wie ich möglichst einfach Reedkontakte im 1 Wire-bus abfragen kann. Als Sensoren habe ich im Moment nur die Temperatursensoren DS18B20 rumliegen.

Setup Fhem Hauptserver Rapsberry und Fhem2fhem Remoteserver als VM (Wollte ich mal testen, da dies später auch so verbaut werden soll)
Als Busmaster verwende ich einen Arduino mit Conf. Firmata.

Jetzt ist mir aufgefallen, dass der Bus bei getrenntem Sensor immer einen Wert von -0.00625 ausgibt. (Bei allen 10 Sensoren).

Mein Gedanke ist nun, wenn ein der Bus einen fehlenden Sensor mit dem Wert -0.00625 ausliest kann ich doch daran prima ein geöffnetes Fenster erkennen.
Im Prinzip ähnlich wie mit der Verwendung von DS2406 Chips.
Würde dieses Szenario auch in der Praxis Sinn machen oder übersehe ich da was, bzw. hat die Verwendung vom DS2406 weitere Vorteile?

Auf meinem Teststand funktioniert das per Notify ganz prima.

Knurb
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Prof. Dr. Peter Henning am 01 April 2016, 17:15:36
Siehe Anlage.

LG

pah
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Knurb am 01 April 2016, 18:44:47
Mit anderen Worten, mit den ds2401/2406 ist eine schnellere Erkennung/Reaktion vom Bus möglich.
Dann warte ich mal, bis meine ds2406 da sind, dann werde ich damit mal weiter testen.

Danke,

Knurb
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: ak323 am 05 April 2016, 20:03:26
Zitat von: Prof. Dr. Peter Henning am 01 April 2016, 17:15:36
Siehe Anlage.

LG

pah
Hallo pah.
Können wir auch Seite 123ff haben ?
Weil genau das mit der Garage und den ibuttons habe ich auch vor !
Danke. ak323
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Prof. Dr. Peter Henning am 06 April 2016, 05:13:24
Buch erscheint in wenigen Tagen.

LG

pah
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: der-Lolo am 14 April 2016, 06:36:59
Geb uns doch bitte mal den genauen Titel und ISBN - Danke.
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Prof. Dr. Peter Henning am 14 April 2016, 07:53:26
http://www.dpunkt.de/buecher/5540/9783960090120-smart-home-hacks-12387.html

Umschlag sieht etwas anders aus - gestern ist das Ding in Druck gegangen.

LG

pah
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Knurb am 14 April 2016, 13:08:33
Soooo,

heute morgen sind nun endlich meine DS2401 angekommen. Ich habe 2 Sensoren gleich mal in den Bus angeschlossen und diese wurden nach einem Neustart auch gleich als OWID devices angelegt und als "present" angezeigt.

Jetzt stehe ich aber etwas auf dem Schlauch und komme nicht weiter. Mein Problem ist, dass es zu keiner Statusänderung in FHEM kommt, wenn ich den Chip wieder vom Bus nehme. Erst nach einer manuellen Eingabe des Befehls "get OneWire devices" ändert sich der Status auf "not present". Das gleiche gillt, wenn ich die Chips wieder an den Bus hänge.
Es scheint so, als ob der Bus nicht automatisch nach neuen Devices suchen würde.

Anbei meine Config:

define FIRMATA FRM 3030 global
attr FIRMATA sampling-interval 3000

define OneWire OWX 22
attr OneWire IODev FIRMATA

define Terassentuer OWID 01 F32287080000
attr Terassentuer IODev OneWire
attr Terassentuer model DS2401
attr Terassentuer room OWX
attr Terassentuer stateFormat {ReadingsVal($name,"present",0) ? "present" : "not present"}

define Kuechenfenster OWID 01 213786080000
attr Kuechenfenster IODev OneWire
attr Kuechenfenster model DS2401
attr Kuechenfenster room OWX
attr Kuechenfenster stateFormat {ReadingsVal($name,"present",0) ? "present" : "not present"}



Hat jemand eine Idee welches Detail ich vergessen habe?

Danke
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Knurb am 16 April 2016, 18:49:14
Ich habe jetzt mal weiter gesucht, gelesen und rumprobiert.

Wirklich viel schlauer bin ich allerdings nicht.
Ich habe jetzt per AT eine sekündlich Bussuche "get OneWire devices" eingebaut.
Mit "interval" 1 in den ds2401 komme so auf eine Erfassungsgeschwindigkeit von 1-2 Sekunden.

Wie ich dem Wiki entnommen habe, wird der Scheduler des Arduino mit Firmata noch nicht unterstützt.
Gibt es mit dem Arduino/FRM als Busmaster noch eine elegantere/effizientere Möglichkeit eine Bussuche zu initiieren?

Danke

Knurb
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Prof. Dr. Peter Henning am 17 April 2016, 11:17:00
Hier stehen zwei Arduino_Codebeispiele für eine automatische Bussuche alle 250 ms.

http://ice-karlsruhe.de/projekte/smarthome/smarthome-hacks-links-und-ergaenzungen/#k6

LG

pah
Titel: Antw:Abrage von Fensterkontakten mittels Tempsensoren?
Beitrag von: Knurb am 19 April 2016, 13:21:56
Vielen Dank pah,

Ein zweiter Arduino ist bestellt. Wenn der da ist, werde ich mich mal mit deinen Codebeispielen beschäftigen.
Ich probiere im Moment viel aus und versuche mich im Fhem Universum zurecht zu finden.
Da ich kein Programmierer bin, dauert es ab und an etwas länger, bis ich die einzelnen Zusammenhänge
verstehe.
Ich bin schon einmal froh Zwave, Homematic, MiLight und OneWire/FRM/Arduino in einer Fhem Installation zum Laufen gebracht zu haben.
Jetzt geht es an die Feinheiten und da kommen immer wieder Fragen auf.
Nicht immer finde ich selbst eine Lösung, von daher verzeiht meine für euch simplen/dummen Fragen.

Gruß

Knurb