MODE 2 — THERMOSTAT

Medium · 1h · Fast kostenlos

Ziel & Anwendung

Ein echter Temperatur-Fühler steuert den Heizer! Anhauchen, mit der Hand wärmen oder kühl anfassen — der Dreh-Regler stellt die Zieltemperatur ein, ein PI-Regler hält den Heizer automatisch nach. Wird es zu warm, schaltet der Heizer ab und eine Lüftungsklappe öffnet sich zum Auskühlen.

  • PI-Regelkreis mit Integral-Anteil und Anti-Windup an einem echten Temperatur-Fühler erleben
  • Realistisches Heizer-Verhalten nachbauen: heizen bei Kälte, auskühlen lassen bei Wärme
  • Lüftungsklappen-Servo als mechanische Kühl-Anzeige einsetzen

Anschluss & Funktion

Motoren am Board

AnschlussMotorAufgabe
S1180°-ServoIst-Temperatur-Zeiger
S2180°-ServoLüftungsklappe — öffnet nur beim Auskühlen
S3180°-ServoSoll-Temperatur-Markierung
S4360°-ServoLüfterrad-Show, dreht beim Auskühlen
S5360°-ServoLüfterrad gegenläufig
S6180°-ServoFähnchen — zeigt Heizen oder Kühlen an
STEPPERSchrittmotorSoll-/Ist-Differenzskala
DCDC-MotorHeizelement

Materialliste

  • Kartonbox als Thermostat-Gehäuse (ca. 15×10 cm)
  • Kartonklappe mit Klebeband-Scharnier als Lüftungsöffnung
  • Papier-Skala für Temperatur-Anzeige hinter dem S1-Zeiger
  • Heißkleber
  • Strohhalm als Lüftungsklappen-Gelenk

Step-by-Step Tutorial

  1. Thermostat-Gehäuse und Zeiger aufbauen

    Baue eine Kartonbox als Thermostat-Panel. Befestige S1 (180°-Servo) horizontal — Plastik-Servo-Horn aufschrauben, kurzen Zeiger-Arm (8 cm) flächig aufkleben. Bei 8 cm Arm kein Gegengewicht nötig — bleibt im Drehmoment-Bereich. Zeichne eine Temperatur-Skala auf Papier hinter dem Zeiger.

    Check: S1-Zeiger bewegt sich von 10°C bis 40°C über der Papier-Skala

    Tipp: Papier-Skala hinter dem Servo-Arm: 10°C links (1000 ms) bis 40°C rechts (2000 ms)

  2. Lüftungsklappe mit S2 bauen

    Schneide eine Lüftungsöffnung (5×3 cm) in die Box-Seite. Baue eine Kartonklappe mit Klebeband-Scharnier. S2 (180°-Servo) bleibt geschlossen solange der Heizer läuft und öffnet sich nur, wenn die Temperatur über das Ziel steigt — je wärmer, desto weiter.

    Check: S2 öffnet die Klappe nur, wenn es zu warm ist — beim Heizen bleibt sie zu

    Tipp: Gegenteiliges Verhalten zu einem Heizkörper-Thermostat: die Klappe hilft beim Auskühlen, nicht beim Heizen

  3. PI-Regler-Logik verstehen und einstellen

    Dreh-Regler stellt die Zieltemperatur zwischen 10 und 40°C ein. Ist es kälter als das Ziel, heizt der Heizer proportional zum Fehler nach. Ist es wärmer, schaltet der Heizer ab und die Lüftungsklappe öffnet sich stattdessen.

    Check: Der Heizer nähert sich automatisch der passenden Leistung, ohne dauerhaft zu überschwingen

    Tipp: Der Integral-Anteil summiert den Fehler über die Zeit auf und wird nach oben und unten begrenzt (Anti-Windup) — so schaukelt er sich nicht unkontrolliert auf

  4. Soll-Markierung mit S3

    Befestige S3 (180°-Servo) neben S1 auf derselben Temperatur-Skala. S3 bleibt fest auf dem eingestellten Soll-Wert stehen. Wenn S1 und S3 übereinander stehen: Zieltemperatur erreicht!

    Check: S3 zeigt immer exakt die eingestellte Zieltemperatur an

    Tipp: S3 ist ein statischer Zeiger — bewegt sich nur, wenn am Dreh-Regler gedreht wird

  5. Bonus-Anzeigen: Lüfterrad und Heiz/Kühl-Fähnchen

    Klebe auf S4 und S5 je eine kleine Kartonscheibe als Lüfterrad — sie drehen im Blink-Takt, sobald aktiv gekühlt wird. Auf S6 ein Fähnchen, das je nach Zustand auf Heizen oder Kühlen zeigt. Der Schrittmotor bewegt einen Zeiger über eine Skala, die die Differenz zwischen Ist- und Solltemperatur anzeigt.

    Check: Lüfterrad-Servos und Fähnchen laufen frei, Stepper-Zeiger bewegt sich über die volle Skala

  6. Leichtgängigkeitstest und echten Temperatur-Fühler testen

    S2-Klappe manuell auf/zu bewegen — frei? S1 und S3 manuell drehen — keine Blockierung? Erst dann Strom einschalten. Jetzt den Temperatur-Fühler am Steuerpult kurz anhauchen oder mit der Hand wärmen: S1 wandert nach oben, der Heizer reagiert. Fühler kurz abkühlen lassen: Heizer schaltet ab, die Klappe öffnet zum Auskühlen.

    Check: Temperatur-Zeiger (S1) nähert sich dem Soll-Zeiger (S3) gleichmäßig, ohne stark zu überschwingen

    Tipp: Klappe S2 klemmt: Scharnier mit Graphit schmieren oder Gummiband als Rückstellkraft hinzufügen

Troubleshooting

  • S1-Zeiger erreicht S3 nie ganz (Stationärfehler) — Etwas länger warten — der Integral-Anteil baut sich über ein paar Sekunden auf und gleicht den Restfehler aus
  • S1 überschwingt weit über S3 hinaus — Temperatur-Fühler nicht dauerhaft sehr stark erwärmen — bei großen Sprüngen braucht der Regler kurz zum Einschwingen
  • Lüftungsklappe (S2) öffnet aber schließt nicht mehr — Klappe klemmt — Scharnier mit Graphit schmieren oder Gummiband als Rückstellkraft hinzufügen

Modifikationen & Sicherheit

  • Pro-Tipp: Differenzial-Anteil (D) hinzufügen um Überschwingen zu reduzieren — Upgrade zu PID
  • Pro-Tipp: Steuerknüppel-Taste als schnelles Reset für die Zieltemperatur belegen
  • Sicherheit: DC-Motor läuft warm bei Dauerlast — keine Dauerlast ohne Pause, Kühlzeit einplanen

Wichtige Code-Teile

// PI-Regler für Temperatur (echter Sensor-Wert)
float targetT = constrain(targetT + EncoderPos * 0.1f, 10.0f, 40.0f);
EncoderPos = 0;

float err1 = targetT - temperature;
integT = constrain(integT + err1 * dt, -50.0f, 50.0f); // Anti-Windup
float pwr = constrain(err1 * 15.0f + integT * 2.0f, -100.0f, 100.0f);

// Heizen (pwr > 0): DC-Motor an, Klappe zu
// Kühlen (pwr < 0): DC-Motor aus, Klappe öffnet proportional
if (pwr > 0) { setMotorspeed(pwr); servocontroller.setServoPulse(2, 1000); }
else {
    setMotorspeed(0);
    servocontroller.setServoPulse(2, map(constrain((int)abs(pwr), 0, 100), 0, 100, 1000, 2000));
}

// Servo-Anzeigen
servocontroller.setServoPulse(1, mapTemperature); // Ist-Temp (echter Sensor)
servocontroller.setServoPulse(3, map(constrain((int)(targetT * 10), 100, 400), 100, 400, 1000, 2000)); // Soll

// S6: Heizen/Kühlen-Fähnchen
servocontroller.setServoPulse(6, pwr > 0 ? 2000 : (pwr < 0 ? 1000 : 1500));

Ähnliche Projekte

  • MODE 5 — RPM HOLD — Ein Antriebsmotor jagt einer Zieldrehzahl hinterher, die der Steuerknüppel vorgibt — und du selbst lieferst mit dem Dreh-Regler das Tacho-Signal von Hand. Zwei Schwungrad-Servos drehen mit, als würden sie die Trägheit des Antriebs spüren, und eine Klappe schnappt auf, sobald Ist- und Soll-Drehzahl exakt zusammenpassen.
  • MODE 9 — LEVEL PID — Halte einen Behälter-Füllstand automatisch auf konstantem Niveau! Ein Nähe-Sensor misst den aktuellen Pegel, ein Regler steuert Einlass- und Auslassventil, der DC-Motor simuliert die Pumpe. Ein Zeiger zeigt den aktuellen Pegel — exakt wie in einer echten Automatisierungsanlage.
  • MODE 1 — BALL BALANCE — Halte einen Ball auf einer flachen Plattform in der Mitte — in zwei Achsen gleichzeitig! Der Kipp-Sensor misst die Plattform-Neigung, zwei Servos kippen automatisch dagegen. Der Dreh-Knopf stellt die Regelstärke live ein, ein dritter Zeiger zeigt den Gesamtfehler. Der Rüttel-Motor warnt bei zu starker Neigung.