Mehrere Schaltzeiten hintereinander ausf.

Programmierung der FHZ-Zentralen mit contronics homeputer Standard / homeputer Studio & WEB-Server

Moderator: Co-Administratoren

Bastler_60
Beiträge: 16
Registriert: 17.03.2011, 20:09

Mehrere Schaltzeiten hintereinander ausf.

Beitrag von Bastler_60 » 27.03.2011, 13:03

Hallo Mitbastler
Ich möchte eine Lampe mehrmals hintereinander für bestimmte Zeiten ein- und ausschalten.Gesteuert über Türkontakt und Dämmerungsschalter.
Wenn Türkontakt ein und Dämmerungsschalter ein, dann soll die Lampe verzögert angehen, eine bestimmte Zeit leuchten und ausgehen. Nach einer Wartezeit
soll der Vorgang sich wiederholen ( mehrmals, evt. auch mit Zufallsgen.). Zum Schluß soll die Lampe aus sein.
Vielen Dank im Voraus

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von buempi » 27.03.2011, 14:10

Hallo Bastler

Ich gehe mal davon aus, dass das "Spiel" aufhören soll, sobald die Türe wieder geschlossen ist. - Und wenn sie offen bleibt, habe ich mal 4 Durchgänge vorgesehen:

Im Türkontakt aktivierst du "Ausführen bei Empfang" und setzst folgendes Makro ein:

Code: Alles auswählen

** Zu definierende Variablen:
** Durchgang      Typ Zahl      Startwert 0
** Wartezeit      Typ Uhr

wenn Daemmerungsschalter ausgeschaltet dann
   verlassen
endewenn

wenn Tuerkontakt = "geschlossen" dann
   Lampe ausschalten
   verlassen
endewenn

Durchgang   := 0

Wiederholung:

Durchgang   := Durchgang + 1

Wartezeit   := Zufallszeit("00:01:00")
Warte(Wartezeit)

Lampe einschalten

Wartezeit   := Zufallszeit("00:01:00")
Warte(Wartezeit)

Lampe ausschalten

wenn Durchgang < 4 dann
   gehezu Wiederholung
endewenn
Mit der Homeputer-Funktion ZUFALLSZEIT() kann man nur Wartezeiten von 0 bis 60 Sekunden (oder mehr) in 5-Sekunden-Schritten generieren. Hoffentlich ist bis zu einer Minute Wartezeit für deine Bedürfnisse nicht zu lang. - Sonst musst du wohl auf den "Zufall" verzichten und bei den WARTE() feste Zeiten vorgeben, oder wir müssten uns was anderes einfallen lassen.

Viele Grüsse
Bümpi

Bastler_60
Beiträge: 16
Registriert: 17.03.2011, 20:09

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von Bastler_60 » 27.03.2011, 19:26

Hallo Bümpi

Vielen Dank für deine schnelle Antwort
Ich hatte meinen Programmierwunsch nicht deutlich formuliert ( schreibfaul wg.Einfingertipperei)
Ich hatte es so vor, das die Lampe z.B. so geschaltet wird:
wenn Türkontakt geschlossen und Küchenrollo geschlossen, dann das "Objekt bearbeiten-Makro"
Lampe eingeschaltet für 45 min
ausgeschaltet für 30 min
eingeschaltet für 20 min
ausgeschaltet für 55 min
eingeschaltet für 5 min
danach ausgeschaltet
bis wenn Türkontakt und Rollo geschlossen am nächsten Tag ( so wie eine Tagesschaltuhr die durch das Makro gestartet wird)

Benutzeravatar
Herbert_Testmann
Beiträge: 11062
Registriert: 17.01.2009, 11:30
Danksagung erhalten: 7 Mal

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von Herbert_Testmann » 27.03.2011, 20:51

Wie Buempi schon geschrieben hat, makro in den Türkontakt und bei Änderung anhaken

wenn Türkontakt = "an" und Rollo= "an" dann
Lampe einschalten
warte "00:45:00"
Lampe ausschalten
warte "00:30:00"
Lampe einschalten
warte "00:20:00"
...
endewenn

Ob jetzt "an" "geschlossen" oder "ein" der richtige Zustand ist, siehst Du bei den jeweiligen Objekten (TFK bzw Rollo)

Bastler_60
Beiträge: 16
Registriert: 17.03.2011, 20:09

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von Bastler_60 » 28.03.2011, 19:36

Hallo Herbert
Ich habe nach deinem Beispiel programmiert und es funktioniert. Ich habe aber noch Probleme mit der Studio Software 2.00
Wenn ich z.B. eingebe warte "00:00:10" gibt es Syntaxfehler, gebe ich aber warte 10 sekunden ein, dann geht es.
Genauso der Befehl einschalten für "00:00:10" geht nicht. Für mein Verständnis heißt es doch, 10 Sekunden eingeschaltet und danach aus.
Die Schreibweise für die Befehle sind so aus der Makrobearbeitung übernommen, gehen aber auch nicht per Editor.
Vielleicht habt ihr einen Tipp

fsommer1968
Beiträge: 230
Registriert: 16.02.2008, 17:05
Danksagung erhalten: 9 Mal

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von fsommer1968 » 28.03.2011, 23:00

Hallo,

versuchs mal mit: warte("00:00:10")
......

Benutzeravatar
Herbert_Testmann
Beiträge: 11062
Registriert: 17.01.2009, 11:30
Danksagung erhalten: 7 Mal

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von Herbert_Testmann » 29.03.2011, 20:15

Bastler_60 hat geschrieben:Hallo Herbert
warte "00:00:10" gibt es Syntaxfehler, gebe ich aber warte 10 sekunden ein, dann geht es.
ja richtig, ich hatte die Klammern vergessen. Für die Syntax der Befehle ist die eingebaute Hilfe brauchbar, die Du über den Button "Hilfe" erreichst.

Bastler_60
Beiträge: 16
Registriert: 17.03.2011, 20:09

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von Bastler_60 » 24.08.2011, 10:29

Hallo
Ich bin mal wieder bei meiner Programmierung für eine Schaltuhr, die eine Küchenlampe schalten soll. Der 1.Teil mit dem Küchenrollo arbeitet richtig (Ausführungzeit 5s). Das Küchenlicht wird eingeschaltet, aber nicht ausgeschaltet. Es sind doch die normalen Anweisungen, aber wahrscheinlich ein logischer Fehler.
Das Makro steht im Objekt " Kuechenrollo" mit Ausführungszeit alle 5s.
Kann mir einer auf die Sprünge helfen.

wenn Uhrzeit zwischen "17:00:00" und "21:30:00" und
Daemmerungssensor_SD_2 eingeschaltet und
Tuer_Kontakt eingeschaltet dann
Kuechenrollo einschalten
endewenn
wenn Kuechenrollo eingeschaltet dann
Kuechenlicht einschalten
warte("00:00:05")
Kuechenlicht ausschalten
warte("00:00:05")
Kuechenlicht einschalten
warte("00:00:05")
Kuechenlicht ausschalten
warte("00:00:05")
Kuechenlicht einschalten
warte("00:00:05")
Kuechenlicht ausschalten
endewenn
wenn Uhrzeit groesser "23:00:00" dann
verlassen
endewenn

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von buempi » 24.08.2011, 13:31

Bastler_60 hat geschrieben:Der 1.Teil mit dem Küchenrollo arbeitet richtig (Ausführungzeit 5s)
... wenn du unter "Ausführungszeit" den Ausführungsintervall verstehst, ist klar, warum es nicht funktioniert: Das Makro wird alle 5 Sekunden abgebrochen, neu gestartet und beginnt wieder ganz oben, sodass schon das erste WARTE() nie überschritten wird.

Was du mit deinen Blinkereien genau beabsichtigst, ist mir nicht ganz klar, aber ein Ausführungsintervall ist wohl kaum nötig. Wahrscheinlich genügt es, das Makro im Objekt "Tuer_Kontakt" zu hinterlegen und "Ausführen bei Empfang" zu aktivieren; den Ausführungsintervall leer lassen!

Ob das Makro dann aber macht, was du dir vorstellst, ist höchst zweifelhaft. Zum Beispiel blinkt das Licht auch beim Schliessen der Türe ein paar mal. - Vielleicht solltest du deine Schreibfaulheit doch überwinden und mal genau schildern, warum ein Rollo bei offener Tür und Dunkelheit vor 21:30 Uhr eingeschaltet (!?), aber nie mehr ausgeschaltet werden soll, dann aber das Licht immer blinken soll, auch tagsüber, falls das Rollo vor 3 Tagen mal "eingeschaltet" wurde...

Auf jeden Fall ist der letzte WENN-Block mit 23:00:00 vollkommen überflüssig, er macht nichts anderes, als das, was an dieser Stelle des Makros auch ohne ihn passieren würde: NICHTS!

Viele Grüsse
Bümpi

Bastler_60
Beiträge: 16
Registriert: 17.03.2011, 20:09

Re: Mehrere Schaltzeiten hintereinander ausf.

Beitrag von Bastler_60 » 26.08.2011, 19:25

Hallo Buempi
Ich möchte eine Schaltuhr simulieren, die bei Abwesenheit (auch über mehrere Tage) eine Küchenlampe schaltet.
Die Schaltsensoren sind der Türkontakt und der Dämmerungssensor.
Die Lampe soll nicht vor 17 Uhr und nicht nach 23 Uhr leuchten.
Die Ein- und Auszeiten sollen fest sein ( evt. mit warte("..:..:..") z.B. 35 min ein , 30 min aus, 5 min ein, 40 min aus usw.., nicht mit Wiederholungschleifen.

Also : Tür ZU + Dämmerungssensor AN + Uhrzeit (zwischen 17 und 23 Uhr) dann Schaltuhr starten.
Ausschalten aber sicher um 23 Uhr.
Am nächsten Tag wiederholen, aber wegen Abwesenheit nicht mit Türkontaktimpuls, sondern mit Dämmerungsschalter und Uhrzeit.

Ich hoffe , ich habe mich klarer ausgedrückt und du kannst dir vorstellen, was ich möchte.

Viel Grüße

Antworten

Zurück zu „homeputer Studio / Standard: Programmierbeispiele“