ich hab mich auch mal an OpenHab gewagt. Ich bin jedoch absoluter Neuanfänger was das und Programmierung betrifft.
Nun, nach 3 Wochen des "Experimentieren", Googlen, lesen etc. komme ich nun nicht weiter:
ich habe es nach dieser (https://www.mksmarthouse.com/gpio-binding) Anleitung gemacht und es läuft auch wie es soll. (LED an/aus, Relais an/aus)
nun möchte ich aber das zB Relais1 (Garagentor) nach 1 sek "AUS" geschaltet wird und dabei Relais2 (Garagenlicht) für 3 Minuten "AN" ist.
Am besten wäre wenn man noch einen FotoSensor mit einbauen könnte sodass dass Licht nur bei Dunkelheit schaltet.
Dazu habe ich noch einen Taster als erkennung ob das Tor auch wirklich geschlossen ist. Dieser funktioniert auch. Hier frage ich mich ob man da eine Email Benachrichtigung (oder eine andere Benachrichtigung) senden kann wenn dieser Taster länger als 5min "Offen" steht?
An/Aus ober die Weboberfläche klappt soweit auch ganz gut, nur das mit den Rules will nicht so klappen.
Ich habe auf ein Raspberry Pi 3b+ Openhab 2.4 installiert.
habe dann folgendes hinzugefügt:
bindings-gpio 1.1.0 als addon installiert. Dann noch mit items:
Code: Alles auswählen
Switch LED "LED" { gpio="pin:21" }
//Relays
Switch channel1 "Channel 1" { gpio="pin:26 activelow:yes initialValue:high" }
Switch channel2 "Channel 2" { gpio="pin:19 activelow:yes initialValue:low" }
Switch channel3 "Channel 3" { gpio="pin:13 activelow:yes"}
Switch channel4 "Channel 4" { gpio="pin:6 activelow:no"}
Contact DoorSensor "Door Sensor [%s]" { gpio="pin:16 debounce:10 activelow:yes" }
Contact Button "Button [%s]" { gpio="pin:24 activelow:yes" }
Code: Alles auswählen
sitemap relais label="Garage" {
Frame label="Garagen Tor" {
Switch item=LED
}
Frame label="Garagen Licht" {
Switch item=channel1
}
Frame label="Garagen 2" {
Switch item=channel2
}
Frame label="Garage 2" {
Text item=Button
}
}
Code: Alles auswählen
import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*
rule "testregel"
when
LED has changed from ON to OFF
then
postUpdate(LED,ON)
createTimer(now.plusSeconds(1)) [|
sendCommand(LED, OFF)
]
sendCommand(channel1, ON)
end
Liebe Grüße
cosmo87