Zum Inhalt springen

+49 1626571232

info@openelab.io

🚀 Kostenloser Versand ab 50€ in der EU / 80€ weltweit

Lernen

Wie man sein eigenes Smart-Thermostat herstellt

Smart Thermostat ist ein fortschrittliches Temperaturkontrollgerät für den Einsatz in privaten und gewerblichen Umgebungen. Benutzer können die Temperatureinstellungen jederzeit und überall anpassen und über eine Smartphone-App oder ein Webinterface aus der Ferne verwalten. Ziel dieses Projekts ist es, ein einfach zu bedienendes, benutzerfreundliches und Open-Source-Smart-Thermostat zu erstellen, das Sie entsprechend Ihren spezifischen Anforderungen erstellen können.
 

Hardware-Komponenten:

  1. Mikrocontroller: Arduino MKR WiFi 1010 (Mikrocontroller zur Verarbeitung von Sensordaten und Steuerung der Heizungsanlage. Verfügt über WiFi- und Bluetooth-Funktionen).
  2. Sensoren: Feuchte- und Temperatursensor: BME280 Feuchte Druck Temperatur Sensoren
  1. OLED-Display: 0,96 Zoll OLED SSD1306 Display I2C 128 x 64 Pixel
  2. Relaismodul: 5 V/12 V-Relaismodul , wird als Schalter zur Steuerung der Heizungsanlage verwendet.
  3. Echtzeituhr: Echtzeituhr RTC DS3231 I2C Echtzeituhr (zur Verfolgung der genauen Zeit)
  4. Netzteil: 5V/2A Netzadapter
  5. Gehäuse: 3D-gedruckt (siehe Entwurf in dieser Notiz) oder Nachrüstbox zur Unterbringung von Komponenten
  6. Leiterplatte
  7. Steckbrett und Jumper (falls Sie es als Prototyp betreiben und ggf. erweitern möchten)
  8. benutzerdefinierte Leiterplatte (Entwurf mit KiCad EDA und Druck mit Eurocircuits)
 

 

Software Anforderungen:

  1. IDE: Arduino IDE (Sie können jede beliebige IDE verwenden, solange Sie Code auf Arduino hochladen können)
  2. Programmierung: Sie benötigen lediglich Grundkenntnisse im Assembler- und Konfigurations-Tuning. Wenn Sie das Projekt erweitern möchten, können einige Erfahrungen mit den oben genannten Technologien hilfreich sein.
  3. Arduino: C++
  4. Datenbank: SQL (MariaDB)
  5. Frontend: TypeScript (Angular17-Frontend)
  6. Backend: TypeScript (Node.js, Express)
In den meisten Heizsystemen steuert der Thermostat die Heizung, indem er die Kontakte schließt (kurzschließt), um den Stromkreis zu schließen und die Heizung zu aktivieren. Dieser Thermostat funktioniert nach dem gleichen Prinzip und verwendet ein Relais, um den Stromkreis zu schließen. Wenn Ihr aktueller Thermostat auf diese Weise funktioniert, können Sie diesen Thermostat ebenfalls verwenden.
 

Schritt 1: 3D-gedrucktes Gehäuse  

Wir haben ein einfaches Gehäuse entworfen, damit der Thermostat anspruchsvoller aussieht und eher einem typischen Thermostat ähnelt. Sie können unsere STL-Datei herunterladen und in Tinkercad oder eine andere 3D-Modellierungssoftware importieren. Sie können es nach Ihren Wünschen anpassen und dann in 3D drucken. Unser Design ist sehr einfach und kann als Prototyp verwendet werden, sodass Sie es nach Bedarf verbessern und anpassen können.
 
Wenn Sie die von uns entworfene Leiterplatte so verwenden möchten, dass sie genau in das Gehäuse passt, können Sie das Leiterplattenlayout aus KiCad als SVG-Datei exportieren und in Ihre 3D-Modellierungssoftware importieren. Auf diese Weise können Sie das Gehäuse rund um die Leiterplatte gestalten und sicherstellen, dass alles passt. Thermostat_Gehäuse.stl
 

Schritt 2: Drucken Sie die Leiterplatte

 
 

Schritt 3: Hardware- und Mikrocontroller-Setup zusammenbauen

 

Mikrocontroller-Setup

Beginnen Sie den Montageprozess, indem Sie den Mikrocontroller einrichten. Montieren Sie es auf einem Steckbrett, damit es einfacher prototypisiert und angeschlossen werden kann. Schließen Sie den Mikrocontroller an eine Stromquelle an und stellen Sie sicher, dass er eine stabile 5V/2A-Versorgung erhält. Diese Erstkonfiguration bildet die Grundlage des Thermostats und stellt die erforderliche Steuerungs- und Verarbeitungsleistung für die übrigen Komponenten bereit.

Sensorintegration

Als nächstes integrieren Sie die Temperatur- und Feuchtigkeitssensoren in den Mikrocontroller. Befolgen Sie je nach ausgewähltem Sensortyp den spezifischen Verdrahtungsplan, um sie ordnungsgemäß anzuschließen. Den oben aufgeführten Adafruit-Sensor finden Sie auf deren Website. Der Sensor liefert Echtzeitdaten über die Umgebungstemperatur und Luftfeuchtigkeit, die der Mikrocontroller zur Anpassung des Heizsystems verwendet. Befestigen Sie den Sensor an einer Position, an der er die Raumtemperatur genau messen kann.

OLED-Display-Verbindung

Verbinden Sie das OLED-Display mit dem Mikrocontroller und stellen Sie sicher, dass die Pins richtig konfiguriert sind. Das Display dient als Benutzeroberfläche zur Anzeige der aktuellen Temperatur, der eingestellten Temperatur und anderer relevanter Informationen. Der ordnungsgemäße Anschluss des Displays ist für eine klare und genaue Anzeigeausgabe von entscheidender Bedeutung.

Relais Modulsetup

Richten Sie das Relaismodul ein, das das Heizsystem basierend auf Temperaturmesswerten und Benutzereingaben steuert. Schließen Sie das Relais an den Mikrocontroller an, um sicherzustellen, dass es die Last des Heizsystems bewältigen kann. Das Relais fungiert als Schalter und der Mikrocontroller kann es ein- oder ausschalten, um die Temperatur zu regulieren. Testen Sie den Relaisbetrieb, um sicherzustellen, dass es korrekt auf Steuersignale vom Mikrocontroller reagiert.

Schritt 4: Programmierung des Thermostats

 
Die Hauptschleifenfunktion läuft kontinuierlich und führt folgende Aufgaben aus:
  1. sendet regelmäßig einen Heartbeat an den Server.
  2. Wenn der Heartbeat erfolgreich ist, wird die Sensordatenanforderung in die Warteschlange gestellt.
  3. verarbeitet alle ausstehenden Anfragen in der Warteschlange.
  4. versucht, die Verbindung wiederherzustellen, wenn der Fallback-Modus aktiviert ist und ausreichend Zeit verstrichen ist.
  5. Steuert im Fallback-Modus das Heizrelais basierend auf der Temperatur.
  6. Das Display regelmäßig aktualisieren.
 
Einrichten der Entwicklungsumgebung
Richten Sie die Entwicklungsumgebung auf Ihrem Computer ein, indem Sie die erforderliche Software installieren. Wenn Sie Arduino verwenden, laden Sie die Arduino-IDE herunter und installieren Sie sie. Richten Sie für Raspberry Pi die entsprechende Entwicklungsumgebung ein. Stellen Sie sicher, dass Sie über alle Bibliotheken verfügen, die Sie für den Temperatursensor, das LCD-Display und alle anderen von Ihnen verwendeten Komponenten benötigen. Dieses Setup stellt die Tools bereit, die Sie zum Schreiben, Hochladen und Debuggen Ihres Thermostatcodes benötigen.
 
Hochladen von Code auf den Arduino MKR WiFi 1010
Die Verbindung des Arduino MKR 1010 WiFi
  1. Verbinden Sie die Platine: Schließen Sie den Arduino MKR 1010 WiFi mit dem USB-Kabel an Ihren Computer an.
  2. Motherboard auswählen: Gehen Sie zu Extras->Motherboard und wählen Sie Arduino MKR WiFi 1010 aus.
  3. Port auswählen: Gehen Sie zu Extras->Ports und wählen Sie den Port aus, der der Karte entspricht, mit der Sie eine Verbindung herstellen (z. B. COM3, /dev/ttyUSB0).
 
Eine Skizze vorbereiten
  1. Skizze öffnen: Öffnen Sie die Arduino-Skizzendatei (.ino) in der Arduino-IDE.
  2. Skizze konfigurieren: Ändern Sie die Skizze so, dass sie Ihrer Server-IP, Ihren WLAN-Anmeldeinformationen und anderen Einstellungen entspricht.
 
Um eine Skizze hochzuladen
  1. Überprüfen Sie die Skizze: Klicken Sie auf das Häkchensymbol in der oberen linken Ecke der Arduino IDE, um den Code zu kompilieren und zu überprüfen. Dadurch wird sichergestellt, dass keine Syntaxfehler vorliegen.
  2. Skizze hochladen: Klicken Sie auf das rechte Pfeilsymbol neben dem Häkchen, um den Code auf den Arduino MKR 1010 WiFi hochzuladen. Die IDE kompiliert den Code erneut und lädt ihn dann auf das Motherboard hoch.
 
Überwachung der Serie Ausgabe
  1. Seriellen Monitor einschalten: Gehen Sie zu Extras->Serieller Monitor, um den seriellen Monitor einzuschalten.
  2. Baudrate einstellen: Stellen Sie sicher, dass die Baudrate am unteren Rand des seriellen Monitors auf 9600 eingestellt ist, damit sie mit Serial.begin(9600); übereinstimmt. Einstellung im Code.
  3. Ausgabe anzeigen: Sie sollten die Ausgabe des Arduino sehen, einschließlich Debug-Meldungen und Sensormesswerten.
 
Konfiguration anpassen
Sie müssen die WLAN- und Serverkonfigurationen an Ihre Einstellungen anpassen. Diese Konfigurationen müssen an die IP-Adresse des Servers und das WLAN-Netzwerk angepasst werden.
 
Optional: Anpassung der Betriebsgrößen
Diese Variablen und Konstanten verwalten den Betriebszustand, wie z. B. Verbindungsstatus, Heizstatus und Zeitintervalle für die Aufgaben. FALLBACK_TEMPERATURE wird verwendet, wenn der Server nicht erreichbar ist und der Thermostat im Fallback-Modus arbeitet. Das HEARTBEAT_INTERVAL bestimmt, wie oft der Arduino Heartbeats an den Server sendet.
 

Schritt 5: Einrichten der Datenbank, des Servers und des Frontends

 
Datenbank
Damit der Smart Thermostat-Server ordnungsgemäß funktioniert, benötigt er eine Datenbank. Hierfür nutzen wir MariaDB.
Informationen zur Einrichtung finden Sie hier: GitHub Repositories - Datenbank-Setup
 
Frontend
Das Frontend wurde mit Angular17 entwickelt und ermöglicht dem Benutzer die Anzeige von Daten und die Konfiguration von Temperatureinstellungen.
Informationen zur Einrichtung finden Sie hier: GitHub Repository - Frontend-Einstellungen
 
Backend
Das mit Node.js und Express entwickelte Backend bietet APIs für Sensordaten, Authentifizierung und Heizungssteuerung.
Informationen zur Einrichtung finden Sie hier: GitHub Repository - Backend Setup
 

Schritt 6: Testen und Kalibrierung

Erster Test
Schalten Sie den Thermostat ein und führen Sie einen ersten Test durch, um sicherzustellen, dass alle Komponenten ordnungsgemäß funktionieren. Überprüfen Sie, ob die Ausgabe des OLED-Displays korrekt ist und stellen Sie sicher, dass der Temperatursensor genaue Messwerte liefert. Testen Sie das Relaismodul, indem Sie verschiedene Temperaturschwellen einstellen und beobachten, ob das Relais das Heizsystem entsprechend aktiviert oder deaktiviert. Diese erste Testphase ist entscheidend, um etwaige Probleme frühzeitig zu erkennen und gegebenenfalls erforderliche Anpassungen vorzunehmen.
 
Kalibrierung
Kalibrieren Sie den Thermostat, um einen genauen und zuverlässigen Betrieb zu gewährleisten. Vergleichen Sie die Sensorwerte mit einem zuverlässigen Thermometer, um die Genauigkeit zu überprüfen. Passen Sie bei Bedarf Codes oder Sensorpositionen an, um den tatsächlichen Temperaturen näher zu kommen. Stellen Sie sicher, dass die Relais bei der richtigen Temperatureinstellung aktiviert und deaktiviert werden, um eine präzise Steuerung des Heizsystems zu gewährleisten. Dieser Kalibrierungsprozess optimiert die Leistung des Thermostats und stellt sicher, dass er Ihren erforderlichen Spezifikationen entspricht.
 
Weitere Informationen folgen: Bauen Sie Ihr eigenes intelligentes Thermostat

 

Vorheriger Beitrag
Nächster Beitrag

Hinterlasse einen Kommentar

Alle Blog-Kommentare werden vor der Veröffentlichung geprüft

Jemand kaufte vor kurzem ein

Danke fürs Abonnieren!

Diese E-Mail wurde registriert!

Shoppen Sie den Look

Wähle Optionen

Bearbeitungsoption
Benachrichtigung wieder vorrätig
this is just a warning
Anmeldung
Einkaufswagen
0 Artikel
RuffRuff App RuffRuff App by Tsun