Fehler im Prog. Kategorie: Programmierung (von Werner Radfelder - 16.03.2004 22:29) | ||
| ||
Hallo Habe eine function als Zeitschaltuhr gebastelt, die bis gestern auch Tadellos funktionierte. Nun gestern Nacht kam der Fehler es wurde im thread Warmwasser eine Pumpe um 23:50 bis 23:56 geschaltet obwohl dies durch die â??function ein_aus_tagâ?? verhindert werden müsste. einzeit = 2300 auszeit = 530 kann den fehler im Programm nicht finden? Ist auch nicht reproduzierbar, für jeden Hinweis dankbar //----------------------------------------------------------- function ein_aus_tag(int einzeit,int auszeit) returns byte //function aus Modul Zeit //----------------------------------------------------------- { int time; loop { time=system.hour()*100 + system.minute(); // Systemzeit in Seriellzeit if einzeit < auszeit // vergleichen ob Zeitabschnitt innerhalb eines Tages ist { if time>=einzeit and time else return 0; // Rückgabe 0 wenn z.B. Systemzeit nicht zwischen // 6:30 und 21:45 ist } if einzeit > auszeit // vergleichen ob Zeitabschnitt über Tageswechsel ist { if time<=einzeit and time else return 0; // Rückgabe 0 wenn z.B. Systemzeit zwischen 6:00 // und 22:00 ist } if einzeit==auszeit return 0; } } //--------------------------------------------------------------------- thread Warmwasser { int tempWasserZ; loop { sleep 30000; if zeit.ein_aus_tag(2300,530)==0 // Pumpe schalten zwischen 5:30 und 23:00 { tempWasserZ=AD[8]; if tempWasserZ<=3200 and pcf.get(0,4)!=0 // Pumpe ein wenn Temp unter 32° { stports.setLED(5,1); pcf.set(0,4,0); } if tempWasserZ>=3500 and pcf.get(0,4)==0 // Pumpe aus wenn Temp über 35° { stports.setLED(5,0); pcf.set(0,4,1); } } else { if pcf.get(0,4)==0 // Pumpe ausschalten zwischen 23:00 und 5:30 { stports.setLED(5,0); pcf.set(0,4,1); } } } } Programm läuft auf C-Control II Station und OSOPT_V2 GruÃ? Werner | ||
Antwort schreiben Antworten: Re: Fehler im Prog. (von Werner Radfelder - 16.03.2004 22:56) Re: Fehler im Prog. (von Tom - 17.03.2004 8:02) Re: Fehler im Prog. (von Werner Radfelder - 17.03.2004 12:36) |