Innehållsförteckning:
- Steg 1: Anslut Pi (er) till bildskärmarna
- Steg 2: Förbered 1 eller fler Raspberry Pi
- Steg 3: Klon + Uppdatera min kod för att skapa en automatiserad datapipeline i realtid
- Steg 4: Skapa och distribuera data automatiskt till IoT Smart Displays i realtid
Video: IoT Data Science PiNet för realtids smartskärmsdata, nämligen: 4 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-31 10:25
Du kan enkelt sätta ihop ett IoT -nätverk av smarta skärmar för datavisualisering för att överbelasta dina forskningsinsatser inom Data Science eller något kvantitativt område.
Du kan ringa "push" av dina tomter till klienterna direkt från din statistiska kod (Python, R, Matlab/Octave, SAS, etc), och det uppdaterar skärmarna i realtid.
Tanken är att billiga gamla skrivbordsskärmar du kan ha liggande kan ändras till IoT-enheter där billiga Raspberry Pi-utvecklingsbrädor tar emot och visar dina datavisualiseringar trådlöst i realtid från din primära enhet (t.ex. bärbar dator). Om du inte har några plattskärmar oroa dig inte, de är gratis - nästan gratis.
Kostnads- och hårdvarukraven är minimala.
VAD DU KOMMER ATT BEHÖVA
-
1 eller fler Raspberry Pi
- Jag började med 3, varav 2 var 3B+ och 1 var en nolla
- Kostnad: $ 10 - $ 40
-
Vilken display som helst
-
Jag började med några pre-HDMI platta skärmar
- Gratis - $ 25/st på Free Cycle, Craigslist, andra handbutiker, ditt garage, eBay, etc. För att få bra erbjudanden på äldre tyngre artiklar som denna butik lokalt. Folk slänger ut sitt skrivbord.
- Valfritt: Plattskärmsväggfästen (~ $ 9 för vanliga skärmar på skrivbordet, $ 20 - $ 30 för stora skärmar, t.ex. 50 ")
- Om den inte har någon HDMI (eller om du använder en Pi Zero) kan du bara få en omvandlare <$ 8 från Amazon, eBay, Micro Center, Walmart, din vän, var som helst
-
-
HDMI- eller mikro-HDMI-kablar
- Gratis om du fick den med din Pi eller har massor av reservdelar som jag
- $ 2 med gratis frakt från olika nätbutiker
När du väl har koden från GitHub, hårdvaran och dina Raspberry Pi körs vilket OS du vill, uppskattar jag att detta bör ta några minuter till högst 1 timme.
Du kan enkelt anpassa detta projekt till andra IoT -användningsfall. Du kanske också vill göra en Arduino -version! Tveka inte att samarbeta med mig på GitHub.
Steg 1: Anslut Pi (er) till bildskärmarna
Detta är snabbt och enkelt.
Ta bara den ovan nämnda HDMI (för Pi) eller mikro-HDMI (för Pi Zero) kabeln och sätt in den i Pi. Upprepa för skärmen med lämpliga adaptrar (HDMI till mikro-HDMI, etc.).
Gjort.
Steg 2: Förbered 1 eller fler Raspberry Pi
Har din Pi igång? Du kan hoppa framåt!
Bara spring
sudo apt installera feh
om du vill använda samma bildvisare som jag gjorde.
Annars är detta steg inte specifikt för denna tut - som för alla Pi -projekt behöver vi bara ha en Pi som kör Raspbian eller ditt favorit OS. Vi vill också fortsätta och se till att det är konfigurerat med ditt WiFi -lösenord (eller föredragen auktoriseringsmekanism) och jag ger dig några IMHO "bästa praxis" -inställningar som är bra för hobbyistiska IoT/Pi -projekt (inte nödvändigtvis för säkerhet, prestanda, produktionsanvändning eller andra liknande sammanhang).
Min strategi med två delar här är att länka dig till detaljerade, väletablerade instruktioner från tredje part och sedan ge dig min överblick på hög nivå över vad du ska göra.
-
Detaljerad, väletablerad 3: e del Raspberry Pi-installationsinstruktioner
- https://projects.raspberrypi.org/en/projects/noobs…
- https://www.howtoforge.com/tutorial/howto-install-…
-
Min överblick på hög nivå
-
Få vilken WiFi -aktiverad Pi som helst
- Pi 2 med trådlöst USB -nätverkskort
- 3, 3B+
- Noll W, noll WH
-
Använd lämplig HDMI- eller mikro-HDMI-kabel för att ansluta dina skärmar till Pi
- konvertortips (cirka $ 10 på Amazon, eBay, etc) kan användas för äldre skärmar som VGA
- Äldre VGA -plattskärmar kostar cirka $ 5 - $ 25 i andrahandsbutiker! Du kan också byta ut skrivbordsfästena för ett $ 9 plattskärmsväggfäste, om du vill.
-
Bränn NOOBS, Raspbian, Google AIY, Debian, Ubuntu, Slackware eller någon av de många roliga Linux -operativsystem som du kan utforska och använda gratis
- Alla 8 GB+ micro SD -kort är bra
- Alla brinnande verktyg som Etcher.io, Unetbootin, LiLi, etc.
- Starta operativsystemet, anslut till ditt WiFi -nätverk och spara ditt lösenord
-
Starta Raspi-config (eller ditt operativsystems motsvarighet) och ställ in följande alternativ
- Starta till skrivbordet
- Automatisk inloggning som pi (bra för IoT-utveckling, dåligt för säkerheten i produktionen)
-
Inaktivera sömn (det finns många sätt att göra detta)
- För mig var det bara att inaktivera skärmsläckaren (möjligen på grund av förinstallerad skärmsläckare i min Google AIY-gaffel av Raspbian)
- I alla andra fall finns det ett antal CLI -sätt att göra detta eller så kan du installera 'xscreensaver' och sedan inaktivera det i GUI
- https://raspberrypi.stackexchange.com/questions/75…
- https://raspberrypi.stackexchange.com/questions/75…
-
Installera feh
- detta är bara ett enkelt, lätt, populärt bildvisningsverktyg för Linux som vi kan använda
- sudo apt installera feh
- Alla andra bildvisare är också bra
-
Steg 3: Klon + Uppdatera min kod för att skapa en automatiserad datapipeline i realtid
Om du inte redan har gjort det bör du kopiera min exempelkod från GitHub just nu.
Du har flera val om hur du gör det:
- Gå till GitHub och ladda ner filerna som en.zip
- Klon med
- git klon [email protected]: hack-r/IoT_Data_Science_Pi_Net.git
- Ta bara en titt på min kod och skriv din egen version från grunden
När du har koden, uppdatera sökvägarna med dina egna sökvägar, lösenord och SSH -nycklar.
Steg 4: Skapa och distribuera data automatiskt till IoT Smart Displays i realtid
I detta sista och mest tillfredsställande steg satte vi helt enkelt vårt monterade Pi -nätverk på prov!
För vår statistiska motsvarighet till "Hello World" kan vi köra ett skript på din bärbara dator eller primära enhet för att utföra maskininlärning på vissa data, skapa datavisualiseringar och visa dem för våra Pi-baserade smarta skärmar ("klienter").
DEMO
Följande demo använder en Windows -bärbar dator med R som exempel på en primär enhet ("server").
-
Först kördes R -skriptet på kommandoraden igen filexemplet. R från GitHub
- Som visas i den första skärmdumpen av cmd -prompten
- Exempelfilen skriver ut de första raderna med 2 datamängder och skapar data, dvs tomter (-p.webp" />
-
VALFRITT Autentiseringsskriptet körs mot SCP (WinSCP i denna demo)
- Att köra detta skript utanför R eller Python är inte längre nödvändigt, med min uppdaterade GitHub -kod:)
- Du kan också köra den på kommandoraden cmd direkt
- SSH är också bra
- SFTP är också bra
- Specifik implementering/app är oviktigt
-
Detta är filen scp_pi_pushN.txt från GitHub
Jag konfigurerade detta med 1 per klientenhet
Altfiol!
Dina smarta skärmar visar nu datavisualiseringarna från ditt statistiska program!
Rekommenderad:
Realtids Rubiks kub med ögonbindellösare med Raspberry Pi och OpenCV: 4 steg
Realtids Rubiks kub förblindade lösare med Raspberry Pi och OpenCV: Detta är den andra versionen av Rubiks kubverktyg som är gjord för att lösa i ögonbindel. Den första versionen utvecklades av javascript, du kan se projektet RubiksCubeBlindfolded1 Till skillnad från den föregående använder denna version OpenCV -bibliotek för att upptäcka färger och
En realtids brunnvattennivåmätare: 6 steg (med bilder)
En mätare för brunnvattennivå i realtid: Dessa instruktioner beskriver hur man bygger en lågnivåmätare i realtid för användning i grävda brunnar. Vattennivåmätaren är utformad för att hänga inuti en grävd brunn, mäta vattennivån en gång om dagen och skicka data via WiFi eller mobilanslutning
En realtids brunnvattentemperatur, konduktivitet och vattennivåmätare: 6 steg (med bilder)
En brunnvattentemperatur, konduktivitet och vattennivåmätare i realtid: Dessa instruktioner beskriver hur man bygger en billig, realtidsvattenmätare för övervakning av temperatur, elektrisk konduktivitet (EC) och vattennivåer i grävda brunnar. Mätaren är utformad för att hänga inuti en grävd brunn, mäta vattentemperaturen, EC och
Väggfäste för iPad som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: 4 steg (med bilder)
Väggfäste för iPad Som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: På senare tid har jag ägnat ganska mycket tid åt att automatisera saker i och runt mitt hus. Jag använder Domoticz som min hemautomationsapplikation, se www.domoticz.com för mer information. I min sökning efter en instrumentpanelapplikation som visar all Domoticz -information tillsammans
Övertyga dig själv om att bara använda en 12V-till-AC-omriktare för LED-ljussträngar istället för att koppla om dem för 12V: 3 steg
Övertyga dig själv om att bara använda en 12V-till-AC-linjeomvandlare för LED-ljussträngar istället för att koppla om dem för 12V: Min plan var enkel. Jag ville klippa upp en väggdriven LED-ljussträng i bitar och sedan dra om den för att gå av 12 volt. Alternativet var att använda en kraftomvandlare, men vi vet alla att de är fruktansvärt ineffektiva, eller hur? Höger? Eller är de det?