Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo > ich würde den Befehl "loop" > an das Ende setzen > So wie es aufgebaut ist wiederholt sich nur Programminfo an LCD > > Die anderen Zeilen werden garnicht angesprungen > Gruß Hans > > > Hallo! > > > > Bin wieder mal kurz vor einem Nervenzusammenbruch, grins! > > Mein Programm läuft einfach nicht - die Übertragung auf die C-Controll klappt, der > > Text Solarsteuerung und Datum erscheint und bleibt für ewig stehen. Es passiert > > dann einfach nichts mehr. > > Einzelne Programmteile habe ich in der Entwicklung seperat ablaufen lassen, hat funkioniert. > > Das komplette Programm läuft allerdings nicht. Verschiedene Parameter > > müssen noch korrigiert werden (sleep, Temperaturdifferenzen...) > > Ich hoffe mir kann jemand sagen, was ich falsch mache. > > > > Danke, Walter > > > > > > //------------ > > thread main > > //------------ > > > > { > > int delta; > > int differenz; > > string s,p,t; > > int n,ad,d; > > float U1,U2,U3,R1,R2,R3,T1,T2,T3; > > station_io.init(); > > station_io.RELoff(1); > > station_io.RELoff(2); > > station_lcd.init(); > > > > > > > > /******** Programminfo am LCD *************/ > > > > station_io.Clear(); > > station_lcd.clear(); > > station_lcd.print(" Solarsteuerung"); > > station_lcd.line2(); > > station_lcd.print(" 2007_05_10"); > > sleep 5000; > > > > loop > > > > { > > > > /******** Temperaturmessungen am Boiler **********/ > > > > { > > station_lcd.clear(); > > p=" "; > > U1=0.004*ports.adc(4); //Boilersensor auf Klemme 32 > > R1=5/U1-1; > > T1=10*(1000/(math.ln(R1)/4.3+1000/298)-273); //modifizierte Formel > > str.putfloatf(p,T1,1); > > p=p+" Boilertemp."; > > station_lcd.print(p); > > if T1 > 70 //Boilertemperatur 70 Grad > > { station_io.LEDon(1); //Leuchtsignale an der C-Controll > > station_io.LEDon(2); > > station_io.LEDon(3); > > station_io.LEDon(4); > > station_io.LEDon(5); > > sleep 5000; //Wert wird später höher gesetzt > > } > > if T1 < 65 > > { station_io.LEDoff(1); > > station_io.LEDoff(2); > > station_io.LEDoff(3); > > station_io.LEDoff(4); > > station_io.LEDoff(5); > > sleep 2000; > > } > > } > > > > /********** Absorbertemperatur (Vorlauf) **********/ > > { > > station_lcd.clear(); > > t=" "; > > U2=0.004*ports.adc(2); //Absorbersensor auf Klemme 30 > > R2=5/U2-1; > > T2=10*(1000/(math.ln(R2)/3.988+1000/298)-273); //modifizierte Formel=3.988 > > str.putfloatf(t,T2,1); > > t=t+" Absorbtemp"; > > station_lcd.print(t); > > sleep 2000; > > > > > > /********** Rücklauftemperatur **********/ > > > > s=" "; > > U3=0.004*ports.adc(3); //Rücklaufsensor auf Klemme 31 > > R3=5/U3-1; > > T3=10*(1000/(math.ln(R3)/3.988+1000/298)-273); //modifizierte Formel=3.988 > > str.putfloatf(s,T3,1); > > s=s+" Rucklauftemp"; > > station_lcd.line2(); > > station_lcd.print(s); > > sleep 2000; > > > > > > /********** Differenzsteuerung der Pumpe **********/ > > > > differenz = T2 - T3; // Klemme 30 und 31 > > if differenz > 10 // 10 Grad Differenz > > { ports.set(8,1); sleep 2000; // Pumpe ein Minirelais auf Kl. 46 > > station_io.LEDon(6); sleep 2000; // Lichtsignal wenn Pumpe läuft > > } > > if differenz < 7 // bei <7 Grad Differenz > > { ports.set(8,0); sleep 2000; // Pumpe aus > > station_io.LEDoff(6); sleep 2000; // Lichtsignal aus > > } > > } > > > > // if math.abs(differenz) <= 9 // alles ausschalten > > // { ports.set(8,0); sleep 2000; // Pumpe aus > > > > sleep 2000; > > > > > > > > /********** Lichtmessung zur Nachführung **********/ > > > > > > delta = ports.adc(0) - ports.adc(1); //Lichtsensoren auf Klemme 28 und 29 > > if delta > 200 // Einschaltbedingung Rechtslauf > > { station_io.RELoff(1); sleep 2000; // erst ausschalten > > station_io.RELon(2); sleep 2000; // dann einschalten > > } > > if delta < -200 // Einschaltbedingung Linkslauf > > { station_io.RELoff(2); sleep 2000; // erst ausschalten > > station_io.RELon(1); sleep 2000; // dann einschalten > > } > > if math.abs(delta) <= 200 // alles ausschalten > > { station_io.RELoff(1); sleep 2000; // ausschalten > > station_io.RELoff(2); sleep 2000; // ausschalten > > } > > } > > } > > > >