Inhaltsverzeichnis:
Video: Light Bamboo (verbundene Lampe) - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Hallo und Willkommen!
Light Bamboo ist eine verbundene Lampe, die aufleuchtet, wenn eine Benachrichtigung auf dem Android-Smartphone eingeht, mit dem sie verbunden ist. Das Ziel dieses instructable ist es, Ihnen die Designphase des Projekts zu zeigen: von der Hardwarearchitektur über die Bluetooth Low Energy (BLE) -Verbindung und das Android-Anwendungsgebäude.
Für unsere Leuchte haben wir uns für ein cooles Deko-Design für eine Kunststoffpflanze entschieden. Für dieses Projekt stammen die angezeigten Benachrichtigungen von den folgenden Anwendungen: Anrufe, SMS/MMS, Facebook, Messenger, Instagram, WhatsApp und Gmail. Jeder Benachrichtigungsart wird eine Lichtfarbe zugeordnet.
Für dieses Projekt benötigen Sie:
- Ein uC mit integriertem BLE-Modul: nFR51822 RedBearLab
- 3 NeoPixel-Ring (12 RGB-LEDs)
- Ein Android-Smartphone
- Android-Studio
Jede Benachrichtigung hat je nach Wichtigkeit eine bestimmte Priorität. Beispielsweise ist eine Benachrichtigung über einen eingehenden Anruf wichtiger als eine Facebook-Benachrichtigung. In diesem Fall wird die Farbe der LEDs mit der Benachrichtigung über eingehende Anrufe verknüpft.
Das Smartphone, auf dem wir die Anwendung entwickelt haben, ist ein Samsung Galaxy A5.
Schritt 1: Hardware-Teil
Unsere Architektur ist ganz einfach.
Verbinden Sie die NeoPixel-Ring-Pins wie folgt mit der nRF51822-Platine:
- Inout Data Pin des NeoPixel Rings an Port 3 des uC.
- Vcc des NeoPixel-Rings auf die 3,3 V des uC.
- GND des NeoPixel-Rings an GND des uC.
Sie können feststellen, dass wir den Output Data-Pin des NeoPixel-Rings nicht verwenden. Das liegt daran, dass die Input Data-Pins der drei NeoPixel-Ringe, die wir in diesem Projekt verwenden, alle mit demselben Port der nRF51822-Platine (Pin 3) verbunden sind.
Schritt 2: Softwareteil
1. Die Bluetooth Low Energy-Kommunikation:
Bei einer BLE-Kommunikation tauschen der Server (in unserem Fall der uC) und der Client (das Smartphone) Daten über GATT-Transaktionen aus. Bei diesen Transaktionen sind die Daten hierarchisch in Abschnitten, die als Dienste bezeichnet werden, organisiert, die konzeptionell verwandte Teile von Benutzerdaten, die als Merkmale bezeichnet werden, gruppieren. In unserem Fall ist die Datenkapselung einfach, da wir nur eine Information vom Client an den Server übergeben müssen (siehe Abbildung oben).
- auf der Serverseite: Um das nrf51822 Board als BLE Server nutzen zu können, installieren Sie zunächst die Bibliothek "BLEPeripheral.h" auf der Arduino IDE. Diese Bibliothek stellt gebrauchsfertige Funktionen zur Erstellung der Dienste und Merkmale und Werbung bereit.
- auf der Client-Seite: Um eine BLE-Kommunikation in Android Studio zu starten, konfigurieren Sie zuerst die BLE-Berechtigungen in der Manifest-Datei. Fügen Sie dann in der Datei activity_main.xml 4 Schaltflächen hinzu: scannen, scannen stoppen, verbinden und trennen, die es der Anwendung ermöglichen, nach BLE-Geräten in der Nähe zu suchen, den Scan zu stoppen, eine Verbindung zu einem Gerät herzustellen und die Verbindung zu einem Gerät zu trennen. Implementieren Sie in der Datei main_activity.java die Funktionen, die den vorherigen Schaltflächen zugeordnet sind: startScanning(), stopscanning(), connectToDeviceSelected(), DisconnectDeviceSelected(). Implementieren Sie schließlich die Callback-Funktionen, die aufgerufen werden, wenn sich der Zustand des Clients ändert.
2. Benachrichtigungsverwaltung
- auf der Client-Seite (auf Android Studio): Um auf die vom Smartphone kommenden Benachrichtigungen zu hören, implementieren Sie einen Benachrichtigungs-Listener, der aktiviert wird, wenn eine Benachrichtigung in der Statusleiste auftritt. Dieser Benachrichtigungs-Listener sendet eine "Nachricht", eine sogenannte Absicht, an die Hauptaktivität, wenn eine Benachrichtigung veröffentlicht oder entfernt wird. Diese "Nachricht" enthält einen Benachrichtigungscode, der hilft, die Anwendung zu identifizieren, die die Benachrichtigung veröffentlicht hat. Um die Benachrichtigung in der Hauptaktivität zu verarbeiten, erstellen Sie einen Broadcast-Empfänger, der die Nachricht vom Benachrichtigungs-Listener empfängt. Dann wird je nach Benachrichtigungscode ein anderes Zeichen an den Server gesendet.
- auf der Serverseite (auf Arduino IDE): die Benachrichtigung mit der höchsten Priorität wird angezeigt.
Schritt 3: Schritt 3: Anhänge
Hier finden Sie alle Codequellen.
Empfohlen:
Smart B.A.L (verbundene Mailbox): 4 Schritte
Smart B.A.L (Connected Mailbox): Sie haben es satt, jedes Mal Ihre Mailbox zu überprüfen, während sich nichts darin befindet. Sie möchten wissen, ob Sie während einer Reise Ihre Post oder ein Paket erhalten. Es benachrichtigt Sie, wenn der Postbote eine Post oder eine Par
DIY IoT-Lampe für die Hausautomation -- ESP8266-Tutorial: 13 Schritte (mit Bildern)
DIY IoT-Lampe für die Hausautomation || ESP8266-Tutorial: In diesem Tutorial werden wir eine mit dem Internet verbundene intelligente Lampe erstellen. Dies wird tief in das Internet der Dinge eintauchen und eine Welt der Heimautomatisierung eröffnen! Die Lampe ist über WLAN verbunden und verfügt über ein offenes Nachrichtenprotokoll. Das heißt, Sie können wählen
Bauanleitung für die Swipe-Lampe: 6 Schritte
Swipe Lamp Build Instructions: Dies ist eine von drei Anleitungen, die wir während unseres Teambuilding-Tags im Lehrlingsstil gemacht haben. Das Einführungsvideo über den Tag und wie Sie bei der Wahl eines Gewinners mitmachen können, sehen Sie hier. Diese anweisbaren Details, wie man unseren Swipe zusammenbaut
Verbundene LED-Lampen - IoT-Projekte: 7 Schritte (mit Bildern)
Verbundene LED-Lampen | IoT-Projekte: Dies ist nicht nur eine weitere gravierte LED-Lampe, die Sie heutzutage auf dem Markt sehen. Dies ist eine erweiterte Version dieser Lampen. Im Zeitalter der vernetzten Geräte habe ich meine eigenen vernetzten Lampen hergestellt. Dieses Projekt ist von einem Produkt namens Filimin inspiriert:
Wie man eine IKEA Jonisk Lampe mit LEDs umwandelt – wikiHow
Wie man eine IKEA Jonisk-Lampe mit LEDs umbaut: Ich habe eine IKEA Jonisk-Lampe für mein Wohnzimmer gekauft, aber wenn ich die Lampe mit einer 60-W-Glühbirne eingeschaltet habe, wird sie heiß wie ****. Ich begann herauszufinden, wie man es stattdessen in eine LED-Lampe umwandelt. Ich habe eine Firma gefunden, die Hochleistungs-LED-Module verkauft (www