Hindbær Pi

Raspberry Pi temperaturovervågning

Raspberry Pi temperaturovervågning
Raspberry Pi er en stærk Single Board Computer (SBC). Det kan bruges til at udføre mange sofistikerede opgaver. Men at gøre dette vil øge temperaturen på processoren på Raspberry Pi-enheder. Hvilket ikke er godt. Udførelsen af ​​Raspberry Pi SBC vil lide under temperatur. Dette er også kendt som termisk nedbrydning.

Hvis temperaturen på processoren på din Raspberry Pi er over 80 grader Celsius, vil du se et termometerikon øverst til højre på skærmen. Officielt anbefaler Raspberry Pi Foundation, at temperaturen på din Raspberry Pi-enhed skal være under 85 grader Celsius, for at den fungerer korrekt. Det er den maksimale grænse. Men det ville begynde at kvæle ved 82 grader Celsius.

I denne artikel vil jeg vise dig, hvordan du overvåger temperaturen på din Raspberry Pi. Jeg bruger Raspbian-operativsystemet på min Raspberry Pi 3 Model B-enhed. Men det skal fungere på enhver Raspberry Pi SBC med Raspbian-operativsystem installeret.

Måling af temperaturen på Raspberry Pi SBC:

Du kan måle kernetemperaturen på din Raspberry Pi-enhed med følgende kommando:

$ vcgencmd måling_temp

Den aktuelle kernetemperatur er 48.3 grader Celsius som du kan se i det markerede afsnit på skærmbilledet nedenfor.

Som du kan se, viser kommandoen forskellige temperaturværdier, hver gang jeg kører.

Analyse af temperaturdata:

De temperaturdata, vi får fra vcgencmd kommando er en streng. Du kan ikke udføre nogen beregning på den. Vi kan nemt bruge regulært udtryk til kun at udtrække temperaturdataene og udføre enhver form for beregning på dem.

Hvis du vil bruge temperaturdataene i et Bash shell-script, kan du udtrække temperaturdataene med egrep kommando som følger:

$ vcgencmd measure_temp | egrep -o '[0-9] * \.[0-9] * '

Som du kan se, udskrives kun temperaturdataene. Der er intet før eller efter det.

Du kan bruge det på dit shell-script (lad os sige print_temp.sh) som følger:

$ nano print_temp.sh

Her, på linje 3, indstillede jeg Midlertidig variabel til de analyserede temperaturdata, som jeg får fra vcgencmd og grep kommando.

På linje 5 brugte jeg ekko for at udskrive indholdet af Midlertidig variabel på skærmen.

Linje 1 bruges til at fortælle Linux, at scriptet skal udføres med / bin / bash som standard.

Gør nu scriptet eksekverbart med følgende kommando:

$ chmod + x print_temp.sh

Kør nu scriptet som følger:

$ ./ print_temp.sh

Som du kan se, udskrives det ønskede output på skærmen.

Skrivning af et Raspberry Pi temperaturovervågningsscript:

Nu hvor vi kan analysere de temperaturdata, vi får fra vcgencmd kommando, kan vi nemt skrive et temperaturovervågningsscript til Raspberry Pi. Temperaturovervågningsscriptet udskriver den aktuelle tidsstempel og kernetemperatur hvert sekund på skærmen på en pænt formateret måde.

Opret først et nyt script tempmon.sh med følgende kommando:

$ touch tempmon.sh

Rediger nu tempmon.sh script med følgende kommando:

$ nano tempmon.sh

Indtast nu de følgende linjer med koder, og gem filen med + x og tryk derefter på y efterfulgt af .

Her på linje 4, printf bruges til at udskrive TIMESTAMP og TEMP (degC) strengene som kolonne med fast bredde.

På linje 5 brugte jeg printf igen for at udskrive en stiplet linje bare for at gøre output mere læsbart og tiltalende.

På linje 7-13 kørte jeg en uendelig løkke for at udskrive temperaturdataene hvert sekund.

På linje 9 lagrede jeg de analyserede temperaturdata på Midlertidig variabel.

På linje 10 lagrede jeg de tidsstempledata, jeg fik fra dato kommando på tidsstempel variabel.

På linje 11 udskrev jeg dato og klokkeslæt i tidsstempelformat og temperaturdataene i kolonneformat med fast bredde.

På linje 12 brugte jeg kommandoen sleep 1 til at holde udførelsen af ​​scriptet i et sekund. Bagefter fortsætter sløjfen.

Lav nu scriptet tempmon.sh eksekverbar med følgende kommando:

$ chmod + x tempmon.sh

Endelig kør scriptet tempmon.sh med følgende kommando:

$ ./ tempmon.sh

Som du kan se, fungerer temperaturmonitorskriptet perfekt. Det udskriver temperaturdata hvert sekund.

Som du kan se, steg temperaturen lidt, da jeg øgede systembelastningen.

Hvis du vil stoppe temperaturovervågningsskriptet, skal du trykke på + c. Temperaturovervågningen kører ikke længere, som du kan se i skærmbilledet nedenfor.

Nu hvor temperaturovervågningsskriptet fungerer, lad os kopiere det til / usr / bin vejviser. På den måde kan du køre det som alle andre Linux-kommandoer.

For at kopiere scriptet tempmon.sh til / usr / bin bibliotek, kør følgende kommando:

$ sudo cp tempmon.sh / usr / bin / tempmon

Som du kan se, kan jeg køre temperaturovervågningsskriptet, ligesom jeg kører standard Linux-kommandoer.

Ændring tempmon til udskrivning af temperaturdata i Fahrenheit:

Du kan nemt konvertere temperaturdataene fra Celsius til Fahrenheit.

Den almindeligt kendte formel til beregning af temperaturer i Fahrenheit fra Celsius er,

F = (9/5) * C + 32
Eller
F = 1.8 * C + 32

Men problemet er, at bash shell ikke har nødvendige funktioner til at udføre flydende punktberegninger. Så du skal stole på nogle andre programmer som f.eks bc.

bc er ikke installeret på Raspbian som standard. Men du kan nemt installere det med følgende kommando:

$ sudo apt installere bc

bc skal installeres.

Nu skal du ændre temperaturovervågningsskriptet og foretage nødvendige beregninger for at konvertere temperaturen til Fahrenheit fra Celsius med bc.

Rediger tempmon.sh script med følgende kommando:

$ nano tempmon.sh

Foretag nu ændringerne som markeret i skærmbilledet nedenfor.

Her, på linje 4, trykte jeg TEMP (F) i stedet for TEMP (degC).

På linje 9 ændrede jeg variablen fra Midlertidig til tempC.

På linje 10 tilføjede jeg resultatet af Celsius til Fahrenheit-konverteringen til en variabel tempF.

Endelig udskrev jeg værdien af tempF variabel i stedet for Midlertidig på linje 12.

Kør nu scriptet som følger:

$ ./ tempmon

Som du kan se, er temperaturen trykt i Fahrenheit-enhed.

Så det er sådan, du overvåger temperaturen i Raspberry Pi. Tak, fordi du læste denne artikel.

Bedste kommandoliniespil til Linux
Kommandolinjen er ikke kun din største allierede, når du bruger Linux, den kan også være kilde til underholdning, fordi du kan bruge den til at spille...
Bedste apps til Gamepad Mapping til Linux
Hvis du kan lide at spille spil på Linux med en gamepad i stedet for et typisk tastatur- og musesystem, er der nogle nyttige apps til dig. Mange pc-sp...
Nyttige værktøjer til Linux-spillere
Hvis du kan lide at spille spil på Linux, er chancerne for, at du måske har brugt apps og hjælpeprogrammer som Wine, Lutris og OBS Studio for at forbe...