Zeitmessung
- Harry
- Autor
- Offline
- Senior Boarder
- Beiträge: 38
- Dank erhalten: 4
Ausschalten soll die Steckdose nur wenn es min. 30 Sekunden geregnet hat.
Einschalten erst wieder 5 Stunden nach dem es aufgehört hat zu regnen.
Steuermodul 1.81
Software 2.70
EMD 12.10 = Regensensor
AMD 10.05 = Steckdoses des Mähroboters
JRM 02-04 = Zeitmessung für Verzögerung 30sek nach Regen ein
JRM 02-05 = Zeitmessung für Verzögerung 5std nach Regen aus.
So wäre mein Ansatz, das Feintuning fehlt aber noch.
z.B. wenn es aufhört zu regnen und innerhalb der 5std wieder regnet.
Was ist die max. Länge bei "Zeitmessung ein mit Zeitglied?
Begin Regen
EMD 12.10=Ein -> JRM 02-04 Zeitmessung ein mit Zeitglied 30sek
JRM 02-04=Statusflag aus & EMD 12-10=ein -> AMD 10-05 aus
Ende Regen
EMD 12.10=Aus -> JRM 02-05 Zeitmessung ein mit Zeitglied 5std
JRM 02-05=Statusflag aus -> AMD 10-05 ein
Vielen Dank für eure Hilfe
Harry
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Harry
- Autor
- Offline
- Senior Boarder
- Beiträge: 38
- Dank erhalten: 4
Was mich noch etwas stört sind die 3 Zeitmessungen bei Regen aus da max. nur 65535 1/10 Sekunden gehen.
Kennt da jemand eine bessere Lösung?
Begin Regen
EMD 12.10=Ein -> JRM 02.04 Zeitmessung ein mit Zeitglied 30sek
EMD 12.10=Ein -> JRM 02.05 Zeitmessung abgebrochen
EMD 12.10=Ein -> JRM 02.06 Zeitmessung abgebrochen
EMD 12.10=Ein -> JRM 02.07 Zeitmessung abgebrochen
JRM 02.04=Statusflag aus -> AMD 10.05 aus
Ende Regen
EMD 12.10=Aus -> JRM 02.04 Zeitmessung abgebrochen
EMD 12.10=Aus -> JRM 02.05 Zeitmessung ein mit Zeitglied 54000 (1,5std)
JRM 02.05=Statusflag aus -> JRM 02.06 Zeitmessung ein mit Zeitglied 54000 (1,5std)
JRM 02.06=Statusflag aus -> JRM 02.07 Zeitmessung ein mit Zeitglied 54000 (1,5std)
JRM 02.07=Statusflag aus -> AMD 10-05 ein
Viele Grüße
Harry
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Fossibaer58809
- Offline
- Expert Boarder
- Beiträge: 98
- Dank erhalten: 20
AMD 10.05 Verzögert einschalten 10.800 Sekunden?
Wenn der Ausgang noch eingeschaltet ist, dann bleibt er ein eingeschaltet.
Gruß
Michael
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Fossibaer58809
- Offline
- Expert Boarder
- Beiträge: 98
- Dank erhalten: 20
Start Regen:
Wenn Eingang Regensensor EIN>0 Sekunden
DANN Ausgang Mähroboter Verzögert Ausschalten 30 Sekunden
Ende Regen:
WENN Eingang Regensensor AUS
UND Ausgang Mähroboter ist EIN
DANN Ausgang Mähroboter einschalten
SONST Ausgang Mähroboter Verzögert Einsachalten 10.800 Sekunden
Kann das leider jetzt nicht prüfen, sollte aber funktionieren da der letzte Befehl überschrieben wird.
Gruß
Michael
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Harry
- Autor
- Offline
- Senior Boarder
- Beiträge: 38
- Dank erhalten: 4
Und wenn es inzwischen wieder angefangen hat zu regnen schaltet er sich meines Wissens trozdem ein, da es in diesem Fall kein Abbruch des verzögerten Einschaltens gibt.Warum nimmst Dui beim Ende des Regens nicht einfach den Befehl AMD 10.05 Verzögert einschalten 10.800 Sekunden?
Wenn der Ausgang noch eingeschaltet ist, dann bleibt er ein eingeschaltet.
Ich möchte verhindern, dass bei eine, kurzen Impuls sofort ausgelöst wird. Ich benutze den Regensensor um bei offene Dachfenster und Regen Alarm zu geben. In seltenen fällen kommt es vor, das der Regensensor kurz an und wieder aus geht, obwohl es nicht regnet.Vielleicht funktioniert diese hier:
Start Regen:
Wenn Eingang Regensensor EIN>0 Sekunden
DANN Ausgang Mähroboter Verzögert Ausschalten 30 Sekunden
Macht das einen Sinn?UND Ausgang Mähroboter ist EIN
DANN Ausgang Mähroboter einschalten
Sind wir wieder bei dem Problem mit dem erneuten Regen.Vielleicht funktioniert diese hier:
SONST Ausgang Mähroboter Verzögert Einsachalten 10.800 Sekunden
Bei dem verzögert Einschalten müsste meiner Meinung nach ein zusätliches Abbruchsignal hinzu kommen, falls es wieder mit dem regnen beginnt. Ich glaube 10.800 Sekunden gehen auch nicht. Ist das max. nicht 65535 1/10 Sekunden?.
Im Moment bendiene ich mein Mähroboter von Hand, habe die Programmierung also erst einmal aufgeschoben. Ich denke aber mein oberer Ansatz müsste funktionieren, freue mich aber immer über verbesserungsvorschläge.
Grüße Harry
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Fossibaer58809
- Offline
- Expert Boarder
- Beiträge: 98
- Dank erhalten: 20
Fangen wir einmal an meinen Vorschlag Schritt für Schritt durchzugehen:
Analyse:
- Immer wenn der Regensensor ein EIN Signal gibt soll der Ausgang AMD 10.05 nach 30 Sekunden ausgeschaltet werden.
- Das Signal war ein Fehlsignal, dann soll das Abschalten des Ausgangs AMD 10.5 abgebrochen werden
- Liegt das Signal länger als 30 Sekunden an, soll Ausgang AMD 10.05 ausgeschaltet werden.
- Wird das Signal des Regensensors nach mehr als 30 Sekunden gelöscht soll der Ausgang nach 3 Stunden wieder aktiviert werden.
Dazu gehen wir den folgenden Weg
1. Regensensor gibt Signal REGEN
WENN EMD 12.01 Ein>2 Sekunden
DANN AMD 10.05 verzögert ausschalten 28 Sekunden.
Dieser Befehl sendet also an den Ausgang AMD 10.05 den Befehl diesen in 28 Sekunden auszuschalten.
Den Eingangsbefehl EIN > 2 Sekunden nutzen wir in diesem Fall schon mal zum Entprellen.
Als Ergebnis dieser Programmierung haben wir also unserem Ausgang den Befehl in 28 Sekunden auszuschalten gegeben. Das Abbrechen der 28 Sekunden, das dafür sorgt, dass unserer Ausgang bei einem Prellen nicht ausgeschaltet wird vernachlässigen wir hier erst einmal.
2. Regensensor gibt Signal ES REGNET NICHT MEHR
WENN EMD 12.01 AUS > 2 Sekunden
UND AMD 10.05 ist EIN
DANN AMD 10.05 einschalten
SONST AMD 10.05 Verzögert Einschalten 10.800 Sekunden
Wenn also das Signal kommt, dass der Regensensor ausgeschaltet hat überprüfen wir, ob der Ausgang AMD 10.05 noch eingeschaltet ist. Wenn ja, dann sind die 28 Sekunden noch nicht um und wir schalten den Ausgang ein um den Ausschaltbefehl abzubrechen. Also ist dieses dann unser Zeitabbruch und der Ausgang ändert seinen Status nicht auf AUS.
Ist der Ausgang AMD 10.05 jedoch ausgeschaltet, dann war es tatsächlich am regnen und der Ausgang AMD 10.05 wird in 3 Stunden wieder eingeschaltet.
Damit haben wir also alle Punkte aus der Analyse erfüllt.
Wenn es während der 3 Stunden wieder anfängt zu regnen, dann wird der Befehl zum verzögertem Einschalten von der obigen Programmierung (... DANN AMD 10.05 verzögert ausschalten 28 Sekunden) überschrieben (bleibt also AUS).
Grüße
Michael
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Harry
- Autor
- Offline
- Senior Boarder
- Beiträge: 38
- Dank erhalten: 4
Für den Rest habe ich erst einmal eine weile benötigt um es zu verstehen.
---
WENN EMD 12.01 Ein>2 Sekunden
DANN AMD 10.05 verzögert ausschalten 28 Sekunden.
---
WENN EMD 12.01 AUS > 2 Sekunden
UND AMD 10.05 ist EIN
DANN AMD 10.05 einschalten
SONST AMD 10.05 Verzögert Einschalten 10.800 Sekunden
---
"DANN AMD 10.05 einschalten"
Dann ist die Zeile nur dafür da um das verzögerte ausschalten von 28 Sekunden abzubrechen?
Bist du dir sicher, dass dies den Timer abbricht?
Man könnte es ja auch so verstehen
1. Es fängt an zu regnen
EMD 12.01 geht für > 2 Sekunden an
-> Verzögertes Ausschalten 28 Sekunden startet.
2. nach 10 Sekunden hört es auf zu regnen
EMD 12.01 geht für > 2 Sekunden aus
-> AMD 10.05 ist noch an und bekommt den Befehl an.
Die Frage ist nun ob der 28Sekunden Timer mit dem Befehl "AMD 10.05 Ein" abgebochen wird oder weiter läuft. Ich hätte jetzt vermutet dass er weiter läuft und nach weiteren 16 Sekunden den Ausgang aus schaltet.
Ich hätte es so programmiert, aber da weisst du bestimmt mehr als ich:-)
---
WENN EMD 12.01 AUS > 2 Sekunden
UND AMD 10.05 ist EIN
DANN AMD 10.05 einschalten UND TIMER ABBRECHEN
SONST AMD 10.05 Verzögert Einschalten 10.800 Sekunden
---
Wenn ich dich richtig verstanden habe, dann führt eine Aktion auf einem Ausgang automatisch zum abbruch aller Timer die diesen Ausgang betreffen?
Vielen Dank für deine Hilfe. Deine Lösung ist viel einfacher als meine, genau aus diesem Grund habe ich hier nachgefragt und ich habe wieder viel dabei gelernt.
Harry
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Fossibaer58809
- Offline
- Expert Boarder
- Beiträge: 98
- Dank erhalten: 20
Ja bin ich."DANN AMD 10.05 einschalten"
Dann ist die Zeile nur dafür da um das verzögerte ausschalten von 28 Sekunden abzubrechen?
Bist du dir sicher, dass dies den Timer abbricht?
Der laufende Befehl wird immer überschrieben (sofern er in einem eigenen Telegramm kommt, ist in diesem Fall so)2. nach 10 Sekunden hört es auf zu regnen
EMD 12.01 geht für > 2 Sekunden aus
-> AMD 10.05 ist noch an und bekommt den Befehl an.
Die Frage ist nun ob der 28Sekunden Timer mit dem Befehl "AMD 10.05 Ein" abgebochen wird oder weiter läuft. Ich hätte jetzt vermutet dass er weiter läuft und nach weiteren 16 Sekunden den Ausgang aus schaltet.
Richtig, jeder Zeitbefehl wird mit einem neuen Befehl überschrieben.Wenn ich dich richtig verstanden habe, dann führt eine Aktion auf einem Ausgang automatisch zum abbruch aller Timer die diesen Ausgang betreffen?
Allerdings gibt es in dieser einfachen Programmierung eine kleine Schwachstelle:
Wenn nach dem Ende des Regens die 3 Stunden noch nicht abgelaufen sind, dann erzeugt ein Prellen größer 2 Sekunden einen Neustart der Zeitmessung. Das könnte man aber noch über einen Merker weg bekommen.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Aktuelle Seite:
- Startseite
- Forum
- PHC-Forum
- PHC-Programmierung
- Zeitmessung