Go Down

Topic: {gelöst} - [Einsteiger] Temperatur zum Schalten - "flattern" verhindern (Read 654 times) previous topic - next topic

sorath

Hallo Leute !

Ich bin gerade dabei meine RGB-LED Temperaturanzeige auf eine Relais-Platine zu übertragen.

die ursprüngliche Schaltung (oder die eigentliche Schaltung) sieht einfach so aus:

Quote
if ( tempc < 22) { Blue(); }
if ( tempc > 23) { Green(); }
if ( tempc > 25) { Red(); }


die LED flackert an den Schaltwerten, bis nach weiterer Erwärumg (oder eben Abkühlung) des Temperatursensors.

Wie verhindert ihr das denn?

Danke für Tips!

Gruß
Chris

MueThoS

Du musst eine  http://de.wikipedia.org/wiki/Hysterese einbauen

UweFederer

wie MueThoS sagt:

if ( tempc <= 22) { Blue(); }
if ( tempc > 22 && tempc<25) { Green(); }
if ( tempc >= 25) { Red(); }

Du mußt mit Temperaturbereichen arbeiten und nicht mit einzelnen Temperaturwerten.
Grüße Uwe

sorath

Vielen Dank!

Bin auch dank der Hinweise auf folgenden Thread gestoßen, in dem ausführlich diskutiert wurde, hier der link

http://arduino.cc/forum/index.php?topic=77457.0


Schönen Abend !


Gruß
Chris

michael_x

Hysterese heisst, dass man im Umschaltbereich den Wert so lässt wie er ist:

z.B.:
Code: [Select]
if (temp < 22 || blue == 1) blue = 1;
if (temp > 23 || blue == 0) blue = 0;
digitalWrite(blueLED, blue);  // Hysterese zwischen 22 und 23  

Go Up