Inhaltsverzeichnis:
- Schritt 1: Firebase und Xcode
- Schritt 2: Xcode fertigstellen
- Schritt 3: Raspberry Pi-Setup
- Schritt 4: Gehäuse
Video: RPi IoT Smart Light mit Firebase - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Diese Anleitung zeigt Ihnen, wie Sie eine App erstellen und einrichten, um den Raspberry Pi über Firebase (eine Online-Datenbank) zu steuern. Und dann 3D-Druck eines Gehäuses für den Pi Zero W, ein Powerboost 1000C, ein Akku und ein Blinkt!.
Um am einfachsten folgen zu können, empfehle ich, mit Xcode und Raspberry Pi vertraut zu sein.
Und wenn Ihnen gefällt, was Sie sehen, folgen Sie mir auf Instagram und Twitter (@Anders644PI), um mit meinen Produkten Schritt zu halten.
Du wirst brauchen:
-
Ein Raspberry Pi Zero W mit Adaptern und GPIO-Headern
(oder der gewöhnliche Pi Zero mit einem WiFi-Dongle)
- Ein PowerBoost 1000 C
- Ein Lithium-Ionen-Akku - 3,7 V 2000 mAh
- Ein Blinkt! (oder jeder pHAT / HAT, der Pin 5 nicht verwendet und HATs sollten auf der Unterseite flach sein.)
- Eine 8 GB oder höhere Micro-SD-Karte mit Raspbian Stretch (mit Desktop) darauf
- Eine Tastatur und eine Maus (kann man aber auch über ssh verbinden, wenn man jetzt wie geht)
- Eine Verbindung zu einem Monitor oder Fernseher (oder ssh!)
- Schrauben verschrotten
- Kleine Drähte
- Ein kleiner Schalter und ein kleiner Knopf
- Ein 3D-Drucker und eine Spule eines beliebigen farbigen PLA-Filaments und eine Spule transparentes PLA (oder Sie können einen 3D-Dienst wie 3D Hubs verwenden, um es für Sie zu drucken)
Schritt 1: Firebase und Xcode
Zuerst richten wir Firebase mit der App ein, damit wir von der App mit dem Pi kommunizieren können.
Wenn Sie verwirrt sind, können Sie sich dieses Video ansehen.
1. Öffnen Sie Xcode und erstellen Sie ein neues Xcode-Projekt. Wählen Sie Single View App und nennen Sie es RPiAppControl, und stellen Sie sicher, dass die Sprache Swift ist. Drücken Sie Weiter und speichern Sie es.
2. Kopieren Sie Ihre Bundle-Kennung, da wir diese später benötigen.
3. Melden Sie sich in Firebase mit Ihrem Google-Konto an und klicken Sie auf Zur Konsole wechseln.
4. Erstellen Sie ein neues Projekt und nennen Sie es RPiAppControl.
5. Klicken Sie auf Firebase zu Ihrer IOS-App hinzufügen. Fügen Sie Ihre Bundle-Kennung ein und drücken Sie auf App registrieren.
6. Laden Sie die GoogleService-Info.plist herunter und ziehen Sie sie in Ihr Xcode-Projekt.
7. Zurück bei Firebase, drücken Sie Weiter. Öffnen Sie dann ein Terminalfenster und navigieren Sie zum Speicherort Ihres Xcode-Projekts.
8. Führen Sie diesen Befehl aus:
Pod-Initialisierung
9. Öffnen Sie das Podfile und unter use_frameworks!, füge diese Zeile hinzu:
Pod 'Firebase/Core'
10. Zurück zum Terminaltyp: pod install, und schließen Sie Xcode.
11. Navigieren Sie im Finder zu Ihrem Xcode-Projekt und öffnen Sie die neu erstellte.xcworkspace-Datei.
12. Gehen Sie hier zu AppDelegate.swift und fügen Sie unter UIKit importieren diese Zeile hinzu:
Firebase importieren
Und in der Anwendungsfunktion fügen Sie diese Zeile hinzu:
FIRApp.configure().
13. Zurück in Firebase, klicken Sie auf Weiter und dann auf Fertig stellen.
14. Gehen Sie zu Datenbank, dann zu Regeln und setzen Sie ".read" und ".write" auf true. Drücken Sie VERÖFFENTLICHEN.
15. Öffnen Sie wieder bei Xcode die Poddatei und fügen Sie unter der ersten Zeile, die wir eingeben, Folgendes hinzu:
Pod 'Firebase/Datenbank'
16. Führen Sie pod install erneut im Terminal aus.
Schritt 2: Xcode fertigstellen
Wir werden jetzt den Code und das Layout in Xcode fertigstellen.
Dies verwendet Xcode 9 und Swift 4
Code für den ViewController1. Fügen Sie oben im ViewController und unter dem Import UIKit Folgendes hinzu:
Firebase importieren
FirebaseDatenbank importieren
2. Kopieren Sie unten im ViewController und unter der didReceiveMemoryWarning -Funktion diese Funktionen für jede Schaltfläche:
func num1(state: String){
let ref = FIRDatabase.database().reference() let post: [String: Any] = ["state": state] ref.child("num1").setValue(post) }Denken Sie daran, die (Zahl
3. Fügen Sie in der viewDidLoad -Funktion unter super.viewDidLoad() diese Zeile für jede Schaltfläche ein (Bei mehreren Schaltflächen ändern Sie einfach die (Zahl). Siehe Bild…):
num1(Zustand: "AUS")
Layout des Main.storyboards und der Schaltflächen
1. Gehen Sie zum Main.storyboard und fügen Sie einige Schaltflächen ein. Sie können sie wie ich gestalten oder nach Belieben anpassen.
2. Verbinden Sie die Tasten mit dem ViewController. Jede Schaltfläche muss zweimal verbunden werden: Eine als Aktion und UIButton namens num(number)Button, und die andere als Standard-Outlet und als num(number)Color. Siehe Bild…
3. Fügen Sie dann für alle Schaltflächen diese Zeile in jede der Funktionen ein:
if self.num1Color.backgroundColor == UIColor.lightGray { // Setzt die Hintergrundfarbe auf lightGray
num1(state: "ON") // Sendet den Status: "ON" an Firebase self.num1Color.backgroundColor = UIColor(red:0.96, green:0.41, blue:0.26, alpha:1.0) // Setzt die Hintergrundfarbe auf rötlich } else { num1(state: "OFF") // Sendet den Zustand: "OFF" an Firebase self.num1Color.backgroundColor = UIColor.lightGray // Setzt die Hintergrundfarbe auf lightGray }
Jetzt sollten Sie in der Lage sein, es zu testen, indem Sie die App ausführen, und wenn Sie die Schaltflächen drücken, sollten Sie sehen, dass sich der Status in der Echtzeitdatenbank in Firebase ändert.
Feinschliff (optional)
1. Laden Sie die Bilder unten herunter und fügen Sie die LaunchScreen-image-j.webp
2. Gehen Sie zu Assets.xcassets und dann zu AppIcon. Platzieren Sie hier die entsprechende AppIcon-Größe.
Schritt 3: Raspberry Pi-Setup
Jetzt müssen wir den Pi mit Firebase einrichten, damit die App mit dem Pi kommunizieren, Firebase werfen kann.
Ich habe den Code nicht geschrieben, aber den Originalcode finden Sie hier.
1. Führen Sie im Terminal die üblichen Updates aus:
sudo apt-get update && sudo apt-get dist-upgrade
2. Dann importieren wir Pyrebase (Firebase):
sudo pip install pyrebase
sudo pip3 install pyrebase sudo pip3 install --upgrade google-auth-oauthlib
3. Laden Sie nun die Blinkt-Bibliothek herunter:
Locken https://get.pimoroni.com/blinkt | bash
4. Klonen Sie mein GitHub-Repository:
git-Klon https://github.com/Anders644PI/RPiAppControl.gitcd RPiAppControl
5. Bearbeiten Sie die AppRPiControl_Template.py:
nano RPiAppControl_Template.py
6. Geben Sie Ihren Firebase ApiKey und Ihre Projekt-ID ein. Sie finden diese, indem Sie zu Ihrem Firebase-Projekt gehen und auf Weitere App hinzufügen und dann Firebase zu Ihrer Web-App hinzufügen klicken.
7. Passen Sie die Funktionen an und speichern Sie Ihre Änderungen durch Drücken von Strg-O (Eingabe) und schließen Sie mit Strg-X.
8. Führen Sie es nun aus mit:
sudo python3 RPiAppControl_Template.py
9. Wenn Sie dann ein Blinkt verwenden, können Sie das Beispiel ausprobieren, wenn Sie Ihren Firebase ApiKey und Ihre ProjektId eingegeben haben:
CD-Beispiele
nano RPiAppControl_blinkt_demo.py
Führen Sie es jetzt aus:
sudo python3 RPiAppControl_blinkt_demo.pyDenken Sie daran, dass es nach dem Ausführen des Skripts etwa eine Minute dauert, bis Sie sich fertig gemacht haben (zumindest auf dem Pi Zero). Und das Skript muss in Python 3 ausgeführt werden
10. BONUS: Wenn Sie möchten, dass das Skript beim Booten ausgeführt wird, erfahren Sie hier, wie.
Shutdown/Power-Taste
Es ist optional, einen Netzschalter zu installieren, aber ich empfehle es. Folgen Sie diesem Video, um es einzurichten.
Denken Sie daran, dass dies den physischen Pin 5 auf dem Pi verwendet, sodass einige HATs nicht funktionieren.
Schritt 4: Gehäuse
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
Beginnen Sie mit Light Painting (kein Photoshop): 5 Schritte (mit Bildern)
Beginnend mit Light Painting (kein Photoshop): Ich habe vor kurzem eine neue Kamera gekauft und einige ihrer Funktionen untersucht, als ich im Internet auf Light Painting oder Langzeitbelichtung gestoßen bin. Die meisten von uns werden die Grundform des Lightpaintings mit einem Foto in einer Stadt mit einer Straße gesehen haben
DIY WiFi Smart Security Light mit Shelly
DIY WiFi Smart Security Light mit Shelly 1: Diese Anleitung wird sich mit der Erstellung eines DIY Smart Security Light mit dem Shelly 1 Smart Relais von Shelly befassen. Wenn Sie ein Sicherheitslicht intelligent machen, haben Sie viel mehr Kontrolle darüber, wann es aktiviert wird und wie lange es eingeschaltet bleibt. Es kann aktiv sein
So erstellen Sie einen linienfolgenden Roboter mit Rpi 3: 8 Schritte
So bauen Sie einen linienfolgenden Roboter mit Rpi 3: In diesem Tutorial erfahren Sie, wie Sie einen linienfolgenden Roboter-Buggy bauen, damit er mit Leichtigkeit über eine Strecke sausen kann