Indholdsfortegnelse:

IoT Data Science PiNet til data i realtid Smart Screen, nemlig: 4 trin
IoT Data Science PiNet til data i realtid Smart Screen, nemlig: 4 trin

Video: IoT Data Science PiNet til data i realtid Smart Screen, nemlig: 4 trin

Video: IoT Data Science PiNet til data i realtid Smart Screen, nemlig: 4 trin
Video: Hubble - 15 years of discovery 2024, Juli
Anonim
IoT Data Science PiNet til Smart Screen Data i realtid Viz
IoT Data Science PiNet til Smart Screen Data i realtid Viz
IoT Data Science PiNet til Smart Screen Data i realtid Viz
IoT Data Science PiNet til Smart Screen Data i realtid Viz
IoT Data Science PiNet til Smart Screen Data i realtid Viz
IoT Data Science PiNet til Smart Screen Data i realtid Viz

Du kan nemt sammensætte et IoT -netværk af smarte skærme til datavisualisering for at overbelaste din forskningsindsats inden for Data Science eller et hvilket som helst kvantitativt felt.

Du kan kalde "push" af dine plots til klienterne lige inde fra din statistiske kode (Python, R, Matlab/Octave, SAS osv.), Og det opdaterer skærmene i realtid.

Ideen er, at billige gamle skrivebordsskærme, du måske har liggende, kan omformuleres til IoT-enheder, hvor billige Raspberry Pi-udviklingsbrætter modtager og viser dine datavisualiseringer trådløst i realtid fra din primære enhed (f.eks. Bærbar computer). Hvis du ikke har nogen fladskærme, skal du ikke bekymre dig, de er gratis - næsten gratis.

Omkostninger og hardware krav er minimale.

DET SKAL DU BRUGE

  • 1 eller flere Raspberry Pi'er

    • Jeg startede med 3, hvoraf 2 var 3B+ og 1 var en Zero
    • Omkostninger: ~ $ 10 - $ 40
  • Ethvert display

    • Jeg startede med et par pre-HDMI fladskærmsskærme

      • Gratis - $ 25/hver på Free Cycle, Craigslist, 2. hånds butikker, din garage, eBay osv. For at få gode tilbud på ældre tungere varer som denne butik lokalt. Folk smider deres skrivebordsudstyr ud.
      • Valgfrit: Fladskærmsvægbeslag (~ $ 9 for normale computerskærme, $ 20 - $ 30 for store skærme, f.eks. 50 ")
    • Hvis den ikke har nogen HDMI (eller hvis du bruger en Pi Zero), kan du bare få en konverter <$ 8 fra Amazon, eBay, Micro Center, Walmart, din ven, hvor som helst
  • HDMI- eller mikro-HDMI-kabler

    • Gratis, hvis du fik den med din Pi eller har masser af reservedele som mig
    • $ 2 med gratis forsendelse fra forskellige onlineforhandlere

Når du har koden fra GitHub, hardwaren og dine Raspberry Pi'er kører uanset hvilket operativsystem du vil have, vurderer jeg, at dette højst bør tage et par minutter til 1 time.

Du kan let tilpasse dette projekt til andre IoT -brugssager. Du vil måske også lave en Arduino -version! Du er velkommen til at samarbejde med mig på GitHub.

Trin 1: Tilslut Pi (er) til skærm (er)

Tilslut Pi (er) til skærm (er)
Tilslut Pi (er) til skærm (er)
Tilslut Pi (er) til skærm (er)
Tilslut Pi (er) til skærm (er)

Dette er hurtigt og let.

Bare tag det førnævnte HDMI (til Pi) eller mikro-HDMI (til Pi Zero) kabel og sæt det i Pi. Gentag for skærmen ved hjælp af passende adaptere (HDMI til mikro-HDMI osv.).

Færdig.

Trin 2: Forbered 1 eller flere Raspberry Pi'er

Forbered 1 eller flere Raspberry Pi'er
Forbered 1 eller flere Raspberry Pi'er
Forbered 1 eller flere Raspberry Pi'er
Forbered 1 eller flere Raspberry Pi'er
Forbered 1 eller flere Raspberry Pi'er
Forbered 1 eller flere Raspberry Pi'er
Forbered 1 eller flere Raspberry Pi'er
Forbered 1 eller flere Raspberry Pi'er

Har du din Pi i gang? Du kan springe videre!

Bare løb

sudo apt installere feh

hvis du vil bruge den samme billedfremviser, som jeg gjorde.

Ellers er dette trin ikke specifikt for denne tut - som for ethvert Pi -projekt har vi bare brug for dig til at have en Pi, der kører Raspbian eller dit yndlings OS. Vi vil også gå videre og sørge for, at det er konfigureret med din WiFi -adgangskode (eller foretrukne autorisationsmekanisme), og jeg giver dig et par IMHO "bedste praksis" -indstillinger, der er gode til hobbyfolk IoT/Pi -projekter (ikke nødvendigvis af hensyn til sikkerhed, ydeevne, produktionsbrug eller andre lignende kontekster).

Min 2-delt strategi her er at linke dig til detaljerede, veletablerede instruktioner fra tredjeparter og derefter give dig mit overblik på højt niveau over, hvad du skal gøre.

  1. Detaljeret, veletableret 3. del Raspberry Pi opsætningsinstruktioner

    1. https://projects.raspberrypi.org/en/projects/noobs…
    2. https://www.howtoforge.com/tutorial/howto-install-…
  2. Mit overblik på højt niveau

    1. Få en hvilken som helst Wi -Fi -aktiveret Pi

      1. Pi 2 med trådløs USB -netværksadapter
      2. 3, 3B+
      3. Nul W, nul WH
    2. Brug det passende HDMI- eller mikro-HDMI-kabel til at slutte dine skærme til Pi

      1. konvertertip (ca. $ 10 på Amazon, eBay osv.) kan bruges til ældre skærme som VGA
      2. Ældre VGA fladskærme koster omkring $ 5 - $ 25 i 2. hånds butikker! Du kan også ændre desktopbeslagene til en vægmontering på $ 9 fladskærm, hvis du vil.
    3. Brænd NOOBS, Raspbian, Google AIY, Debian, Ubuntu, Slackware eller nogen af de mange sjove Linux -operativsystemer, du kan udforske og bruge gratis

      1. Ethvert 8 GB+ micro SD -kort er fint
      2. Ethvert brændende værktøj som Etcher.io, Unetbootin, LiLi osv
    4. Start OS, opret forbindelse til dit WiFi -netværk, gem din adgangskode
    5. Start Raspi-config (eller dit operativsystems ækvivalent), og angiv følgende muligheder

      1. Start til skrivebordet
      2. Automatisk login som pi (godt for IoT-udvikling, dårligt for sikkerhed i produktionen)
      3. Deaktiver søvn (der er mange måder at gøre dette på)

        1. For mig var det bare tilstrækkeligt at deaktivere pauseskærmen (muligvis på grund af forudinstalleret pauseskærm i min Google AIY-gaffel af Raspbian)
        2. I alle andre tilfælde er der en række CLI -måder at gøre dette på, eller du kan installere 'xscreensaver' og derefter deaktivere den i GUI
        3. https://raspberrypi.stackexchange.com/questions/75…
        4. https://raspberrypi.stackexchange.com/questions/75…
    6. Installer feh

      1. dette er bare et enkelt, let, populært billedfremvisningsværktøj til Linux, vi kan bruge
      2. sudo apt installere feh
      3. Enhver anden billedfremviser er også fin

Trin 3: Klon + opdater min kode for at oprette en automatiseret real-time datapipeline

Hvis du ikke allerede har gjort det, skal du kopiere min eksempelkode fra GitHub på dette tidspunkt.

Du har flere valgmuligheder for, hvordan du gør det:

  • Gå over til GitHub, og download filerne som en.zip
  • Klon med
  • git klon [email protected]: hack-r/IoT_Data_Science_Pi_Net.git
  • Bare tag et kig på min kode, og skriv din egen version fra bunden

Når du har koden, skal du opdatere stierne med dine egne stier, adgangskoder og SSH -nøgler.

Trin 4: Opret og distribuer data automatisk til IoT Smart Displays i realtid

Opret og distribuer data automatisk til IoT Smart Displays i realtid
Opret og distribuer data automatisk til IoT Smart Displays i realtid
Opret og distribuer data automatisk til IoT Smart Displays i realtid
Opret og distribuer data automatisk til IoT Smart Displays i realtid
Opret og distribuer data automatisk til IoT Smart Displays i realtid
Opret og distribuer data automatisk til IoT Smart Displays i realtid
Opret og distribuer data automatisk til IoT Smart Displays i realtid
Opret og distribuer data automatisk til IoT Smart Displays i realtid

I dette sidste og mest tilfredsstillende trin satte vi simpelthen vores samlede Pi -netværk på prøve!

For vores statistiske ækvivalent af "Hello World" lader vi køre et script på din bærbare eller primære enhed til at udføre maskinlæring på nogle data, oprette datavisualiseringer og vise dem til vores Pi-baserede smartskærme ("klienter").

DEMO

Den følgende demo bruger en Windows -bærbar computer, der kører R som et eksempel på en primær enhed ("server").

  1. Først blev R -scriptet udført på kommandolinjen igen fileksemplet. R fra GitHub

    1. Som vist på det første skærmbillede af cmd -prompten
    2. Eksempelfilen udskriver de første par rækker med 2 datasæt og opretter data, dvs. plots (-p.webp" />
  2. VALGFRIT Autentificeringsscriptet kører mod SCP (WinSCP i denne demo)

    1. At køre dette script uden for R eller Python er ikke længere nødvendigt med min opdaterede GitHub -kode:)
    2. Du kan også køre det direkte på kommandolinjen cmd
    3. SSH er også fint
    4. SFTP er også fint
    5. Specifik implementering/app er uden betydning
    6. Dette er filen scp_pi_pushN.txt fra GitHub

      Jeg konfigurerede dette med 1 pr. Klientenhed

Viola!

Dine smarte skærme viser nu datavisualiseringerne fra dit statistiske program!

Anbefalede: