Inhaltsverzeichnis:

Günstige und effektive Hausautomation mit Raspberry Pi – Gunook
Günstige und effektive Hausautomation mit Raspberry Pi – Gunook

Video: Günstige und effektive Hausautomation mit Raspberry Pi – Gunook

Video: Günstige und effektive Hausautomation mit Raspberry Pi – Gunook
Video: Top 10 Raspberry PI Projekte | Deutsch RaspberryPi projects beste einfach tutorial diy 2024, November
Anonim
Günstige und effektive Hausautomation mit Raspberry Pi
Günstige und effektive Hausautomation mit Raspberry Pi
Günstige und effektive Hausautomation mit Raspberry Pi
Günstige und effektive Hausautomation mit Raspberry Pi
Günstige und effektive Hausautomation mit Raspberry Pi
Günstige und effektive Hausautomation mit Raspberry Pi

Ich wollte schon immer Lichter drahtlos steuern können, aber kommerzielle Optionen sind normalerweise teuer. Philips Hue-Lampen kosten etwa 70 US-Dollar, und über WLAN verbundene Lampen sind ebenfalls teuer. In diesem Tutorial erfahren Sie, wie Sie bis zu fünf Lichter / Lampen / Weihnachtslichtstränge für etwa 50 US-Dollar steuern und können auch um weitere Lichter erweitert werden.

Schritt 1: Was Sie brauchen

Was wirst du brauchen
Was wirst du brauchen

Materialien:

Raspberry Pi Zero W (Wireless-Edition)

Micro-SD-Karte (mindestens 4 GB)

Mini-HDMI-zu-HDMI-Kabel/-Konverter (Es gibt einen Unterschied zwischen Mini und Mikro, stellen Sie sicher, dass Sie den richtigen kaufen!)

Micro-USB-zu-USB-Kabel/-Konverter

USB-Tastatur

Hinweis: Ich habe ein Raspberry Pi Zero W Starter-Kit von Amazon erhalten, das mit Raspberry Pi Zero W, SD-Karte, Hülle, Netzkabel, HDMI-Konverter und USB-Konverter geliefert wurde. Für nur 30 US-Dollar ist es eine ziemlich gute Option (Link)

Sie können ein anderes Raspberry Pi-Modell verwenden, aber der Raspberry Pi muss über eine Internetverbindung verfügen, und der Pi Zero W ist die billigste Option.

Remote Outlets - ich habe diese verwendet

HF-Sender und -Empfänger (Hinweis: die Frequenz des Senders/Empfängers muss mit der Frequenz der Fernsteckdosen übereinstimmen) - diese habe ich verwendet

Draht für die Antenne (ich habe 22-Gauge-Vollkern-Kupferdraht verwendet, andere Drähte können funktionieren)

Steckbrett, Überbrückungsdrähte, 40-polige Stecker-zu-Stecker-Stiftleiste

Software:

Raspberry Pi OS (Raspbian Desktop herunterladen)

Etcher Disk Imager (Zum Schreiben des Pi OS auf die SD-Karte)

Werkzeuge:

Lötkolben

Computer zum Herunterladen von Pi OS und Etcher

Schritt 2: Einrichten der Steckdosen

Richten Sie die Steckdosen ein
Richten Sie die Steckdosen ein
Richten Sie die Steckdosen ein
Richten Sie die Steckdosen ein

Beginnen Sie damit, Ihre Steckdosen in eine Steckdose zu stecken. Befolgen Sie die mitgelieferten Anweisungen, um sie einzurichten, und schließen Sie Ihre Lichter/Geräte an. Stellen Sie sicher, dass Ihre Fernbedienung richtig gekoppelt ist und die Steckdosen steuert.

Schritt 3: Einrichten eines PubNub-Kontos

PubNub ist ein kostenloser Internetserver, mit dem Sie zwischen Geräten überall auf der Welt kommunizieren können. Das Python-Skript empfängt Nachrichten von einer Webseite und verwendet die Informationen in der Nachricht, um Lichter ein- oder auszuschalten. Hier können Sie sich für Ihr kostenloses Konto anmelden. Nachdem Sie sich registriert haben, loggen Sie sich in Ihr Konto ein. Dadurch gelangen Sie zu einer App-Verwaltungsseite. Klicken Sie auf „Neue App erstellen“. Geben Sie Ihrer App einen Namen und wählen Sie sie aus der Liste der Apps aus (Wenn dies Ihre erste App ist, ist es die einzige) Dies bringt Sie zur Seite mit den App-Schlüsseln. Klicken Sie auf "Demo Keyset", und Sie sollten drei verschiedene Schlüssel sehen. Behalten Sie diese Seite bei, Sie werden diese Schlüssel später brauchen. Nachdem Sie nun Ihr PubNub-Konto haben, können Sie Ihren Himbeer-Pi einrichten.

Schritt 4: Raspberry Pi vorbereiten

Laden Sie Etcher und das Raspberry Pi OS auf Ihren Computer herunter (Links in der Teileliste)

Installieren Sie Etcher auf Ihrem Computer und entpacken Sie (falls erforderlich) das Raspberry Pi-Betriebssystem. Legen Sie Ihre Micro-SD-Karte in Ihren Computer ein und öffnen Sie Etcher. Klicken Sie auf "Bild auswählen" und navigieren Sie zur entpackten Raspberry Pi OS-Datei. Wählen Sie es aus, klicken Sie dann auf "Laufwerk auswählen" und wählen Sie Ihre Micro-SD-Karte aus der Liste aus. Klicken Sie auf "Flash" und warten Sie, bis Etcher abgeschlossen ist. Sobald Etcher fertig ist, entfernen Sie Ihre SD-Karte von Ihrem Computer (Etcher wirft sie automatisch aus) und stecken Sie sie in Ihren Raspberry Pi ein. An dieser Stelle müssen Sie Ihren Raspberry Pi mit dem HDMI-Konverter an einen Monitor anschließen. Schließen Sie eine Tastatur (und eine Maus, wenn Sie einen Multi-USB-Hub haben) an und stecken Sie das Netzkabel ein. Es gibt zwei Micro-USB-Anschlüsse. Einer ist für die Stromversorgung, der andere ist ein tatsächlicher USB-Anschluss. Der am nächsten am Ende des Pi gelegene ist die Stromversorgung, während der näher an der Mitte USB ist. Ihr Raspberry Pi wird jetzt gestartet. Es kann während des ersten Bootens einige Male neu gestartet werden, aber das ist normal. Sobald Ihr Raspberry Pi gestartet ist, verbinden Sie ihn mit Ihrem WLAN. Nachdem Sie es mit WiFi verbunden haben, können Sie einen SSH-Server verwenden, aber ich finde es momentan einfacher, die GUI zu verwenden. Öffnen Sie ein Terminalfenster und geben Sie diese Befehle ein:

sudo pip3 install 'pubnub==3.9.0'

cd git clone git://git.drogon.net/wiringPi git clone

sudo git-Klon https://github.com/timleland/rfoutlet.git /var/www/rfoutlet

sudo chown root.root /var/www/rfoutlet/codesend sudo chmod 4755 /var/www/rfoutlet/codesend

CD-VerkabelungPi

./bauen

Öffnen Sie nun den Dateibrowser Raspberry Pi und Sie sollten den Ordner pi-home-automation sehen. Doppelklicken Sie darauf und Sie sollten eine Datei namens RFControl.py sehen. Kopieren Sie es (gegenüber klicken und wählen Sie "Kopieren"), kehren Sie dann zum pi-Ordner zurück und fügen Sie es dort ein.

Fahren Sie Ihren Raspberry Pi herunter (entweder über das Menü oder durch Ausführen von sudo poweroff über die Befehlszeile) und trennen Sie ihn, sobald das grüne Licht aufhört zu blinken.

Schritt 5: Erstellen der Schaltung

Erstellen der Schaltung
Erstellen der Schaltung
Erstellen der Schaltung
Erstellen der Schaltung
Erstellen der Schaltung
Erstellen der Schaltung

Jetzt ist es an der Zeit, die Schaltung zu erstellen. Ich habe ein Steckbrett verwendet, aber Sie können es tun, wie Sie möchten.

Zuerst müssen wir eine Antenne für den HF-Sender erstellen. Dieses instructables Tutorial erklärt, wie man eine Antenne für einen HF-Sender herstellt. Befolgen Sie die Anweisungen und löten Sie es dann an den Antennenstift des Senders (auf dem, den ich verwendet habe, war er mit ANT beschriftet) mit der kürzeren Seite am nächsten zum Sender

Verdrahten Sie den Sender

Der Sender verwendet diese Pins:

DATEN: GPIO 17, physikalischer Pin 11

VCC: Raspberry Pi 5v, physikalischer Pin 2

GND: Raspberry Pi GND, physikalischer Pin 6

Verdrahten Sie den Empfänger

Der Empfänger verwendet diese Pins:

GND: Raspberry Pi GND, physikalischer Pin 9

VCC: Raspberry Pi 5v, physikalischer Pin 4

DATEN: GPIO 27, physikalischer Pin 13 (Es gibt zwei Datenpins auf dem Empfänger, den ich verwendet habe, und ich habe denjenigen verwendet, der VCC am nächsten liegt)

Schritt 6: Holen Sie sich Ihre RF-Codes

Holen Sie sich Ihre RF-Codes
Holen Sie sich Ihre RF-Codes

Nachdem Ihr Stromkreis an Ihren Raspberry Pi angeschlossen ist, überprüfen Sie ihn zweimal, um sicherzustellen, dass alles vorhanden ist, und schalten Sie ihn dann wieder ein. Öffnen Sie nach dem Einschalten ein Terminal und geben Sie

sudo /var/www/rfoutlet/RFSniffer

Öffnen Sie als nächstes das RFControl-Programm. Im nächsten Schritt kann es hilfreich sein, das Terminalfenster und das Programmfenster nebeneinander zu platzieren.

Sie benötigen jetzt die Fernbedienung, die im Outlet-Kit enthalten war. Halten Sie es nah an den Empfänger und drücken Sie jede einzelne Taste. Wenn Sie eine Taste drücken, werden zwei Zahlen auf dem Bildschirm gedruckt. Einer davon ist ein sechs- oder siebenstelliger Code und der andere ein dreistelliger Code. Sie müssen das Codewörterbuch im Programm bearbeiten. Geben Sie den 7-stelligen Code an der entsprechenden Stelle des Schalters im Programm ein und fügen Sie für jede Ein-/Aus-Taste den 3-stelligen Code (das ist die Länge) in die entsprechende Schalterleiste im Programm ein.

Wenn beispielsweise Schalter 1 ein den Code 1234567, einen Aus-Code von 7654321 und eine Länge von 890 hat, würde der Code so aussehen:

Codes = {

'switch1': { 'on': 1234567, #This is switch 1 on 'off': 7654321, #this is switch 1 off 'len': 890, #this is switch 1 code length }, 'switch2': {… }, … }

Wiederholen Sie dies für jede Taste. Ändern Sie beim Bearbeiten dieser Datei die Zeichenfolgen "YOUR-SUB-KEY" in Ihren PubNub-Abonnementschlüssel und "YOUR-PUB-KEY" in Ihren Veröffentlichungsschlüssel.

Nachdem jede Schaltfläche aufgezeichnet wurde, können Sie mit dem nächsten Abschnitt fortfahren.

Schritt 7: Ausführen des Programms

Ausführen des Programms
Ausführen des Programms

Nachdem Sie alle Ihre Codes haben, gehen Sie zu dieser GitHub-Seite (Auf Ihrem Computer, nicht Himbeer-Pi) und klicken Sie auf die grüne Schaltfläche mit der Aufschrift "Klonen oder herunterladen" und dann auf "ZIP herunterladen". Sobald diese Datei heruntergeladen wurde, entpacken Sie sie und öffnen Sie den Ordner. Öffnen Sie die Datei main.js. Sie müssen Ihre Abonnement- und Veröffentlichungsschlüssel in das Programm eingeben, indem Sie "IHR-PUB-SCHLÜSSEL" durch Ihren Veröffentlichungsschlüssel und "IHR-SUB-SCHLÜSSEL" durch Ihren Abonnementschlüssel ersetzen.

Gehen Sie als nächstes zurück zu Ihrem Raspberry Pi und geben Sie ein

python3 RFControl.py

Sobald "Bereit" gedruckt wird, gehen Sie zurück zu Ihrem Computer und öffnen Sie die Datei index.html in einem Webbrowser, indem Sie einen entgegengesetzten Klick ausführen, wählen Sie "Öffnen mit" und wählen Sie Ihren bevorzugten Browser aus. Sie sollten 2 Spalten mit 5 Schaltflächen mit den Namen der Schalter dazwischen sehen. Drücken Sie eine der Tasten. Wenn es die Steckdose richtig steuert, großartig! Wenn nicht, können Sie Folgendes ausprobieren:

  1. Stellen Sie sicher, dass der Raspberry Pi Nachrichten empfängt. Es sollte auf dem Bildschirm gedruckt werden, wenn es eine Nachricht von der Webseite erhält. Wenn nicht, vergewissern Sie sich, dass Ihre Abonnement-/Veröffentlichungsschlüssel korrekt sind.
  2. Wenn der Raspberry Pi Nachrichten empfängt, stellen Sie sicher, dass Ihre RF-Codes korrekt sind. Stellen Sie sicher, dass Ihre Steckdosen mit Ihrer Fernbedienung gekoppelt sind, dass Ihre Fernbedienung sie steuern kann und dass die Codes, die Sie in das Programm eingegeben haben, korrekt sind.
  3. Wenn die RF-Codes korrekt sind, stellen Sie sicher, dass sich Ihr Raspberry Pi in Reichweite der Steckdosen befindet. Wenn sie anfangen zu funktionieren, nachdem Sie sie näher gebracht haben, müssen Sie möglicherweise Ihre Antenne neu machen.
  4. Wenn sie immer noch nicht funktionieren, teilen Sie mir Ihr Problem in den Kommentaren mit und ich werde versuchen, Ihnen zu helfen.

Schritt 8: Beim Start ausführen

Damit Ihr Python-Programm beim Start ausgeführt wird, geben Sie dies in Ihr Himbeer-Pi-Terminal ein:

crontab -e

Gehen Sie als Nächstes zum Ende der Datei und geben Sie Folgendes ein:

@reboot python3 /home/pi/RFControl.py &

Dadurch wird Ihr Python-Skript jedes Mal beim Start ausgeführt. Starten Sie nun Ihren Raspberry Pi neu.

Schritt 9: Hinzufügen weiterer Schalter

Hinzufügen weiterer Schalter
Hinzufügen weiterer Schalter

Wenn Sie weitere Filialen hinzufügen möchten, folgen Sie diesen Anweisungen:

Öffnen Sie RFControl.py auf Ihrem Raspberry Pi und fügen Sie einen neuen Schalter zum Schalterwörterbuch hinzu.

Beispiel:

Schalter = {

…andere Schalter… 'NAME-OF-SWITCH': { 'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz, }, }

Fügen Sie als Nächstes eine neue Schaltfläche in Ihrer Web-App hinzu, indem Sie die Switch-Variable in main.js auf Ihrem Computer bearbeiten.

Beispiel:

var-Schalter = […alte Schalter… ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];

Ersetzen Sie NAME-TO-DISPLAY durch den Namen, der auf der Webseite angezeigt werden soll, und NAME-OF-SWITCH in beiden Dateien durch einen beliebigen Namen. Es muss jedoch einzigartig sein von den anderen!

Schritt 10: Weitermachen

Weiter gehen
Weiter gehen

PubNub wird auf vielen verschiedenen Plattformen unterstützt, was bedeutet, dass Sie Nachrichten von fast jedem Gerät aus senden können! Ich habe ein Raspberry Pi AIY Voice-Kit und PubNub verwendet, um Befehle mit meiner Stimme zu senden, aber das kann das Thema eines späteren Instructable sein. Vielen Dank für das Lesen meines Instructable, ich hoffe, es war hilfreich!

Schritt 11: Credits

Danke an Tim Leland für das Tutorial zum Einrichten des HF-Senders: Tutorial

Danke an diy_bloke für das Tutorial zum Erstellen einer Antenne: Tutorial

Vielen Dank auch an alle anderen, die Tutorials online gestellt haben, die ich für Hilfe angesehen habe!

Empfohlen: