Innholdsfortegnelse:
Video: Pi Health Dashboard: 3 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
Raspberry Pi brukes til å drive et stort antall prosjekter. Pi ble først adoptert av lærere og amatører, men nå har produksjon og virksomheter fanget opp den fantastiske kraften til Pi. Til tross for at den er liten, brukervennlig og billig, inneholder Pi et imponerende antall komplekse undersystemer som må fungere for å holde prosjektet i gang. Dette gjør det mulig å overvåke helsen til din Pi viktig i mange applikasjoner fra løpende vedlikehold av et langsiktig prosjekt til profilering av ytelsen til en ny prototype.
Vi skal bygge vårt eget nettleserbaserte dashbord for å overvåke helsen og ytelsen til en nettilkoblet Raspberry Pi. For å utføre denne oppgaven, vil vi kjøre et enkelt Python -skript som vil samle systeminformasjon fra Pi og sende den til en skyplattform som spesialiserer seg på dashbord, analyser og visualiseringer.
I denne trinnvise opplæringen vil du:
- Lær hvordan du samler systeminformasjon fra Pi via et enkelt Python -skript
- lær hvordan du bruker Initial State til å bygge ditt eget systemhelse/ytelsesdashboard for din Pi
Trinn 1: Opprinnelig tilstand
Vi ønsker å streame alle Pi -systembruksdataene våre til en skytjeneste og få den til å gjøre dataene våre til et dashbord. Dataene våre trenger en destinasjon, så vi bruker Initial State som den destinasjonen.
Registrer deg for den første statskontoen
Gå til https://iot.app.initialstate.com og opprett en ny konto. Du får en 14 dagers gratis prøveperiode, og alle med en edu -e -postadresse kan registrere seg for en gratis studentplan.
Installer ISStreamer
Installer Initial State Python -modulen på Raspberry Pi. Kjør følgende kommando i ledeteksten:
$ cd/home/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Gjør litt Automagic
Etter trinn 2 vil du se noe som ligner på følgende utgang til skjermen:
pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Passord: Start ISStreamer Python Enkel installasjon! Dette kan ta et par minutter å installere, ta en kaffe:) Men ikke glem å komme tilbake, jeg har spørsmål senere! Funnet easy_install: setuptools 1.1.6 Funnet pip: pip 1.5.6 fra /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip hovedversjon: 1 pip mindre versjon: 5 ISStreamer funnet, oppdaterer … Kravet er allerede oppdatert: ISStreamer i /Library/Python/2.7/site-packages Rydder opp … Vil du automatisk få et eksempelskript? [y/N] Hvor vil du lagre eksemplet? [standard:./is_example.py] Velg hvilken Initial State -app du bruker: 1. app.initialstate.com 2. [NEW!] iot.app.initialstate.com Angi valg 1 eller 2: Skriv inn iot.app.initialstate.com brukernavn: Skriv inn iot.app.initialstate.com passord:
Når du blir spurt om du vil få et eksempelskript automatisk å sette "y" for ja, og trykk enter for å lagre skriptet på standardplasseringen. For spørsmålet om hvilken app du bruker, velg 2 (med mindre du registrerte deg før november 2018) og skriv inn brukernavn og passord.
Kjør eksempelskriptet
Kjør testskriptet for å sikre at vi kan opprette en datastrøm til din opprinnelige statskonto. Skriv følgende kommando:
$ python er_eksempel.py
Eksempeldata
Gå tilbake til din opprinnelige statskonto i nettleseren din. En ny databøtte kalt "Python Stream -eksempel" burde ha dukket opp til venstre i logghyllen din (du må kanskje oppdatere siden). Klikk på denne bøtta for å se dataene dine.
Trinn 2: Psutil
Vi vil bruke psutil for å få enkel tilgang til de fleste systeminformasjonene vi vil bruke til å bygge dashbordet vårt. For å installere psutil Python -biblioteket, gå til en terminal på Pi og skriv:
$ sudo pip installer psutil
Etter at installasjonen er fullført, trenger vi bare å kjøre et Python -skript for å begynne datainnsamlingen. La oss sette dette skriptet i sin egen katalog som følger:
$ cd/home/pi/
$ mkdir pihealth $ cd pihealth
Når du er i den nye katalogen, lager du et skript ved å gjøre følgende:
$ nano pihealth.py
Dette åpner et tekstredigeringsprogram. Kopier og lim inn koden fra dette Github -depotet i tekstredigereren.
På linje 8 ser du delen Brukerinnstillinger:
# --------- Brukerinstillinger ---------
# Innledende tilstandsinnstillinger BUCKET_NAME = ": datamaskin: Pi3-ytelse" BUCKET_KEY = "pi0708" ACCESS_KEY = "PUT YOUR INITIAL STATE ACCESS_KEY HERE" # Still tiden mellom sjekkene MINUTES_BETWEEN_READS = 1 METRIC_UNITS = Falske # --------- ------------------------
Du må plassere tilgangsnøkkelen til den opprinnelige tilstanden i variabeltildelingen ACCESS_KEY. For å finne dette, gå til startsiden til den opprinnelige staten, klikk på brukernavnet ditt øverst til høyre, gå til mine innstillinger og finn en tilgangsnøkkel for streaming der. Hvis du ikke gjør dette, blir ikke dataene dine streamet til din første statskonto, noe som gjør deg veldig trist og frustrert.
MINUTES_BETWEEN_READS -variabelen er viktig å angi basert på applikasjonen din. Hvis du skal kjøre dette skriptet i løpet av dager/uker/måneder, vil du gjøre dette til et større tall som hvert 2-5 minutt. Hvis du kjører dette skriptet for å overvåke ytelsen til et kortsiktig program, vil du kanskje ha en oppdatering hvert par sekunder.
Når du har oppdatert teksten, lagrer og avslutter du teksteditoren. Vi er klare til å begynne å samle systemdata. For å kjøre python -filen, skriv inn følgende kommando:
$ python pihealth.py
Tips: Hvis du vil kjøre dette skriptet i bakgrunnen og være sikker på at det ikke går ut hvis SSH -tilkoblingen din er brutt eller terminalen er stengt, kan du bruke følgende kommando:
$ nohup python pihealth.py &
python.h -feil: Hvis du får en feil når det refereres til python.h når du prøver å bruke psutil i et skript, kan installering av python -utviklingsbibliotekene løse feilen:
$ sudo apt-get install gcc python-dev
$ sudo pip installer psutil
Trinn 3: Tilpass dashbordet
Gå til din opprinnelige statskonto, og klikk på den nye databakken som heter Pi3 Performance. Dette er dashbordet ditt. La oss tilpasse og organisere dataene på dette dashbordet til noe nyttig.
Det er mange fliser og datastrømmer i dette dashbordet. La oss gjøre flisene mindre og få all informasjonen på en enkelt skjerm. Klikk på Rediger fliser -knappen øverst i venstre hjørne og fjern markeringen av "Alltid tilpassede fliser". Dette setter dashbordoppsettet vårt i manuell modus. Deretter endrer du størrelsen på hver flis til 1/4 sin opprinnelige størrelse ved å klikke og dra i hjørnet på hver flis mens du er i redigeringsmodus. Du kan dra hver flis til hvilken posisjon du vil på skjermen.
En av de mange fine tingene du kan gjøre med dette dashbordet, er å lage flere fliser og datavisninger per datastrøm. For eksempel kan du opprette fliser for å se linjediagrammet for CPU -temperatur, samt en målerdiagram og den siste verdien. For å legge til en ny flis, klikk på Rediger fliser og deretter +Legg til flis. Den nye konfigurasjonsboksen for fliser vil dukke opp. Velg datastrømmen som skal kjøre denne flisen i SignalKey -boksen, velg deretter flistypen, og opprett en tittel for denne flisen.
I dashbordet mitt strømmet jeg tre Pi -er til et enkelt dashbord for å sammenligne CPU -bruk og temperaturer.
Målergrafen er ekstremt nyttig for datastrømmer som Diskbruk (%) og CPU -bruk (%). Når du velger en målergrafvisning, kan du angi min- og maks -verdien for måleren i flisekonfigurasjonen. Det er viktig å sette min/maks til 0/100 for måler for diskbruk (%) og CPU -bruk (%) slik at flisene gir mening.
Du kan legge til et bakgrunnsbilde på oversikten for å gi deg data mer kontekst.
Her er de offentlige aksjene til to dashbord jeg opprettet:
- https://go.init.st/6g3spq4
- https://go.init.st/ynkuqxv
Anbefalt:
Tasmota Admin - IIoT Dashboard: 6 trinn
Tasmota Admin - IIoT Dashboard: TasmoAdmin er et administrativt nettsted for enheter som blinker med Tasmota. Du finner den her: TasmoAdmin GitHub. Den støtter kjøring på Windows-, Linux- og Docker -containere. Funksjoner Loggbeskyttet Multi Update Process Velg enheter for å oppdatere Autom
COVID-19 WHO Dashboard: 8 trinn (med bilder)
COVID-19 WHO Dashboard: Denne instruksen viser hvordan du bruker ESP8266/ESP32 og LCD for å bygge et COVID-19 situasjon WHO dashbord
COVID19 Dashboard på verdenskart (ved hjelp av Python): 16 trinn
COVID19 Dashboard på verdenskart (ved hjelp av Python): Jeg vet at nesten alle av oss vet mest informasjon om COVID19.Og denne instruksen handler om å lage et boblekart, for å plotte sanntidsdata (av tilfeller) på verdenskartet.For mer bekvemmelighet , jeg har lagt til programmet i Github -depotet: https: //github.co
COVID-19 Dashboard (enkelt og enkelt): 4 trinn
COVID-19 Dashboard (enkelt og enkelt): Overalt er det et stort utbrudd av det nye COVID-19-viruset. Det ble nødvendig å holde øye med det nåværende scenariet med COVID-19 i landet. Så, hjemme, var dette prosjektet jeg tenkte på: " An Information Dashboard " - En dag
Think Geek Hacks Contest Entry - ReUse a Health Potion Bottle: 9 trinn
Think Geek Hacks Contest Entry - ReUse a Health Potion Bottle: Dette er mitt bidrag i Think Geek Hacks Contest. Jeg bestemte meg for å prøve å bruke en drikkeflaske fra Health Potion Energy igjen. Den kan brukes som en rekvisitt i et rollespill eller som en pen dekorasjon. Jeg laget et grunnleggende lys for å sette i flasken for å tenne det