Inhaltsverzeichnis:

Arduino Schreibtisch-Lüftersteuerung - Gunook
Arduino Schreibtisch-Lüftersteuerung - Gunook

Video: Arduino Schreibtisch-Lüftersteuerung - Gunook

Video: Arduino Schreibtisch-Lüftersteuerung - Gunook
Video: Lüftersteuerung temperaturgeregelt über einen Arduino einfach zum nachbauen 2024, November
Anonim
Arduino Tischlüftersteuerung
Arduino Tischlüftersteuerung
Arduino Tischlüftersteuerung
Arduino Tischlüftersteuerung
Arduino Tischlüftersteuerung
Arduino Tischlüftersteuerung

Als ich vor kurzem die Rollen innerhalb des Unternehmens wechselte, wechselte ich von Bradford in unseren Hauptsitz in Wakefield. Ich verabschiedete mich von meinem treuen alten Schreibtisch mit einem unverzichtbaren Schreibtischventilator, der mich kühl hielt, während ich um mich herum war……. Wie auch immer, der Trend in unserer Zentrale ging zu kleinen USB-betriebenen Lüftern von etwa 4" bis 6". So wurde schnell ein schönes 6"-Modell mit Antik-Messing-Effekt bestellt und am nächsten Tag geliefert.

Das Problem bei allen Lüftern, egal ob sie Geschwindigkeitseinstellungen oder mechanische Oszillationsmodi haben, ist, dass sie entweder ein- oder ausgeschaltet sind und Sie sie am Ende ständig ein- und ausschalten. Ein Funken Fantasie, gepaart mit der Vorgabe, meinen Monitor um gute 3 Zoll nach oben zu heben, und mein nächstes Projekt ist geboren. Fanomatic betreten.

Ich hatte viele Jahre mit Arduino gespielt, also war es der logische erste Halt.

Schritt 1: Einkaufsliste und Hülle

Einkaufsliste und Koffer
Einkaufsliste und Koffer
Einkaufsliste und Koffer
Einkaufsliste und Koffer
Einkaufsliste und Koffer
Einkaufsliste und Koffer

Einkaufsliste:

  • 1 Blatt 12mm MDF - für den Koffer
  • 1 Arduino Uno - das Gehirn
  • 1 sml Steckbrett und Drähte
  • 1 DHT11 - digitaler Temperatur- und Feuchtigkeitssensor - nur zur Temperaturmessung
  • 1,96" OLED-Display - zur Anzeige von Variablen - Geschwindigkeit, Temperatur usw.
  • 1 IRF520 Mosfet-Modul - zum Ein- und Ausschalten der USB-Stromversorgung für den Lüfter
  • 4 10k Potentiometer mit verschiedenfarbigen Knöpfen - zur Steuerung der Lüftergeschwindigkeit, Einschaltzeit, Ausschaltzeit, Temperatursollwert
  • 1 Netzschalter
  • 1 sml Dose Tafelfarbe - geeignet für MDF mit 1 Anstrich
  • 1 USB-Kabel und 1 USB-Buchse

Fall:

Die Größe des Gehäuses wurde durch die Größe des Sockels meines 24-Zoll-Monitors und des 4-Port-KVM-Switches bei 220 mm Breite und der endgültigen Höhe bestimmt, auf die ich meinen Monitor einstellen wollte. Die Tiefe war ziemlich flexibel, also habe ich mich für 180 mm entschieden, um viel zu geben Also 220mmx180mmx60mm war die Größe. Nun, um es zu machen und zu füllen.

Das 12mm MDF wurde zu Hause ganz einfach geschnitten, bevor es geklebt und verschraubt wurde, um eine Arbeitsplatte und Front zu bilden. Die Vorderseite wurde dann gebohrt, um 4 10k-Potentiometer und 1 über dem oberen Ein / Aus-Schalter zu passen, der die Stromversorgung von Arduino und Lüfter steuern würde. Ein rechteckiges Loch wurde herausgemeißelt, um eine kleine rauchgraue Acrylplatte zu halten, hinter der ich eines dieser süßen OLED-Displays befestigen wollte. Auf halbem Weg wünschte ich, ich hätte 3 mm Sperrschicht für die Vorderseite verwendet, anstatt 12 mm MDF, da mehr Holz entfernt wurde als übrig geblieben ist.

Nach dem Bohren und Meißeln von Löchern in der Rückseite und an der Seite für Temperatursensor, USB-Buchse und USB-Stromanschluss wurden ein paar Schichten Tafelfarbe aufgetragen. Es ist eine großartige Farbe für MDF, da es gut einzieht und keine Unterwolle benötigt wird. Es gibt ein sehr unversöhnliches mattes Finish, genau das, was ich gesucht habe.

Für den Retro-Look wurden Töpfe und Schalter angebracht, geräuchertes Acryl heißgeklebt und Dyno-Etiketten produziert.

Neben den Kontrollen…

Schritt 2: Die Kontrollen

Die Kontrollen
Die Kontrollen

Alles basiert auf einem Arduino Uno. Ich habe die Komponenten mit Brotbrettern versehen und mit einer Skizze begonnen.

Die Skizze verwendet 3 Bibliotheken:

  • Einer, der den Irf520-Mosfet antreibt, um den Lüfter einzuschalten.
  • Einer zum Ansteuern des OLED-Displays
  • Eine zum Lesen und Übersetzen der Temperaturdaten vom DHT11

Ich füge die Skizze hier später ein, sobald ich sie ein wenig aufgeräumt habe, aber seien Sie gewarnt, ich bin KEIN Programmierer, ich verstehe gute Programmierprinzipien, bin aber eher ein fauler Programmierer. Wenn ich etwas finde und es funktioniert, dann funktioniert es.

Es gibt einige großartige Websites, die erklären, wie man sie benutzt. und wird Links zu den (meiner Meinung nach) besten Sites enthalten, um das Beste aus jeder herauszuholen.

Logik:

Ein einziges USB-Kabel versorgt den Arduino UND den USB-Lüfter mit Strom. Der Arduino kann den Lüfter nicht betreiben, da der Strom, den er zieht, den Arduino beschädigen würde (eigentlich etwas dramatisch! Es würde die Onboard-Sicherung auslösen). Wir müssen also einen Weg finden, den Arduino zu verwenden, um die Stromversorgung des Lüfters ein- oder auszuschalten.

Ein Transistor ist erforderlich, ich habe zuerst einen Darlington-Transistor bestellt, aber nach dem Auslesen für ein IRF520-MOSFET-Treibermodul von HobbyComponents.com entschieden. Geek-Alarm!! Der IRF520 eignet sich hervorragend zum Schalten von Logikpegeln (Ausgang von Arduino-Pins). Die an das Gerät gesendete Spannung bestimmt den Widerstand des MOSFET, d.h. Wenn Sie 0 bis 255 an einen digitalen Pin senden, wird der Lüfter (oder ein anderes angeschlossenes Gerät) von ausgeschaltet auf volle Geschwindigkeit gefahren.

Wir kommen später auf 0 bis 255 zurück.

Also schalten wir einen Lüfter mit einem Arduino ein, warum sich die Mühe machen? Nun, wir wollen nicht, dass es angeht, wenn es zu kalt ist, oder? Wenn wir also einen Temperatursensor hinzufügen, können wir Code schreiben und testen, ob er heiß ist, und den Lüfter ein- (255) oder ausschalten (0). Ich habe mich für ein DHT11 entschieden, da es spottbillig, einfach zu codieren und genau genug für dieses Projekt ist.

Zurück zu diesem 0 bis 255 Geschäft. Wenn wir wissen, dass ein bisschen Code den Lüfter einschaltet (255), wenn die Temperatur hoch ist, oder aus (0), wenn die Temperatur niedrig ist, wenn wir einen Wert zwischen 0 und 255 hätten, würde der Widerstand über den steigen oder fallen MOSFET und beschleunigen oder verlangsamen den Lüfter.

Geben Sie ein Potentiometer ein, das mit einem analogen Pin verbunden ist! Erzeugt beim Drehen einen Wert zwischen 0 und 1023. Dieser Wert kann dann im Code getestet werden, um die Lüfterdrehzahl zu ändern!! yipeeeee.

Es gibt noch eine letzte Sache (na ja, ein Paar). Die Motorsteuerungsbibliothek, die wir zum Ansteuern des MOSFET-Treibers verwenden, akzeptiert 2 Parameter, einen zum Einstellen des Widerstands (für die Geschwindigkeit) und einen zum Einstellen der Dauer. Mit diesem magischen Parameter können wir also einstellen, wie lange der Lüfter eingeschaltet ist und wie lange der Lüfter ausgeschaltet ist.

Wir haben also 4 Potis, um die 4 Variablen zu steuern. Als nächstes schauen wir uns das Display an.

Schritt 3: Das Display

Der Bildschirm
Der Bildschirm
Der Bildschirm
Der Bildschirm

Braucht es ein Display? Nicht wirklich. Warum hat es einen? Nun, weil ich ein süßes Display wollte, das die aktuelle Temperatur, Lüftergeschwindigkeit, Lüfter-Einschaltzeit, Lüfter-Aus-Zeit und den Temperatursollwert anzeigt.

Die U8G-Bibliothek ist brillant beim Ansteuern dieses winzigen OLED-Displays. Es dauerte einen Abend der Recherche und ich habe mich mit den Befehlen beschäftigt, um die gewünschte Schriftgröße für 5 Zeilen zu erhalten und die Variablen mit den Befehlen u8g.print() anzuzeigen. Der Vorteil dieses Displays ist, dass es sich nicht um ein 2- oder 4-Zeilen-Display handelt, an das die Arduino-Community so gewöhnt ist, sodass Grafiken und Schriftarten alle sehr gut machbar sind.

Um ehrlich zu sein, steuert der größte Teil des Codes das Display. wenn Anweisungen Werte bestimmen, die angezeigt werden sollen, z. B. einen Wert aus den analogen Potis (0 bis 1023) in einen auf dem Bildschirm anzuzeigenden Wert umwandeln. Insgesamt gibt es mehrere Sätze von Anweisungsblöcken, die Lüftergeschwindigkeit aus dem Pot bestimmen, in %-Werte für Bildschirm und Werte zwischen 0 und 255 umwandeln, um den Lüfter anzutreiben.

Nun, das wird für jetzt reichen, Leute. Ich hoffe, Sie genießen diesen ersten Teil. Ich werde mit Links und dem Code bearbeiten und aktualisieren. Wenn Sie Details wünschen, hinterlassen Sie bitte einen Kommentar und fragen Sie nach.

Schritt 4: Code

Ich habe versprochen, die Skizze hochzuladen, als ich dies vor 3 Jahren gepostet habe, und habe es nie getan.

Hier ist es also……

Empfohlen: