Inhaltsverzeichnis:
- Schritt 1: Verbinden Sie Pi(s) mit Display(s)
- Schritt 2: Bereiten Sie 1 oder mehrere Raspberry Pis vor
- Schritt 3: Meinen Code klonen und aktualisieren, um eine automatisierte Echtzeit-Datenpipeline zu erstellen
- Schritt 4: Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
Video: IoT Data Science PiNet für Echtzeit-Smart-Screen-Datenvisualisierung - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Sie können ganz einfach ein IoT-Netzwerk aus intelligenten Displays für die Datenvisualisierung zusammenstellen, um Ihre Forschungsbemühungen in Data Science oder jedem quantitativen Bereich zu beschleunigen.
Sie können den "Push" Ihrer Plots direkt aus Ihrem Statistikcode (Python, R, Matlab/Octave, SAS usw.) an die Clients abrufen und die Anzeigen in Echtzeit aktualisieren.
Die Idee ist, dass billige alte Desktop-Monitore, die Sie vielleicht herumliegen haben, zu IoT-Geräten umfunktioniert werden können, auf denen billige Raspberry Pi-Entwicklungsboards Ihre Datenvisualisierungen drahtlos in Echtzeit von Ihrem primären Gerät (z. B. Laptop) empfangen und anzeigen. Wenn Sie keine Flachbildschirme haben, machen Sie sich keine Sorgen, sie sind kostenlos - fast kostenlos.
Die Kosten und die Hardwareanforderungen sind minimal.
WAS WIRST DU BRAUCHEN
-
1 oder mehr Raspberry Pis
- Ich habe mit 3 angefangen, von denen 2 3B+ waren und 1 eine Null war
- Kosten: ~$10 - $40
-
Beliebige Anzeige
-
Ich habe mit ein paar Pre-HDMI-Flachbildschirmen angefangen
- Kostenlos - 25 USD pro Stück auf Free Cycle, Craigslist, Second-Hand-Läden, Ihrer Garage, eBay usw. Um gute Angebote für ältere, schwerere Artikel wie diesen Laden vor Ort zu erhalten. Die Leute werfen ihre Desktop-Ausrüstung weg.
- Optional: Flachbildschirm-Wandhalterungen (~$9 für normale Bildschirme in Desktop-Größe, $20 - $30 für große Bildschirme, z. B. 50")
- Wenn es kein HDMI hat (oder wenn Sie einen Pi Zero verwenden), können Sie einfach einen Konverter < 8 $ von Amazon, eBay, Micro Center, Walmart, Ihrem Freund, wo auch immer, erhalten
-
-
HDMI- oder Micro-HDMI-Kabel
- Kostenlos, wenn Sie es mit Ihrem Pi haben oder Tonnen von Ersatzteilen wie ich haben
- 2 $ mit kostenlosem Versand von verschiedenen Online-Händlern
Sobald Sie den Code von GitHub, die Hardware und das von Ihnen gewünschte Betriebssystem auf Ihrem Raspberry Pi haben, schätze ich, dass dies einige Minuten bis maximal 1 Stunde dauern sollte.
Sie können dieses Projekt problemlos an andere IoT-Anwendungsfälle anpassen. Vielleicht möchten Sie auch eine Arduino-Version erstellen! Bitte zögern Sie nicht, mit mir auf GitHub zusammenzuarbeiten.
Schritt 1: Verbinden Sie Pi(s) mit Display(s)
Das geht schnell und einfach.
Schnappen Sie sich einfach das oben erwähnte HDMI- (für Pi) oder Micro-HDMI- (für Pi Zero) Kabel und stecken Sie es in den Pi ein. Wiederholen Sie dies für die Anzeige, indem Sie geeignete Adapter verwenden (HDMI auf Micro-HDMI usw.).
Fertig.
Schritt 2: Bereiten Sie 1 oder mehrere Raspberry Pis vor
Hast du deinen Pi zum Laufen gebracht? Sie können weiterspringen!
Renn einfach
sudo apt installieren feh
wenn Sie den gleichen Bildbetrachter wie ich verwenden möchten.
Andernfalls ist dieser Schritt nicht spezifisch für dieses Tut - wie für jedes Pi-Projekt benötigen wir nur einen Pi, auf dem Raspbian oder Ihr Lieblingsbetriebssystem ausgeführt wird. Außerdem möchten wir sicherstellen, dass es mit Ihrem WLAN-Passwort (oder Ihrem bevorzugten Autorisierungsmechanismus) eingerichtet ist, und ich werde Ihnen ein paar IMHO "Best Practice"-Einstellungen geben, die für Bastler-IoT / Pi-Projekte gut sind (nicht unbedingt für Sicherheit, Leistung, produktive Nutzung oder jeden anderen ähnlichen Kontext).
Meine zweiteilige Strategie hier besteht darin, Sie mit detaillierten, bewährten Anweisungen von Drittanbietern zu verknüpfen und Ihnen dann meinen allgemeinen Überblick darüber zu geben, was zu tun ist.
-
Detaillierte, bewährte 3. Teil Raspberry Pi Setup-Anleitung
- https://projects.raspberrypi.org/en/projects/noobs…
- https://www.howtoforge.com/tutorial/howto-install-…
-
Mein High-Level-Überblick
-
Holen Sie sich ein beliebiges WiFi-fähiges Pi
- Pi 2 mit USB-Wireless-Netzwerkadapter
- 3, 3B+
- Null W, Null WH
-
Verwenden Sie das entsprechende HDMI- oder Micro-HDMI-Kabel, um Ihre Displays mit dem Pi. zu verbinden
- Konverter-Tipps (ca. 10 US-Dollar bei Amazon, eBay usw.) können für ältere Displays wie VGA verwendet werden
- Ältere VGA-Flachbildschirme kosten in Second-Hand-Läden zwischen 5 und 25 US-Dollar! Sie können die Desktophalterungen auch gegen eine 9-Dollar-Flachbild-Wandhalterung austauschen, wenn Sie möchten.
-
Brennen Sie NOOBS, Raspbian, Google AIY, Debian, Ubuntu, Slackware oder eines der vielen lustigen Linux-Betriebssysteme, die Sie kostenlos erkunden und verwenden können
- Jede 8 GB+ Micro-SD-Karte ist in Ordnung
- Jedes Brenntool wie Etcher.io, Unetbootin, LiLi usw.
- Starten Sie das Betriebssystem, stellen Sie eine Verbindung zu Ihrem WiFi-Netzwerk her und speichern Sie Ihr Passwort
-
Starten Sie Raspi-config (oder das Äquivalent Ihres Betriebssystems) und stellen Sie die folgenden Optionen ein
- Zum Desktop booten
- Auto-Login als pi (gut für die IoT-Entwicklung, schlecht für die Sicherheit in der Produktion)
-
Schlaf deaktivieren (es gibt viele Möglichkeiten, dies zu tun)
- Für mich war nur das Deaktivieren des Bildschirmschoners ausreichend (evtl. wegen vorinstalliertem Bildschirmschoner in meinem Google AIY Fork von Raspbian)
- In jedem anderen Fall gibt es eine Reihe von CLI-Möglichkeiten, um dies zu tun, oder Sie können `xscreensaver` installieren und dann in der GUI deaktivieren
- https://raspberrypi.stackexchange.com/questions/75…
- https://raspberrypi.stackexchange.com/questions/75…
-
Feh installieren
- Dies ist nur ein einfaches, leichtes und beliebtes Bildbetrachter-Tool für Linux, das wir verwenden können
- sudo apt installieren feh
- Jeder andere Bildbetrachter ist auch in Ordnung
-
Schritt 3: Meinen Code klonen und aktualisieren, um eine automatisierte Echtzeit-Datenpipeline zu erstellen
Wenn Sie dies noch nicht getan haben, sollten Sie jetzt meinen Beispielcode von GitHub kopieren.
Sie haben mehrere Möglichkeiten, dies zu tun:
- Gehen Sie zu GitHub und laden Sie die Dateien als.zip herunter
- Klonen mit
- git clone [email protected]:hack-r/IoT_Data_Science_Pi_Net.git
- Werfen Sie einfach einen Blick auf meinen Code und schreiben Sie Ihre eigene Version von Grund auf
Sobald Sie den Code haben, aktualisieren Sie bitte die Pfade mit Ihren eigenen Pfaden, Passwörtern und SSH-Schlüsseln.
Schritt 4: Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
In diesem letzten und zufriedenstellendsten Schritt stellen wir einfach unser zusammengestelltes Pi-Netzwerk auf die Probe!
Für unser statistisches Äquivalent von "Hello World" lassen Sie uns ein Skript auf Ihrem Laptop oder primären Gerät ausführen, um maschinelles Lernen mit einigen Daten durchzuführen, Datenvisualisierungen zu erstellen und sie auf unseren Pi-basierten intelligenten Bildschirmen ("Clients") anzuzeigen.
DEMO
In der folgenden Demo wird ein Windows-Laptop mit R als Beispiel für ein primäres Gerät ("Server") verwendet.
-
Zuerst wurde das R-Skript auf der Kommandozeile ausgeführt, wieder die Datei example. R von GitHub
- Wie im 1. Screenshot der cmd-Eingabeaufforderung gezeigt
- Die Beispieldatei druckt die ersten paar Zeilen von 2 Datensätzen und erstellt Datenvisualisierungsdiagramme (.png-Dateien in diesem Beispiel - kann jedes gewünschte Format haben)
-
OPTIONAL Das Authentifizierungsskript läuft gegen SCP (WinSCP in dieser Demo)
- Das Ausführen dieses Skripts außerhalb von R oder Python ist mit meinem aktualisierten GitHub-Code nicht mehr erforderlich:)
- Sie können es auch direkt über die cmd-Befehlszeile ausführen
- SSH ist auch in Ordnung
- SFTP ist auch in Ordnung
- Spezifische Implementierung/App unwichtig
-
Dies ist die Datei scp_pi_pushN.txt von GitHub
Ich habe dies mit 1 pro Clientgerät eingerichtet
Viola!
Ihre Smart Displays zeigen jetzt die Datenvisualisierungen aus Ihrem Statistikprogramm an!
Empfohlen:
Arduino Auto-Rückfahrwarnsystem - Schritt für Schritt: 4 Schritte
Arduino Auto-Rückfahrwarnsystem | Schritt für Schritt: In diesem Projekt entwerfe ich eine einfache Arduino-Auto-Rückwärts-Parksensorschaltung mit Arduino UNO und dem Ultraschallsensor HC-SR04. Dieses Arduino-basierte Car-Reverse-Warnsystem kann für eine autonome Navigation, Roboter-Ranging und andere Entfernungsr
So deaktivieren Sie die Autokorrektur für nur ein Wort (iOS): 3 Schritte
So deaktivieren Sie die Autokorrektur für nur ein Wort (iOS): Manchmal korrigiert die Autokorrektur möglicherweise etwas, das Sie nicht korrigieren möchten, z. Textabkürzungen beginnen sich in Großbuchstaben zu setzen (imo korrigieren zum Beispiel zu IMO). So erzwingen Sie, dass die Korrektur eines Wortes oder einer Phrase beendet wird, ohne aut zu deaktivieren
MicroPython-Programm: Aktualisieren Sie die Daten der Coronavirus-Krankheit (COVID-19) in Echtzeit – wikiHow
MicroPython-Programm: Daten zur Coronavirus-Krankheit (COVID-19) in Echtzeit aktualisieren: In den letzten Wochen hat die Zahl der bestätigten Fälle der Coronavirus-Krankheit (COVID 19) weltweit 100.000 überschritten, und die Weltgesundheitsorganisation (WHO) hat die Der neue Ausbruch einer Coronavirus-Pneumonie soll eine globale Pandemie sein. Ich war sehr
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
Gesichtserkennung in Echtzeit: ein End-to-End-Projekt – wikiHow
Echtzeit-Gesichtserkennung: ein End-to-End-Projekt: In meinem letzten Tutorial zur Erkundung von OpenCV haben wir AUTOMATIC VISION OBJECT TRACKING gelernt. Jetzt werden wir unsere PiCam verwenden, um Gesichter in Echtzeit zu erkennen, wie Sie unten sehen können: Dieses Projekt wurde mit dieser fantastischen "Open Source Computer Vision Library&qu