Hi,
vielleicht mag mir bitte wer bei meinem Problem helfen, ich schaffs scheinbar alleine nicht weiter.
Ich hab die Module GPIO und HOURCOUNTER laufen, funktioniert soweit.
Jetzt wollte ich das ganze um ein paar punkte erweitern, komm aber seite Tagen nicht weiter
Kurz die PIN Definitionen
define PIN 13 GPIO_27
define PIN 15 GPIO_22
define PIN 18 GPIO_24
define PIN 22 GPIO_25
Mit Pin 18 und 22 überwache ich die Laufzeiten und brauche bei Überschreitung von Schwellwerten einen Ausgang auf Pin22 (high)
Die Counter heissen
devName:CN.PUMPE; pulseTimeIncrement
devName:CN.BRENNER;pulseTimeIncrement
und zählen die Einschaltdauer in Sekunden. Ich brauch eine Alarmierung bei Überschreitung der Laufzeit der Pumpe von 900 sec und einer Unterschreitung von 300 sekunden (gleicher Alarm)
Damit ich den Alarm quittieren kann möchte ich gerne den Raspi mit shutdown ans Betriebsystem komplett niederfahren (Abfrage eines Tasters / GPIO) und dann mit Power off/on wieder starten. Die Abfrage für Shutdown möchte ich über einen Taster an PIN 13 realisieren.
Ich hab probiert den (Alarm) Timer mit userreadings zu machen, bin aber gescheitert.
Meine Frage nun :
Ist das der ideale Weg ?, wenn ja, vielleicht mag mir jemand bei der Syntax helfen
danke
bb10
Hi,
ich hab das mit notify & usereading probiert, hab es aber nicht hingekriegt. Ich weiss nicht, wie man die Bedingung mit ins notify reinnimmt. CN.PUMPE pulseTimeIncrement: grösser 900 und CN.PUMPE value=1 dann soll Pin22:on gehen
und CN.BRENNER pulseTimeIncrement: kleiner 700 und CN.Brenner value=0 dann soll Pin22:on gehen.
Vielleicht kann doch jemand noch was dazu sagen :)
danke
bb10
2014-01-23_23:36:24 CN.PUMPE value: 1
2014-01-23_23:36:24 CN.PUMPE 1
2014-01-25_09:39:31 CN.PUMPE countsOverall: 1
2014-01-25_09:39:31 CN.PUMPE pulseTimeIncrement: 122587 xxxxxxxxxxxxxxxxxxxxxxx
2014-01-25_09:39:31 CN.PUMPE pulseTimePerDay: 122587
2014-01-25_09:39:31 CN.PUMPE pulseTimeOverall: 122587
2014-01-25_09:39:31 CN.PUMPE pauseTimeIncrement: 2531
2014-01-25_09:39:31 CN.PUMPE pauseTimeOverall: 2531
2014-01-25_09:39:31 CN.PUMPE value: 1
2014-01-25_09:39:31 CN.PUMPE tickHour: 1
2014-01-25_09:39:31 CN.PUMPE tickDay: 1
2014-01-25_09:39:31 CN.PUMPE countsPerDay: 0
CN.Pumpe value: 1
Hi bb10,
ich hätte das hier ums Haar übersehen.
HourCounter hat ja noch keinen offiziellen Status, daher solltest du direkt in den initialen Post deine Fragen reinstellen.
http://forum.fhem.de/index.php/topic,12216.msg72596.html#msg72596 (http://forum.fhem.de/index.php/topic,12216.msg72596.html#msg72596)
Kannst du bitte das Define deines HourCounters posten, dann sehen wir weiter.
John
ich hab mal folgendes getestet:
define Test.Event notify CN.Test:pulseTimeIncrement.* {my $val=%EVTPART1;; Log(3," value out range with name:%NAME attribute:%EVTPART0 value:%EVTPART1") if ($val > 10|| $val <5);;}
Wenn du Pulsdauer <5 Sekunden oder > 10 Sekunden ist, dann wird in der Log-Datei eine Meldung ausgegeben.
Mein Counter heisst CN.Test.
liefert in der Log-Datei
Zitat2014.02.08 17:59:41 3: value out range with name:CN.Test attribute:pulseTimeIncrement: value:3
John
Hi,
danke für die Antwor!. Werde es noch heute ausprobieren und berichten
anbei noch die Definitionen
#Heizung BRENNER
define CN.BRENNER HourCounter Pin18:off Pin18:on
attr CN.BRENNER room KE.HEIZUNG
define SHUTTER.BRENNER.event notify SHUTTER.BRENNER:onoff.* { CounterNotify("%NAME","%EVTPART0","%EVTPART1");;}
define FileLog_SHUTTER.BRENNER FileLog ./log/SHUTTER.BRENNER-%Y.log (CN\.BRENNER:.*)
attr FileLog_SHUTTER.BRENNER room KE.HEIZUNG
attr FileLog_SHUTTER.BRENNER verbose 3
define SVG_FileLog_SHUTTER.BRENNER SVG FileLog_SHUTTER.BRENNER:SVG_FileLog_SHUTTER.BRENNER:CURRENT
attr SVG_FileLog_SHUTTER.BRENNER room KE.HEIZUNG
und
# Regenwasser PUMPE
define CN.PUMPE HourCounter Pin15:on Pin15:off
attr CN.PUMPE room KE.HEIZUNG
attr CN.PUMPE verbose 5
define SHUTTER.PUMPE.event notify SHUTTER.PUMPE:onoff.* { CounterNotify("%NAME","%EVTPART0","%EVTPART1");;}
attr SHUTTER.PUMPE.event room KE.HEIZUNG
define FileLog_SHUTTER.PUMPE FileLog ./log/SHUTTER.PUMPE-%Y.log (CN\.PUMPE:.*)
attr FileLog_SHUTTER.PUMPE room KE.HEIZUNG
attr FileLog_SHUTTER.PUMPE verbose 3
define SVG_FileLog_SHUTTER.PUMPE SVG FileLog_SHUTTER.PUMPE:SVG_FileLog_SHUTTER.PUMPE:CURRENT
attr SVG_FileLog_SHUTTER.PUMPE room KE.HEIZUNG
Danke nochmal
mfg
bb10
Hallo,
wenn du bitte über den Smylies das Raute-Symbol für Code und das "Brief-Symbol" für Zitate verwenden könntest wäre es einfacher zwischen Text und Code
zu unterscheiden.
Danke.
Grüße
Hallo bb10,
du verwendest noch Teile des alten Skriptes.
Zitatdefine SHUTTER.BRENNER.event notify SHUTTER.BRENNER:onoff.* { CounterNotify("%NAME","%EVTPART0","%EVTPART1");;}
CounterNotify ist nicht mehr nötig, da das HourCounter-Modul dieses nicht mehr braucht.
Du solltest das alte Skript 99_UtilsMaxCounter komplett löschen.
Alle Informationen befinden sich in der Hourcounter-Instanz.
Bitte lies dir nochmal das Wiki durch.
John
Hi John,
Danke nochmal, schaut so aus als hätte ich es richtig gemacht.
Der Wiki Beitrag ist zwar echt gut gemacht, ich habs aber trotzdem geschafft Wesentliches zu überlesen.
Auf jeden Fall werde beim nächsten Mal richtig posten :)
mfg
bb10