Inhaltsverzeichnis:

IoT Data Science PiNet für Echtzeit-Smart-Screen-Datenvisualisierung - Gunook
IoT Data Science PiNet für Echtzeit-Smart-Screen-Datenvisualisierung - Gunook

Video: IoT Data Science PiNet für Echtzeit-Smart-Screen-Datenvisualisierung - Gunook

Video: IoT Data Science PiNet für Echtzeit-Smart-Screen-Datenvisualisierung - Gunook
Video: Data Science With Python | Python for Data Science | Python Data Science Tutorial | Simplilearn 2024, Juli
Anonim
IoT Data Science PiNet für Echtzeit-Smart Screen Data Viz
IoT Data Science PiNet für Echtzeit-Smart Screen Data Viz
IoT Data Science PiNet für Echtzeit-Smart Screen Data Viz
IoT Data Science PiNet für Echtzeit-Smart Screen Data Viz
IoT Data Science PiNet für Echtzeit-Smart Screen Data Viz
IoT Data Science PiNet für Echtzeit-Smart Screen Data Viz

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)

Pi(s) mit Display(s) verbinden
Pi(s) mit Display(s) verbinden
Pi(s) mit Display(s) verbinden
Pi(s) mit Display(s) verbinden

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

Bereiten Sie 1 oder mehrere Raspberry Pis vor
Bereiten Sie 1 oder mehrere Raspberry Pis vor
Bereiten Sie 1 oder mehrere Raspberry Pis vor
Bereiten Sie 1 oder mehrere Raspberry Pis vor
Bereiten Sie 1 oder mehrere Raspberry Pis vor
Bereiten Sie 1 oder mehrere Raspberry Pis vor
Bereiten Sie 1 oder mehrere Raspberry Pis vor
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.

  1. Detaillierte, bewährte 3. Teil Raspberry Pi Setup-Anleitung

    1. https://projects.raspberrypi.org/en/projects/noobs…
    2. https://www.howtoforge.com/tutorial/howto-install-…
  2. Mein High-Level-Überblick

    1. Holen Sie sich ein beliebiges WiFi-fähiges Pi

      1. Pi 2 mit USB-Wireless-Netzwerkadapter
      2. 3, 3B+
      3. Null W, Null WH
    2. Verwenden Sie das entsprechende HDMI- oder Micro-HDMI-Kabel, um Ihre Displays mit dem Pi. zu verbinden

      1. Konverter-Tipps (ca. 10 US-Dollar bei Amazon, eBay usw.) können für ältere Displays wie VGA verwendet werden
      2. Ä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.
    3. Brennen Sie NOOBS, Raspbian, Google AIY, Debian, Ubuntu, Slackware oder eines der vielen lustigen Linux-Betriebssysteme, die Sie kostenlos erkunden und verwenden können

      1. Jede 8 GB+ Micro-SD-Karte ist in Ordnung
      2. Jedes Brenntool wie Etcher.io, Unetbootin, LiLi usw.
    4. Starten Sie das Betriebssystem, stellen Sie eine Verbindung zu Ihrem WiFi-Netzwerk her und speichern Sie Ihr Passwort
    5. Starten Sie Raspi-config (oder das Äquivalent Ihres Betriebssystems) und stellen Sie die folgenden Optionen ein

      1. Zum Desktop booten
      2. Auto-Login als pi (gut für die IoT-Entwicklung, schlecht für die Sicherheit in der Produktion)
      3. Schlaf deaktivieren (es gibt viele Möglichkeiten, dies zu tun)

        1. Für mich war nur das Deaktivieren des Bildschirmschoners ausreichend (evtl. wegen vorinstalliertem Bildschirmschoner in meinem Google AIY Fork von Raspbian)
        2. 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
        3. https://raspberrypi.stackexchange.com/questions/75…
        4. https://raspberrypi.stackexchange.com/questions/75…
    6. Feh installieren

      1. Dies ist nur ein einfaches, leichtes und beliebtes Bildbetrachter-Tool für Linux, das wir verwenden können
      2. sudo apt installieren feh
      3. 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

Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
Erstellen und automatisches Verteilen von Datenvisualisierungen an IoT-Smart-Displays in Echtzeit
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.

  1. Zuerst wurde das R-Skript auf der Kommandozeile ausgeführt, wieder die Datei example. R von GitHub

    1. Wie im 1. Screenshot der cmd-Eingabeaufforderung gezeigt
    2. 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)
  2. OPTIONAL Das Authentifizierungsskript läuft gegen SCP (WinSCP in dieser Demo)

    1. Das Ausführen dieses Skripts außerhalb von R oder Python ist mit meinem aktualisierten GitHub-Code nicht mehr erforderlich:)
    2. Sie können es auch direkt über die cmd-Befehlszeile ausführen
    3. SSH ist auch in Ordnung
    4. SFTP ist auch in Ordnung
    5. Spezifische Implementierung/App unwichtig
    6. 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: