Machen Sie Ihren eigenen Temperaturregler mit einem Arduino
Heben Sie mit einem Arduino-Temperaturregler das perfekte Brot, brauen Sie schönes Bier und fröhliche Küken auf der Rückseite. Wenn Sie in einem weniger zuverlässigen Klima wie England leben, sind Anweisungen, die Sie dazu auffordern, etwas auf einer festgelegten Temperatur zu halten, nicht besonders hilfreich - wir haben keine Klimaanlagen, und das Anheben des Thermostats für das ganze Haus ist nicht praktisch Ich mache nur einen Laib Brot. Selbst im Inneren können Küken sterben, wenn die Temperatur in der Nacht sinkt. und wenn man sie überhaupt zum Schlüpfen bringt, hat man einen noch strengeren Temperaturbereich. Aber ich brauche mein Brot und die Küken müssen geschlüpft werden. Statt teures Equipment zu kaufen, können wir einen kompetenten Temperaturregler mit einem Arduino und Haushaltsstückchen zusammenbauen.
Dasselbe gilt auch für die Kühlung von Gegenständen - es kann verschwenderisch sein, einen ganzen Kühlschrank zu betreiben, um nur Joghurt herzustellen - aber mit einem Temperaturregler ist das Prinzip dasselbe. Anstatt ein Heizelement zu aktivieren, aktivieren Sie den Stecker an einem Mini-Kühlschrank oder einem anderen Kühlelement wie einem Peltier (thermoelektrischer Kühler) - und natürlich wird die Logik umgekehrt.
Was wirst du brauchen
Dies ist ein Arduino-Projekt - wenn Sie noch nie mit Arduino gearbeitet haben, ist unser kostenloser Anfängerleitfaden ein fantastischer Ausgangspunkt.
- Arduino
- Temperatursensor - Ich verwende einen TMP36, ein billiges Einzelgerät, das mit dem Einsteiger-Kit Oomlout (UK) / Sparkfun (US) geliefert wird.
- Relais- oder RC-Steckerschalter
- Schraubklemmen
- Box, um die Hitze einzufangen
- Heizelement oder Glühlampe und Vorrichtung (oder beides)
Der letzte Punkt wurde absichtlich vage gelassen. Wenn Sie eine Glühbirne haben (die Art, die heiß wird, keine Energiesparlampe) oder eine heiße Lampe für Sportverletzungen und dergleichen, ist es wahrscheinlich am einfachsten, sie einzurichten. Ich benutze ein Heizband - im Grunde ein Gummiband, das sich beim Durchströmen von Elektrizität erwärmt, an Ballons und Fässern für die ersten Gärungsphasen bei der Wein- oder Bierherstellung - technisch gesehen kann dies ein Brandrisiko darstellen, wenn es nicht um etwas gewickelt wird , so bitte mach das nicht, ich verwende es nur zum testen. Sie können auch Heizkissen für den gleichen Zweck kaufen.
Aus Sicherheitsgründen verwende ich diese RC-Stecker zum Wechseln von AC-Geräten, wobei ein Controller in diesem Artikel zum Thema Hausautomation auseinander gehackt wird. Steuerungsgeräte von einem Arduino: Der Start von Heimautomation Steuerungsgeräte von einem Arduino: Der Start von Home Automation Last Ich habe Ihnen einige Möglichkeiten gezeigt, wie Sie Ihre Arduino-Projekte sprachgesteuert über SiriProxy, die eingebauten sprechbaren Elemente von OS X und einige Automator-Skripts oder sogar einen eigenen Hardware-Chip für die Spracherkennung steuern lassen. Ich… Lesen Sie mehr. Es ist kabellos, also muss ich zu keinem Zeitpunkt Live-Kabel berühren.
Temperaturmessung
Beginnen wir mit dem Verdrahten und Testen des Sensors. [Diagramm von Adafruit]
Der TMP36-Temperatursensor ist mit der flachen Seite zu Ihnen und den Beinen nach unten gerichtet +, Signal, GND in dieser Reihenfolge. Das + geht an den 3,3 V-Ausgang von Arduino; Sie benötigen auch eine weitere Leitung, die von +3,3 V zum AREF-Pin führt. Dies bedeutet, dass der Arduino anstelle von 5 V 3,3 V als Analogeingangsreferenz verwendet. Verbinden Sie den Signalpin des Sensors mit A1. Bei früheren Versuchen hatte ich den TMP36 direkt an der 5-V-Leitung verwendet. es funktioniert, leider, wenn es mit einem Relais gekoppelt wurde, gab es bei jeder Aktivierung des Relais einen Stromausfall, was zu stark schwankenden Messwerten führte.
Ich habe ein altes Netzwerkkabel als Signalkabel verwendet - sehr nützlich, da 8 Drähte vorhanden sind. Das Kabel ist zwar ziemlich dünn. Vergewissern Sie sich also, dass das andere Ende mit Lötmittel verstärkt wird, wo es in eine Klemmenleiste geschraubt wird.
Die Formel im Code setzt voraus, dass Sie den tMP36-Sensor verwenden. Sie sollten in der Lage sein, ein Codebeispiel für andere Sensoren zu finden. Dieser Beispielcode stammt von Adafruit - laden Sie ihn und öffnen Sie die serielle Konsole, um die Ausgabe zu überprüfen.
Vergleichen Sie wenn möglich mit einem Thermometer. Lesungen nicht richtig?
- Überprüfen Sie, ob die Spannung tatsächlich 3,3 V beträgt
- Ist die AREF auch mit 3,3 V verbunden??
Hinzufügen in der Switch Logic
Um das Heizelement zu steuern, benutze ich diese RC-Steckdosen von Maplin und habe den Regler auseinander genommen. Es müssen nur der Masse- und Kontrollstift angeschlossen werden. Ich habe den Code so geändert, dass er die relevanten Bibliotheken enthält, die Sie hier herunterladen können.
An dieser Stelle werde ich auch alle Hinweise auf Farenheit entfernen und nur noch mit Celsius arbeiten. Ich habe dann eine gewünschte Temperatur definiert, die beibehalten werden soll, und eine einfache Kontrollstruktur hinzugefügt:
wenn (TemperaturC < desiredTempC) mySwitch.switchOn(1,1); Serial.println("Heater ON"); else Serial.println("Heater OFF"); mySwitch.switchOff(1,1);
Hier gibt es nichts Komplexes, das Sie nicht verstehen werden - vergleichen Sie einfach die aktuelle Temperatur mit der gewünschten Temperatur und schalten Sie den Schalter ein, wenn er niedriger ist. Andernfalls schalten Sie es aus.
Den vollständigen Code finden Sie hier, obwohl Sie diesen Wert anpassen müssen, wenn Sie ein Relais verwenden (es ist nicht schwer). Hier ist der komplette Schaltplan, den ich verwendet habe:
Alles zusammenfügen
Kleben Sie den Sensor in die Box, die Sie verwenden, und platzieren Sie das Heizelement an einer geeigneten Stelle. Stellen Sie die gewünschte Temperatur ein und schalten Sie alles ein. Wenn Sie Ihren PC vorerst angeschlossen lassen, können Sie die serielle Konsole verwenden, um Änderungen während des Aufheizens Ihrer Box zu beobachten.
Weitere Arbeit
- Um die Auswirkungen von Temperaturschwankungen zu verringern, können Sie versuchen, die Ergebnisse zu glätten. Erstellen Sie ein Array zum Speichern von 10 Messwerten und berechnen Sie einen Durchschnitt für jede Schleife.
- Um ein schnelles Aktivieren und Deaktivieren des Heizelements zu vermeiden, erstellen Sie eine Variable zum Speichern eines Countdowns. Zeichnen Sie jedes Mal, wenn Sie aktivieren oder deaktivieren, die aktuelle Uhrzeit im Countdown auf. Prüfen Sie dann vor dem erneuten Statuswechsel, ob seit der letzten Statusänderung eine X-Zeit vergangen ist.
- Schließen Sie für ein computerloses Projekt einen kleinen LCD-Bildschirm an, um die aktuelle Temperatur anzuzeigen und die aktuelle und gewünschte Temperatur anzuzeigen.
Auf die Probe stellen
Was wäre dieses Projekt schließlich ohne einen kleinen Test? Ich peitschte eine Portion fertig gemischten Teigs in die Brotmaschine und teilte ihn in zwei Brote auf. Der Sauerteig in der Kiste war etwas größer, aber die Umgebungstemperatur liegt heute ohnehin bei etwa 26 Grad Celsius - dies wäre im Winter viel nützlicher. Egal, ich mache besser Suppe, um dieses schöne Brot zu begleiten.
Also, was würden Sie machen, das eine konstante Temperatur erfordert?
Erfahren Sie mehr über: Arduino.