Der Nachfolger des WDR-Computerclub mit Wolfgang Back und Wolfgang Rudolph - ...und immer ein Bit übrigbehalten!


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 

 Dank für die Hilfe. Muß ich erst begrübeln... (Anfängerhirn!) Kategorie: C-Control I V1.1 (von Markus - 7.05.2004 21:23)
 Als Antwort auf Re: Schwere KRÄMPFE mit der Zeiteinstellung ! von Achim - 6.05.2004 23:53
Danke für die Tips!

Die Station hat nur 2 Relaise drin, ich brauche 6. Das Problem ist aber mit hochsensiblen Relaise
über P1-P4 gelöst.

> Wenn's wirklich dringend ist, sollte man die Probleme möglichst mundgerecht servieren. ;-)
> Also: Kategorie ist "Unit/Micro/Station" und Du hast? Unten sprichst Du einerseits von Station (die hätte
> auch Deine Relais schon drin) andererseits sprichst Du von Uhrzeit "anzeigen", was nun z. B. das LCD
> des Application-Boards oder etwa doch die IO-Unit zur Station sein kann? Oder ganz einfach per print
> über die V.24?

> hour = 17
> print hour ' hier kommt 17 raus
> hour = 0
> print hour ' hier kommt immer noch 17 raus
GENAU DAS !

> > Ich muß ein Relaise je nach Temperatur zeitabhängig schalten (zwischen 8-9 Stunden), und dies Tage-
> > bis wochenlang.
>  Was denn nun? 8-9 Stunden oder tage- bis  wochenlang? Oder meinst Du, das Relais soll zwischen 8
> und 9 Stunden anziehen, aber Dein Programm soll mehrere Tage laufen? Wieso nicht endlos?

ICH ERMITTLE ÜBER DEN TEMPERATURFÜHLER DIE TEMPERATURSUMME. WENN DIESE
ERREICHT IST (dauert etwa alle 8-9 Stunden), SOLL DAS DING SCHALTEN. Und das wiederholen.
 
> > Und da dachte ich, daß ich am und nach jedem Schaltvorgang die Uhr mit dem Befehl
> > hour=0, second=0 zurücksetzen kann,  worauf wiederum von Null weg Sekunden und Stunden
> > gezählt werden.
> Hmm, ich kann mir nicht vorstellen, dass diese Zuweisungen mit entsprechenden Ergebnissen nicht
> möglich sein sollten. Also vermute ich zunächst einmal bei Dir einen Programmfehler.
>
> Auf jeden Fall geht diese Verwendung aber m. E. am Zweck der internen Uhr vorbei, weil die ja eine Uhr
> ist, und kein Timer. ;-)
Schon richtig, BRAUCHE SIE ABER ALS TIMER !
>
> > Dies wäre für mich die ideale (und vor allem verständliche) Lösung. ABER: Hour=0 etc. wird von der
> > Control-Station völlig ignoriert.
>
> Glaube ich nicht.
DOCH !
>
> > Das Ding zeigt stur die aktuelle Stunde an.
> Ein minimales belegendes Code-Beispiel bitte.
PRINT HOUR ---> 17
HOUR = 1
PRINT HOUR  -----> Zeigt wieder 17 an.
 
> > Kann man Stunden und Minuten im Programm auf Null setzen,  Ja.
>
> > Und zählt das ganze dann wieder richtig????
> Wenn Du eine DCF-Antenne dran hast, sicher nicht sehr lange. Ob mit oder ohne Antenne, würde
> ich das Programm umstellen, so dass es die Uhr als Uhr nimmt, und nicht als Timer.
HABE KEINE ANTENNE.
>
> Also etwa ungetestet, trivial skizziert so:
>
> define OnHours byte ' wieviele Stunden soll es denn an bleiben (max 255)
> define OnTime word ' Angezogen um (Minuten seit Mitternacht)
> define OnDay word ' Angezogen am (Tage seit 1.1.2000)
>
> #RelaisAn
> if year > 20 then goto error ' Echtes Datum noch nicht gesetzt
> OnTime = hour * 60 + minute
> OnDay = year * 400 + month  * 31 + day ' der Einfachheit halber grobe Formel fuer obere Abschätzung
> OnMinutes = computeHours * 60 ' je nach Temperatur, max 24 Stunden
>
> K1=on
> #loop
>   pause 1
>   if  (OnTime + OnMinutes) / (24 * 60) > 0 then goto OnTilNextDay
>     ' else Heute noch fertig
>     if OnTime + OnMinutes < hour * 60 + minute then goto loop
>     'else
>        goto off
>  #OnTilNextDay
>  if year * 400 + month * 31 + day <= OnDay then goto loop ' neuer Tag noch nicht da
>  if (OnTime + OnMinutes) mod  (24 * 60) < hour * 60 + minute then goto loop
> #off
> K1 = off
>
> HTH
>
> Bye
>  Achim

 Antwort schreiben

Bisherige Antworten: