Inhaltsverzeichnis:
- Schritt 1: Erforderliche Hardware
- Schritt 2: Hardwareanschluss
- Schritt 3: Kommunikation über das I2C-Protokoll
- Schritt 4: Programmieren des Moduls
- Schritt 5: Datei erstellen und Code ausführen
- Schritt 6: Anwendungen
- Schritt 7: Ressourcen
Video: Heimautomatisierung mit Raspberry Pi mit Relaisplatine - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:16
Eine große Anzahl von Menschen möchte großen Komfort, aber zu vernünftigen Preisen. Wir fühlen uns faul, die Häuser jeden Abend zu beleuchten, wenn die Sonne untergeht und am nächsten Morgen das Licht wieder auszuschalten oder die Klimaanlage / den Ventilator / die Heizungen ein- / auszuschalten, wie das Wetter oder die Raumtemperatur waren.
Eine kostengünstige Lösung, um diese zusätzliche Arbeit des Ausschaltens der Geräte bei Bedarf zu vermeiden, finden Sie hier. Es geht darum, Ihre Häuser mit vergleichsweise sehr geringen Kosten mit einfachen Plug-and-Play-Produkten zu automatisieren. Es funktioniert so, als ob die Klimaanlage oder Heizung eingeschaltet wird, wenn die Temperatur steigt oder sinkt. Bei Bedarf hilft es auch, die Beleuchtung Ihres Hauses einzuschalten, ohne sie manuell einzuschalten. Und viele weitere Geräte lassen sich steuern. Automatisieren Sie die Welt. Lassen Sie uns Ihr Zuhause starten.
Schritt 1: Erforderliche Hardware
Wir werden verwenden:
Himbeer-Pi
Der Raspberry Pi ist ein Linux-basierter Einzelplatinen-PC. Dieser kleine PC bietet einen Schlag in der Registrierungsleistung, die als Teil von Elektronikübungen und PC-Operationen wie Tabellenkalkulation, Textverarbeitung, Web-Surfen, E-Mail und Spielen verwendet wird
I2C-Shield oder I2C-Header
Der INPI2 (I2C-Adapter) bietet dem Raspberry Pi 2/3 einen I²C-Port zur Verwendung mit mehreren I2C-Geräten
I2C-Relais-Controller MCP23008
MCP23008 von Microchip ist ein integrierter Port-Expander, der acht Relais über den I²C-Bus steuert. Über den integrierten I²C-Erweiterungsport können Sie weitere Relais, digitale E/A, Analog-Digital-Wandler, Sensoren und andere Geräte hinzufügen
MCP9808 Temperatursensor
Der MCP9808 ist ein hochgenauer Temperatursensor, der kalibrierte, linearisierte Sensorsignale im digitalen I²C-Format liefert
TCS34903 Luminanzsensor
TCS34903 ist ein Produkt der Farbsensorfamilie, das den Wert der RGB-Komponenten von Licht und Farbe bietet
I2C-Verbindungskabel
Das I2C-Verbindungskabel ist ein 4-adriges Kabel, das für die I2C-Kommunikation zwischen zwei darüber angeschlossenen I2C-Geräten gedacht ist
Micro-USB-Adapter
Zum Einschalten des Raspberry Pi benötigen wir ein Micro-USB-Kabel
12V Netzteil für Relaisplatine
Der Relaiscontroller MCP23008 arbeitet mit einer externen 12-V-Stromversorgung und kann mit einem 12-V-Netzteil versorgt werden
Sie können das Produkt kaufen, indem Sie darauf klicken. Außerdem finden Sie weitere tolle Materialien im Dcube Store.
Schritt 2: Hardwareanschluss
Die erforderlichen Anschlüsse (siehe Bilder) sind wie folgt:
- Dies funktioniert über I2C. Nehmen Sie ein I2C-Shield für Raspberry Pi und verbinden Sie es vorsichtig mit den GPIO-Pins des Raspberry Pi.
- Verbinden Sie das eine Ende des I2C-Kabels mit dem Eingang des TCS34903 und das andere Ende mit der I2C-Abschirmung.
- Verbinden Sie den In-Pot des MCP9808-Sensors mit dem TCS34903-Out mit einem I2C-Kabel.
- Verbinden Sie den In-Pot des MCP23008 über ein I2C-Kabel mit dem Ausgang des MCP9808-Sensors.
- Verbinden Sie auch das Ethernet-Kabel mit dem Raspberry Pi. Der Wi-Fi-Router kann auch dafür verwendet werden.
- Versorgen Sie dann den Raspberry Pi mit einem Micro-USB-Adapter und der MCP23008-Relaisplatine mit einem 12-V-Adapter.
- Schließen Sie schließlich das Licht mit dem ersten Relais und einen Lüfter oder eine Heizung mit dem zweiten Relais an. Sie können das Modul erweitern oder weitere Geräte mit den Relais verbinden.
Schritt 3: Kommunikation über das I2C-Protokoll
Um Raspberry Pi I2C zu aktivieren, gehen Sie wie folgt vor:
- Geben Sie im Terminal den folgenden Befehl ein, um die Konfigurationseinstellungen zu öffnen: sudo raspi-config
- Wählen Sie hier „Erweiterte Optionen“.
- Wählen Sie „I2C“und klicken Sie auf „Ja“.
- Starten Sie das System neu, um es gemäß den mit dem Befehl reboot vorgenommenen Änderungen einzurichten.
Schritt 4: Programmieren des Moduls
Die Belohnung für die Verwendung von Raspberry Pi besteht darin, dass Sie die Programmiersprache auswählen können, in der Sie programmieren möchten, um das Sensorgerät mit dem Raspberry Pi zu verbinden. Diesen Vorteil des Raspberry Pi nutzend, demonstrieren wir hier seine Programmierung in Java.
Um die Java-Umgebung einzurichten, installieren Sie die „pi4j libraby“von https://pi4j.com/1.2/index.html Pi4j ist eine Java Input/Output Library für Raspberry Pi. Eine einfache und am meisten bevorzugte Methode zur Installation von „pi4j Bibliothek“ist es, den unten genannten Befehl direkt in Ihrem Raspberry Pi auszuführen:
curl -s get.pi4j.com | sudo bash
ODER
curl -s get.pi4j.com
com.pi4j.io.i2c. I2CBus importieren; com.pi4j.io.i2c. I2CDevice importieren; com.pi4j.io.i2c. I2CFactory importieren; import java.io. IOException; Klasse MCP23008 { public static void main(String args) löst Ausnahme aus { int status, value, value1= 0x00; // I2C-Bus erstellen I2CBus-Bus = I2CFactory.getInstance(I2CBus. BUS_1); // I2C-Gerät abrufen, MCP23008 I2C-Adresse ist 0x20(32) I2CDevice-Gerät = bus.getDevice(0x20); // I2C-Gerät abrufen, MCP9808 I2C-Adresse ist 0x18(24) I2CDevice MCP9808 = bus.getDevice(0x18); // I2C-Gerät abrufen, TCS34903 I2C-Adresse ist 0x39(55) I2CDevice TCS34903 = bus.getDevice(0x39); // Wartezeitregister setzen = 0xff (255), Wartezeit = 2,78 ms TCS34903.write (0x83, (byte)0xFF); // Zugriff auf IR-Kanal aktivieren TCS34903.write (0xC0, (Byte) 0x80); // Atime-Register auf 0x00 (0) setzen, maximale Anzahl = 65535 TCS34903.write (0x81, (Byte) 0x00); // Einschalten, ADC aktiviert, Warten aktiviert TCS34903.write (0x80, (Byte) 0x0B); Thread.sleep(250); // 8 Byte Daten mit Clear/IR-Daten lesen LSB first byte data1 = new byte[8]; // Temperaturdaten lesen byte data = new byte[2]; status = device.read (0x09); // Konfigurierte alle Pins als OUTPUT device.write (0x00, (byte) 0x00); Thread.sleep(500); Während (wahr) { MCP9808.read (0x05, Daten, 0, 2); // Konvertieren von Daten int temp = ((data[0] & 0x1F) * 256 + (data[1] & 0xFF)); if (temp > 4096) {temp -= 8192; } doppeltes cTemp = temp * 0,0625; System.out.printf("Temperatur in Celsius ist: %.2f C %n", cTemp); TCS34903.read (0x94, Daten1, 0, 8); Doppel-IR = ((data1[1] & 0xFF) * 256) + (data1[0] & 0xFF) * 1,00; doppelt rot = ((data1[3] & 0xFF) * 256) + (data1[2] & 0xFF) * 1.00; doppelt grün = ((data1[5] & 0xFF) * 256) + (data1[4] & 0xFF) * 1.00; doppelt blau = ((data1[7] & 0xFF) * 256) + (data1[6] & 0xFF) * 1.00; // Berechnen Sie die Beleuchtungsstärke doppelte Beleuchtungsstärke = (-0,32466) * (rot) + (1,57837) * (grün) + (-0,73191) * (blau); System.out.printf(“Beleuchtungsstärke ist: %.2f lux%n“, Beleuchtungsstärke); if (Beleuchtungsstärke 30) { Wert = Wert1 | (0x01); aufrechtzuerhalten. Sonst { Wert = Wert1 & (0x02); } device.write(0x09, (Byte)Wert); Thread.sleep(300); } } }
Schritt 5: Datei erstellen und Code ausführen
- Um eine neue Datei zu erstellen, in die der Code geschrieben/kopiert werden kann, wird der folgende Befehl verwendet: sudo nano FILE_NAME.javaEg. sudo nano MCP23008.java
- Nachdem wir die Datei erstellt haben, können wir den Code hier eingeben.
- Kopieren Sie den im vorherigen Schritt angegebenen Code und fügen Sie ihn hier in das Fenster ein.
- Drücken Sie zum Beenden Strg+X und dann "y".
- Kompilieren Sie dann den Code mit dem folgenden Befehl: pi4j FILE_NAME.javaEg. pi4j MCP23008.java
- Wenn keine Fehler vorliegen, führen Sie das Programm mit dem unten genannten Befehl aus: pi4j FILE_NAMEEg. pi4j MCP23008.java
Schritt 6: Anwendungen
Mit diesem System können Sie die Geräte steuern, ohne zu den Wandschaltern zu gehen. Dies hat umfangreiche Möglichkeiten, da die Zeiten des Ein- und Ausschaltens der Geräte automatisch geplant werden. Es gibt eine Handvoll Anwendungen dieses Moduls von Häusern bis hin zu Industrien, Krankenhäusern, Bahnhöfen und vielen anderen Orten, die durch seine Plug-and-Play-Komponenten kostengünstig und einfach automatisiert werden können.
Schritt 7: Ressourcen
Weitere Informationen zu TSL34903, MCP9808 MCP23008 Relaiscontroller finden Sie unter den folgenden Links:
- TSL34903 Datenblatt
- MCP9808 Datenblatt
- MCP23008 Datenblatt
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Bewegungsaktivierte Cosplay Wings mit Circuit Playground Express - Teil 1: 7 Schritte (mit Bildern)
Bewegungsaktivierte Cosplay-Flügel mit Circuit Playground Express - Teil 1: Dies ist Teil 1 eines zweiteiligen Projekts, in dem ich Ihnen meinen Prozess zur Herstellung eines Paars automatisierter Feenflügel zeige. Der erste Teil des Projekts ist der Mechanik der Flügel, und der zweite Teil macht es tragbar und fügt die Flügel hinzu
Raspberry Pi mit Node.js mit der Cloud verbinden – wikiHow
So verbinden Sie Raspberry Pi mit Node.js mit der Cloud: Dieses Tutorial ist nützlich für alle, die einen Raspberry Pi mit Node.js mit der Cloud, insbesondere mit der AskSensors IoT-Plattform, verbinden möchten. Sie haben keinen Raspberry Pi? Wenn Sie derzeit keinen Raspberry Pi besitzen, empfehle ich Ihnen, sich einen Raspberry Pi zuzulegen
Erste Schritte mit der Heimautomatisierung: Home Assistant installieren: 3 Schritte
Erste Schritte mit der Hausautomation: Home Assistant installieren: Wir starten jetzt die Hausautomationsserie, in der wir ein Smart Home erstellen, das es uns ermöglicht, Dinge wie Licht, Lautsprecher, Sensoren usw. über einen zentralen Hub zusammen mit einem Sprachassistent. In diesem Beitrag erfahren Sie, wie Sie in
Raspbian in Raspberry Pi 3 B ohne HDMI installieren - Erste Schritte mit Raspberry Pi 3B - Einrichten Ihres Raspberry Pi 3: 6 Schritte
Raspbian in Raspberry Pi 3 B ohne HDMI installieren | Erste Schritte mit Raspberry Pi 3B | Einrichten Ihres Raspberry Pi 3: Wie einige von Ihnen wissen, sind Raspberry Pi-Computer ziemlich großartig und Sie können den gesamten Computer nur auf einer einzigen winzigen Platine bekommen. Das Raspberry Pi 3 Model B verfügt über einen Quad-Core 64-Bit ARM Cortex A53 mit 1,2 GHz getaktet. Damit ist der Pi 3 ungefähr 50