Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: zeitverzögerung Kategorie: Programmierung Basic (von renate - 19.09.2005 9:11)
 Als Antwort auf Re: zeitverzögerung von Achim - 16.09.2005 10:39

> > > > > > > > > habe eine frage : ich habe eine steuerung programmiert, um eine pumpe zu steuern (an/aus), nun
> > > > > > > > > möchte ich aber, dass diese pumpe nach unterschreitung einer bestimmten temperatur noch eine minute
> > > > > > > > > weiterläuft und nicht sofort ausgeht ! kann mir jemand helfen ??
> > > > > > > >
> > > > > #loop
> > > > > y = abs(timer - pumpen_timer)
> > > > >
> > > > > print "timer =",pumpen_timer
> > > > > print "y=" , y
> > > > >
> > > > > if temp1 < temp2 then goto timer1 else goto pumpe_an
> > > > >
> > > > >
> > > > > #timer1
> > > > >    pumpen_timer_laeuft = ON
> > > > >    pumpen_timer = timer
> > > > > if pumpen_timer_laeuft = ON AND abs(timer - pumpen_timer) > 60 * 50 then gosub pumpe_aus else goto weiter
> > > >
> > > > Du setzt den Pumpen-Timer ja jedesmal neu, solange temp1 < temp2 ist. Kein Wunder, dass die Pumpe ewig läuft (unabhängig von dem Fehler, den Wert in einem byte zu speichern).
> > > >
> > > > Da Du jetzt entgegen Deiner Aussage doch eine Schleife hast, muss in timer1 noch eine if-Abfrage rein, die das Neu-Setzen des Pumpen-Timers verhindert, wenn der Timer bereits läuft. (Lasse ich Dir jetzt mal zur Übung, das zu codieren.) ;-)
> > > >
> >
> > hmm also ich habs jetzt nochmal getestet aber es will einfach nich gehen ! könntest du mal die freundlichkeit besitzen am frühen morgen und mir mal das programm so umschreiben das es geht ?  das wäre echt nett von dir :)
>
> Ich meinte sowas:
>
> #timer1
>   if pumpen_timer_laeuft then goto laeuft_schon
>      pumpen_timer_laeuft = ON
>      pumpen_timer = timer
> #laeuft_schon
>
> HTH
>
> Bye
>  Achim
>
Morgen achim,
ich sitze immer noch an meinem problem, jetzt passiert folgendes :

wenn die temp2 über die temp1 steigt soll die pumpe in einer minute verzögerung sich ausschalten ! du hast festgelegt das der timer = pumpen_timer ist ! und in der folgenden funktion abs(timer - pumpen_timer) die beiden auch wieder stehen ! nun ist es ja logisch das timer - pumpen_timer immer 0 wird und somit ja auch nie über 60*50 werden kann und somit läuft die pumpe ja auch ewig :(

woran kann das liegen ?!

 Antwort schreiben

Bisherige Antworten:

Re: zeitverzögerung (von Achim - 19.09.2005 12:02)