Raspberry Pi

Raspberry Pi temperaturmonitor

Raspberry Pi temperaturmonitor
Raspberry Pi är en kraftfull SBC (Single Board Computer). Det kan användas för att göra många sofistikerade uppgifter. Men att göra det kommer att öka temperaturen på processorn på Raspberry Pi-enheter. Vilket inte är bra. Prestanda för Raspberry Pi SBC kommer att drabbas av temperatur. Detta kallas också termisk strypning.

Om processorn på din Raspberry Pi är över 80 grader Celsius ser du en termometerikon längst upp till höger på skärmen. Officiellt rekommenderar Raspberry Pi Foundation att temperaturen på din Raspberry Pi-enhet ska vara under 85 grader Celsius för att den ska fungera ordentligt. Det är den maximala gränsen. Men det skulle börja strypa vid 82 grader Celsius.

I den här artikeln kommer jag att visa dig hur du övervakar temperaturen på din Raspberry Pi. Jag kommer att använda Raspbian-operativsystemet på min Raspberry Pi 3 Model B-enhet. Men det borde fungera på alla Raspberry Pi SBC med Raspbian-operativsystem installerat.

Mäta temperaturen på Raspberry Pi SBC:

Du kan mäta kärntemperaturen på din Raspberry Pi-enhet med följande kommando:

$ vcgencmd mått_temp

Den aktuella kärntemperaturen är 48.3 grader Celsius som du kan se i det markerade avsnittet på skärmdumpen nedan.

Som du kan se visar kommandot olika temperaturvärden varje gång jag kör.

Analysera temperaturdata:

Temperaturdata som vi får från vcgencmd kommando är en sträng. Du kan inte utföra någon beräkning på den. Vi kan enkelt använda Regular expression för att endast extrahera temperaturdata och utföra alla typer av beräkningar på den.

Om du vill använda temperaturdata i ett Bash-skalskript kan du extrahera temperaturdata med egrep kommandot enligt följande:

$ vcgencmd mått_temp | egrep -o '[0-9] * \.[0-9] * '

Som du kan se skrivs bara temperaturdata ut. Det finns inget före eller efter det.

Du kan använda den i ditt skalskript (låt oss säga print_temp.sh) som följer:

$ nano print_temp.sh

Här, på rad 3, ställer jag in temp variabel till den analyserade temperaturdata som jag får från vcgencmd och grep kommando.

På rad 5 använde jag eko för att skriva ut innehållet i temp variabel på skärmen.

Rad 1 används för att berätta för Linux att manuset ska köras med / bin / bash som standard.

Gör nu skriptet körbart med följande kommando:

$ chmod + x print_temp.sh

Kör nu skriptet enligt följande:

$ ./ print_temp.sh

Som du kan se skrivs ut önskad utskrift på skärmen.

Skriva ett Raspberry Pi temperaturövervakningsskript:

Nu när vi kan analysera temperaturdata som vi får från vcgencmd kommando kan vi enkelt skriva ett temperaturövervakningsskript för Raspberry Pi. Temperaturövervakningsskriptet skriver ut aktuell tidsstämpel och kärntemperatur varje sekund på skärmen på ett snyggt formaterat sätt.

Skapa först ett nytt skript tempmon.sh med följande kommando:

$ touch tempmon.sh

Redigera nu tempmon.sh skript med följande kommando:

$ nano tempmon.sh

Skriv nu in följande rader med koder och spara filen med + x och tryck sedan på y följd av .

Här, på rad 4, tryckf används för att skriva ut TIMESTAMP- och TEMP (degC) -strängarna som kolumn med fast bredd.

På rad 5 använde jag tryckf igen för att skriva ut en streckad linje bara för att göra produktionen mer läsbar och tilltalande.

På rad 7-13 sprang jag en oändlig slinga för att skriva ut temperaturdata varje sekund.

På rad 9 lagrade jag de analyserade temperaturdata på temp variabel.

På rad 10 lagrade jag de tidsstämpeldata som jag fick från datum kommando på tidsstämpel variabel.

På rad 11 skrev jag ut datum och tid i tidsstämpelformat och temperaturdata i kolumnformat med fast bredd.

På rad 12 använde jag kommandot sleep 1 för att hålla körningen av skriptet en sekund. Därefter fortsätter slingan.

Gör nu skriptet tempmon.sh körbar med följande kommando:

$ chmod + x tempmon.sh

Slutligen kör skriptet tempmon.sh med följande kommando:

$ ./ tempmon.sh

Som du kan se fungerar temperaturövervakningsskriptet perfekt. Det skriver ut temperaturdata varje sekund.

Som ni kan se ökade temperaturen något när jag ökade systembelastningen.

Om du vill stoppa temperaturövervakningsskriptet trycker du på + c. Temperaturövervakningen körs inte längre som du kan se på skärmdumpen nedan.

Nu när temperaturövervakningsskriptet fungerar, låt oss kopiera det till / usr / bin katalog. På så sätt kan du köra det som alla andra Linux-kommandon.

Att kopiera manuset tempmon.sh till / usr / bin katalog, kör följande kommando:

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

Som du kan se kan jag köra temperaturövervakningsskriptet precis som jag kör standard Linux-kommandon.

Modifierar tempmon för utskrift av temperaturdata i Fahrenheit:

Du kan enkelt konvertera temperaturdata från Celsius till Fahrenheit.

Den allmänt kända formeln för beräkning av temperaturer i Fahrenheit från Celsius är,

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

Men problemet är att bash shell inte har nödvändiga funktioner för att utföra flytande beräkningar. Så du måste lita på några andra program som före Kristus.

före Kristus är inte installerat på Raspbian som standard. Men du kan enkelt installera det med följande kommando:

$ sudo apt install bc

före Kristus bör installeras.

Nu måste du ändra temperaturövervakningsskriptet och göra nödvändiga beräkningar för att konvertera temperaturen till Fahrenheit från Celsius med före Kristus.

Redigera tempmon.sh skript med följande kommando:

$ nano tempmon.sh

Gör nu ändringarna som markerade i skärmdumpen nedan.

Här, på rad 4, skrev jag ut TEMP (F) istället för TEMP (degC).

På rad 9 ändrade jag variabeln från temp till tempC.

På rad 10 lade jag till resultatet av Celsius till Fahrenheit-omvandlingen till en variabel tempF.

Slutligen skrev jag ut värdet på tempF variabel istället för temp på rad 12.

Kör nu skriptet enligt följande:

$ ./ tempmon

Som du kan se är temperaturen tryckt i Fahrenheit-enhet.

Så det är så du övervakar temperaturen i Raspberry Pi. Tack för att du läste den här artikeln.

Portar med öppen källkod för kommersiella spelmotorer
Gratis, öppen källkod och plattformsmekaniska rekreationer kan användas för att spela gamla såväl som några av de ganska senaste speltitlarna. I den h...
Bästa kommandoradsspel för Linux
Kommandoraden är inte bara din största allierade när du använder Linux, det kan också vara källan till underhållning eftersom du kan använda den för a...
Bästa Gamepad Mapping Apps för Linux
Om du gillar att spela spel på Linux med en gamepad istället för ett typiskt tangentbord och musinmatningssystem, finns det några användbara appar för...