Hauptmenü

RASPI I2C PCF8574 Eltako

Begonnen von tom63, 30 Dezember 2018, 12:38:57

Vorheriges Thema - Nächstes Thema

tom63

Hallo zusammen,
ich bin absoluter Neuling mit FHEM und stehe vor ein paar Problemen und weiss nicht weiter.
Ich habe schon viele Stunden im Internet nach einer Lösung gesucht, aber nichts gefunden.

Es sollte so funktionieren:
Ich habe einen pcf8574 als Eingang und einen als Ausgang. Am Eingang ist ein Bewegungsmelder der einen Ausgang nur einmal für 200 ms für ein Eltako schalten soll. Es muss irgendwo (Variable) gespeichert werden, welchen Zustand das Eltako hat, denn das Eltako soll nicht bei jeder Bewegung schalten.
Das Eltako sollte nach einer variablen Zeit wieder ausschalten und erst dann soll auf das nächste Signal vom Eingang reagiert werden.
Es sollte möglich sein unterschiedliche variable Ausschaltzeiten nach einer bestimmten Anzahl von Bewegungen zu setzen.
z.B.
Schaltzeit 1 = 5 min.
Schaltzeit 2 = 1  h
Bewegung = 5 x
Wenn Bewegung < 5 => Ausschaltzeit = 5 min.
Wenn Bewegung > 5 => Ausschaltzeit = 1 h

Weiter sollte es möglich sein erst zu schalten wenn 5 Bewegungen registriert wurden.
Das alles sollte durch Variablen so einfach wie möglich zu ändern sein, denn meine Frau sollte auch in der Lage sein Anpassungen durchzuführen.

Ich habe es geschafft das der Ausgang reagiert, wenn am Eingang etwas anliegt. Leider schaltet der Ausgang wieder ab, wenn am Eingang  nichts mehr ist.
Ich nehme ein Eltako, weil ich das manuell schalten kann, wenn die Technik versagen sollte.

Über Funk will ich nichts schalten, da ich aus der Vergangenheit weiss, dass das zu anfällig ist, wenn ein Sendemast in der Nähe ist.
Ich hatte schon einmal mein Haus mit einer C-Control2 automatisiert und damit konnte ich alles was ich wollte machen. Leider kann man das Programm nicht so einfach übernehmen.
Kann mir da jemand dabei helfen?
Sobald ich verstehe wie die Zusammenhänge hier sind, dann komme ich auch weiter.

Danke für die Hilfe
Tom

KernSani

Hallo Tom,

Willkommen im Forum.
Sofern die Teile in FHEM verfügbar sind (konnte ich aus deinem Post nicht ganz entnehmen) kannst du die entsprechende Steuerung über DOIF bzw. notify kontrollieren. Dazu schaust du dir am besten erstmal das Einsteiger-PDF an (in diesem Board oben angepinnt). Wenn du dann nicht weiter kommst kann es gerne hier weitergehen.

Guten Rutsch!

Oli

 
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

tom63

Hallo Oli,
ich verwende einen pcf8574 über I2C als Ein- und Ausgangsport. Dazu gibt es etwas in Fhem, aber ich finde nichts, wie ich am Ausgang einen Impuls von 200 ms bekomme der dann ein Eltako schaltet, wenn ich am Eingang durch einen Bewegungsmelder Impulse sind.
Der Impuls soll nur ein einziges mal kommen und das Eltako nur einmal schalten.
Nach einer bestimmten Zeit (5 min, 2 Std., 4 Tage, alles variabel einstellbar) soll ein weiterer Impuls das Eltako wieder ausschalten. Erst dann kann ein Impuls vom Eingang das Eltako für eine bestimmte Zeit wieder schalten.
Ich nehme Eltakos, da bei einem Systemausfall alles manuell geschaltet werden kann. Wären es einfache Relais, so wäre das mit dem FHEM Modul Mswitch sehr einfach, aber das mit DOIF und NOTIFY bekomme ich nicht hin, da ich in FHEM nicht ganz verstehe wie die Zusammenhänge sind. 
Jetzt ist da aber noch eine Kleinigkeit:
Jeder Impuls des Bewegungsmelders sollte gespeichert werden, damit eine Aktion nach z.B. 5 Bewegungen (z. B. Schalten eines Kühlschrankes oder E-Herdes etc.) ausgeführt wird.
Das alles hatte ich schon in C# vor 15 Jahren für die C-Control2 Station geschrieben. Anpassung im, Programm sind nicht einfach und sehr sehr zeitaufwändig.
Da ich große Probleme mit den Augen habe wollte ich es diesmal einfach über eine Weboberfläche machen.
Sorry das ich so dumm frage, aber ich habe weder über Perl noch von FHEM viel Ahnung.
Gibt es etwas einfacheres als FHEM dann wäre ich für jeden Tip sehr dankbar.

Gruß
Tom

klausw

Hallo Tom,

ist schon etwas her aber vielleicht bist du noch nicht weiter...

schau dir mal das notify Modul an.
Damit kannst du auf ein Ereignis reagieren. z.B. den Eingangsport vom PCF.
Das notify kann dann einen Befehl auslösen (Port für 200ms an)
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280