Inhoudsopgave:

IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz - Ajarnpa
IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz - Ajarnpa

Video: IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz - Ajarnpa

Video: IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz - Ajarnpa
Video: Шокирующая правда о нечеловеческих НЛО: Джон Гриневальд раскрывает все 2024, Juli-
Anonim
IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz
IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz
IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz
IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz
IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz
IoT Data Science PiNet voor realtime Smart Screen-gegevens Viz

U kunt eenvoudig een IoT-netwerk van slimme displays samenstellen voor datavisualisatie om uw onderzoeksinspanningen op het gebied van datawetenschap of een ander kwantitatief gebied een boost te geven.

U kunt de "push" van uw plots naar de klanten rechtstreeks vanuit uw statistische code (Python, R, Matlab/Octave, SAS, enz.) roepen en het werkt de displays in realtime bij.

Het idee is dat goedkope oude desktopmonitoren die je misschien hebt rondslingeren, opnieuw kunnen worden gebruikt voor IoT-apparaten waar goedkope Raspberry Pi-ontwikkelingsborden je datavisualisaties draadloos in realtime ontvangen en weergeven vanaf je primaire apparaat (bijvoorbeeld laptop). Als u geen flatscreens heeft, hoeft u zich geen zorgen te maken, ze zijn gratis - bijna gratis.

De kosten en hardwarevereisten zijn minimaal.

WAT JE NODIG ZULT HEBBEN

  • 1 of meer Raspberry Pi's

    • Ik begon met 3, waarvan 2 3B+ en 1 was een nul
    • Kosten: ~ $ 10 - $ 40
  • Elke weergave

    • Ik begon met een paar pre-HDMI-flatscreens

      • Gratis - $ 25/elk op Free Cycle, Craigslist, tweedehandswinkels, je garage, eBay, enz. Om lokaal goede deals te krijgen voor oudere, zwaardere items zoals deze winkel. Mensen gooien hun desktopapparatuur weg.
      • Optioneel: Flatscreen-muurbevestigingen (~ $ 9 voor schermen van normaal desktopformaat, $ 20 - $ 30 voor grote schermen, bijv. 50")
    • Als het geen HDMI heeft (of als je een Pi Zero gebruikt), kun je gewoon een converter < $ 8 krijgen van Amazon, eBay, Micro Center, Walmart, je vriend, waar dan ook
  • HDMI- of micro-HDMI-kabels

    • Gratis als je het bij je Pi hebt gekregen of heel veel reserveonderdelen hebt zoals ik
    • $ 2 met gratis verzending van verschillende online retailers

Als je eenmaal de code van GitHub hebt, de hardware en je Raspberry Pi's elk besturingssysteem draaien dat je wilt, schat ik dat dit maximaal een paar minuten tot maximaal 1 uur duurt.

U kunt dit project eenvoudig aanpassen aan andere IoT-gebruiksscenario's. Misschien wil je ook een Arduino-versie maken! Voel je vrij om met mij samen te werken op GitHub.

Stap 1: Verbind Pi(s) met Display(s)

Verbind Pi(s) met Display(s)
Verbind Pi(s) met Display(s)
Verbind Pi(s) met Display(s)
Verbind Pi(s) met Display(s)

Dit is snel en gemakkelijk.

Pak gewoon de eerder genoemde HDMI (voor Pi) of micro-HDMI (voor Pi Zero) kabel en steek deze in de Pi. Herhaal dit voor het scherm met behulp van geschikte adapters (HDMI naar micro-HDMI, enz.).

Gedaan.

Stap 2: Bereid 1 of meer Raspberry Pi's voor

Bereid 1 of meer Raspberry Pi's voor
Bereid 1 of meer Raspberry Pi's voor
Bereid 1 of meer Raspberry Pi's voor
Bereid 1 of meer Raspberry Pi's voor
Bereid 1 of meer Raspberry Pi's voor
Bereid 1 of meer Raspberry Pi's voor
Bereid 1 of meer Raspberry Pi's voor
Bereid 1 of meer Raspberry Pi's voor

Heb je je Pi aan de gang? Je kunt vooruit springen!

Ren gewoon

sudo apt install feh

als je dezelfde afbeeldingsviewer wilt gebruiken die ik deed.

Anders is deze stap niet specifiek voor deze tut - zoals voor elk Pi-project, hebben we je alleen een Pi nodig waarop Raspbian of je favoriete besturingssysteem draait. We willen ook doorgaan en ervoor zorgen dat het is ingesteld met uw wifi-wachtwoord (of voorkeursautorisatiemechanisme) en ik zal u een paar IMHO "best practice" -instellingen geven die goed zijn voor hobbyistische IoT / Pi-projecten (niet noodzakelijk voor beveiliging, prestaties, productiegebruik of een andere context zoals die).

Mijn tweedelige strategie hier is om u te koppelen aan gedetailleerde, gevestigde instructies van derden en u vervolgens mijn overzicht op hoog niveau te geven van wat u moet doen.

  1. Gedetailleerde, gevestigde 3e deel Raspberry Pi-installatie-instructies

    1. https://projects.raspberrypi.org/en/projects/noobs…
    2. https://www.howtoforge.com/tutorial/howto-install-…
  2. Mijn overzicht op hoog niveau

    1. Krijg elke WiFi-compatibele Pi

      1. Pi 2 met draadloze USB-netwerkadapter
      2. 3, 3B+
      3. Nul W, Nul WH
    2. Gebruik de juiste HDMI- of micro-HDMI-kabel om uw beeldschermen op de Pi. aan te sluiten

      1. convertertips (ongeveer $ 10 op Amazon, eBay, enz.) Kunnen worden gebruikt voor oudere schermen zoals VGA
      2. Oudere VGA-flatscreens kosten ongeveer $ 5 - $ 25 in tweedehandswinkels! Je kunt desgewenst ook de desktopbevestigingen vervangen voor een flatscreen-muurbevestiging van $ 9.
    3. Brand NOOBS, Raspbian, Google AIY, Debian, Ubuntu, Slackware of een van de vele leuke Linux-besturingssystemen die u gratis kunt verkennen en gebruiken

      1. Elke 8GB+ micro SD-kaart is prima
      2. Elke brandtool zoals Etcher.io, Unetbootin, LiLi, enz.
    4. Start het besturingssysteem, maak verbinding met uw wifi-netwerk en sla uw wachtwoord op
    5. Start Raspi-config (of het equivalent van uw besturingssysteem) en stel de volgende opties in:

      1. Opstarten naar bureaublad
      2. Automatisch inloggen als pi (goed voor IoT-ontwikkeling, slecht voor beveiliging in productie)
      3. Slaap uitschakelen (er zijn veel manieren om dit te doen)

        1. Voor mij was het uitschakelen van de screensaver voldoende (mogelijk vanwege de vooraf geïnstalleerde screensaver in mijn Google AIY-vork van Raspbian)
        2. In elk ander geval zijn er een aantal CLI-manieren om dit te doen of u kunt `xscreensaver` installeren en vervolgens uitschakelen in de GUI
        3. https://raspberrypi.stackexchange.com/questions/75…
        4. https://raspberrypi.stackexchange.com/questions/75…
    6. Installeer feh

      1. dit is gewoon een eenvoudige, lichtgewicht, populaire tool voor het bekijken van afbeeldingen voor Linux die we kunnen gebruiken
      2. sudo apt install feh
      3. Elke andere afbeeldingsviewer is ook goed

Stap 3: Kloon + werk mijn code bij om een geautomatiseerde realtime gegevenspijplijn te maken

Als je dit nog niet hebt gedaan, moet je op dit moment mijn voorbeeldcode van GitHub kopiëren.

Je hebt verschillende keuzes om dit te doen:

  • Ga naar GitHub en download de bestanden als een.zip
  • Kloon met
  • git kloon [email protected]:hack-r/IoT_Data_Science_Pi_Net.git
  • Kijk maar eens naar mijn code en schrijf je eigen versie helemaal opnieuw

Zodra u de code heeft, werkt u de paden bij met uw eigen paden, wachtwoorden en SSH-sleutels.

Stap 4: Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime

Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime
Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime
Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime
Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime
Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime
Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime
Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime
Creëer en distribueer automatisch gegevens naar IoT Smart Displays in realtime

In deze laatste en meest bevredigende stap hebben we ons samengestelde Pi-netwerk eenvoudig op de proef gesteld!

Voor ons statistische equivalent van "Hallo wereld", laten we een script uitvoeren op uw laptop of primaire apparaat om Machine Learning op sommige gegevens uit te voeren, gegevensvisualisaties te maken en deze weer te geven op onze Pi-gebaseerde slimme schermen ("clients").

DEMO

De volgende demo gebruikt een Windows-laptop met R als voorbeeld van een primair apparaat ("server").

  1. Eerst werd het R-script op de opdrachtregel uitgevoerd, opnieuw het bestand example. R van GitHub

    1. Zoals getoond in de 1e screenshot van de cmd-prompt
    2. Het voorbeeldbestand drukt de eerste paar rijen van 2 datasets af en maakt data-viz-plots (.png-bestanden in dit voorbeeld - kan elke gewenste indeling hebben)
  2. OPTIONEEL Het authenticatiescript draait tegen SCP (WinSCP in deze demo)

    1. Het uitvoeren van dit script buiten R of Python is niet langer nodig, met mijn bijgewerkte GitHub-code:)
    2. Je kunt het ook rechtstreeks op de cmd-opdrachtregel uitvoeren
    3. SSH is ook prima
    4. SFTP is ook prima
    5. Specifieke implementatie/app onbelangrijk
    6. Dit is het bestand scp_pi_pushN.txt van GitHub

      Ik heb dit ingesteld met 1 per clientapparaat

Altviool!

Uw slimme displays tonen nu de datavisualisaties van uw statistische programma!

Aanbevolen: