Hallo!
Ich habe mir dein Listing mal angesehen und eine Auffälligkeit entdeckt:
#Programm1
Pumpe2 = off
Pumpe1 = on
for Minuten = 1 to Anzeit
next Minuten
Pause 45000 ' 15 min Auszeit
return
Hier läuft eine Schleife (for Minuten...) genau 30 mal (Anzeit = 30),
aber sie führt nichts aus (Die schleife benötigt sicher weniger als eine Sekunde um vollständig durchzulaufen) dann kommt erst eine richtige Verzögerung von 15Minuten
Um das zu erreichen was zu vorhast, würde ich die Schleife gegen folgendes ersetzen:
-------------------------------------
#Programm1
Pumpe2 = off
Pumpe1 = on
Pause 90000 ' 30 min An Zeit
Pumpe1 = off
Pause 45000 ' 15 min Auszeit
goto Programm1
-------------------------------------
Also im gesamten Listing:
Code:
' ---------- Definitionen ----------
'
'Ausgänge
define Pumpe1 port[1] 'ohne Pullup-Widerstand
define Pumpe2 port[2] 'ohne Pullup-Widerstand
'
'Eingänge
define Taster1 port[3] 'mit Pullup-Widerstand
define Taster2 port[4] 'mit Pullup-Widerstand
define Taster3 port[5] 'mit Pullup-Widerstand
define Taster4 port[6] 'mit Pullup-Widerstand
'
'
define Minuten Word
define Anzeit 30 ' 30 min
'
' ---------- Programmoperationen ----------
Pumpe1 = off
Pumpe2 = off
Taster1 = on
Taster2 = on
Taster3 = on
Taster4 = on
'Manfs Code:
#Loop
-
if Taster1 = off then goto Programm1 'Achtung: jetzt goto Befehle!
if Taster2 = off then goto Programm2
if Taster3 = off then goto Programm3
if Taster4 = off then goto Programm4
-
goto Loop
'Code von oben
#Programm1
Pumpe2 = off
Pumpe1 = on
Pause 90000 ' 30 min An Zeit
Pumpe1 = off
Pause 45000 ' 15 min Auszeit
goto Programm1
Die anderen Programmblöcke würde dann ähnlich dem ersten sein.
Wie Manf allerdings schon geschrieben hat, gibt es keine Möglichkeit, das Program nach einem Start zu ändern, ohne nicht vorher die Unit zu resetten.
Um einen Programmwechsel zu ermöglichen, muss der Code erweitert werden, und da musst du dann auch von langen Pause-Befehlen absehen
Man kann führ Zeit-Aufgaben die Uhr verwenden, die im Hintergrund der Unit läuft
Wenn du möchtest, kann ich dir noch ein paar Ideen über diese Methode geben
Gruß
Jörn Arne