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, > hab mich jetzt mit meiner neuen CC2 beschäftigt, was bei der Temperaturerfassung mittels PT1000 > Sensoren etwas ins stocken geraten ist. > Auf der cc2net Seite hatte ich das Programm zur Heizungssteuerung gefunden und mit davon die > Temperaturerfassung abgekupfert. Bei nur einem Sensor hat das alles auch ganz gut funktioniert, als ich > dann jedoch den zweiten Sensor nahc dem gelichen Schema dazuprogrammiert habe, hat dieser nicht > funktioniert. Auf dem Display wird nur eine feste Temperatur angezeigt die sich nicht ändert, wenn der > Sensor wärmer wird oder dieser auch abklemmt wird. Hab dann mal probeweise einen Offset eingegeben, > dieser wird dann aber doch übernommen. Die Funktion getPT2 übergibt also dann einen Wert. Aber was > stimmt dann in dem main-thread nicht? > Vielleicht kann mir da jemand helfen? > Die Sensoren funktionieren, hab sie schon gegeneinander getauscht. > Danke > > <code> > int T[17]; > const OFFSET[] = 0,0,0,0 , 0,0,0,0 , 0,0,0,0 , 0,0,0,0; > > > function getPT1(int x, byte i) returns int > { > long y; > y=x; // Datentypwechsel von 'int' auf 'long' > if x==0 return -999; // Fühler Kurzschluß > if x==10230 return 9999; // Fühler unterbrochen > y=(y*40)/134-140; // Messbereich = -20 ... +115°C > //y=y+OFFSET[i]; // Addieren des individuellen Offsets > return y; > } > > > function getPT2(int x, byte i) returns int > { > long y; > y=x; // Datentypwechsel von 'int' auf 'long' > if x==0 return -999; // Fühler Kurzschluß > if x==10230 return 9999; // Fühler unterbrochen > y=(y*40)/134-140; // Messbereich = -20 ... +115°C > y=y+OFFSET[i]; // Addieren des individuellen Offsets > return y; > } > > > thread main > > { > byte i; > rbports.init(1); > > loop > { > for i=0...15 // Multiplexer-Port 0...15 > { > T[i+1]=getPT2(rbports.ad(i),i); // ggf. Funktionsname ändern (AD592,PT1,PT2) > //T[2]=getPT2(rbports.ad(1),1); // ggf. Funktionsname ändern (AD592,PT1,PT2) > } > sleep 250; > } > } > </code>