Raspberry Pi

Monitor temperature Raspberry Pi

Monitor temperature Raspberry Pi
Raspberry Pi je moćno računalo s jednom pločom (SBC). Može se koristiti za obavljanje mnogih sofisticiranih zadataka. No, time ćete povećati temperaturu procesora uređaja Raspberry Pi. Što nije dobro. Performanse Raspberry Pi SBC-a patit će zbog temperature. To je također poznato kao termičko prigušivanje.

Ako je temperatura procesora vašeg Raspberry Pi iznad 80 Celzijevih stupnjeva, u gornjem desnom kutu zaslona vidjet ćete ikonu termometra. Službeno, Raspberry Pi Foundation preporučuje da temperatura vašeg Raspberry Pi uređaja bude ispod 85 Celzijevih stupnjeva kako bi mogao ispravno raditi. To je maksimalno ograničenje. No, počelo bi se smanjivati ​​na 82 Celzijeva stupnja.

U ovom članku pokazat ću vam kako nadzirati temperaturu vašeg Raspberry Pi. Koristit ću Raspbian operativni sustav na svom uređaju Raspberry Pi 3 Model B. Ali to bi trebalo raditi na bilo kojem Raspberry Pi SBC s instaliranim operativnim sustavom Raspbian.

Mjerenje temperature Raspberry Pi SBC:

Sljedeću naredbu možete izmjeriti temperaturu jezgre vašeg Raspberry Pi uređaja:

$ vcgencmd mjeri_temp

Trenutna temperatura jezgre je 48.3 Celzijeva stupnja kao što možete vidjeti u označenom odjeljku snimke zaslona u nastavku.

Kao što vidite, svaki put kad pokrenem naredbu prikazuju različite vrijednosti temperature.

Raščlanjivanje podataka o temperaturi:

Podaci o temperaturi koje dobivamo iz vcgencmd naredba je niz. Na njemu ne možete izvršiti nikakav izračun. Regularni izraz lako možemo koristiti za izdvajanje samo podataka o temperaturi i izvršavanje bilo koje vrste izračuna na njemu.

Ako želite koristiti podatke o temperaturi u skripti Bash shell, tada podatke o temperaturi možete izvući pomoću egrep naredba kako slijedi:

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

Kao što vidite, ispisuju se samo podaci o temperaturi. Ne postoji ništa prije ili poslije toga.

Možete ga koristiti na svojoj skripti ljuske (recimo ispis_temp.sh) kako slijedi:

$ nano print_temp.sh

Ovdje, na liniji 3, postavljam temp varijabla za raščlanjene podatke o temperaturi koje dobivam iz vcgencmd i grep naredba.

Na liniji 5, koristio sam jeka za ispis sadržaja temp varijabla na zaslonu.

Redak 1 koristi se kako bi Linuxu rekao da skriptu treba izvršiti / bin / bash prema zadanim postavkama.

Sada napravite skriptu izvršnom sa sljedećom naredbom:

$ chmod + x ispis_temp.sh

Sada pokrenite skriptu na sljedeći način:

$ ./ print_temp.sh

Kao što vidite, željeni izlaz ispisuje se na ekranu.

Pisanje Raspberry Pi skripte za nadzor temperature:

Sada kada možemo raščlaniti podatke o temperaturi koje dobivamo iz vcgencmd naredbu, lako možemo napisati skriptu za nadzor temperature za Raspberry Pi. Skripta za nadzor temperature ispisat će trenutnu vremensku oznaku i temperaturu jezgre svake sekunde na zaslon na lijepo oblikovan način.

Prvo stvorite novu skriptu tempmon.sh sa sljedećom naredbom:

$ dodirni tempmon.sh

Sada uredite tempmon.sh skripta sa sljedećom naredbom:

$ nano tempmon.sh

Sada unesite sljedeće retke kodova i spremite datoteku s + x a zatim pritisnite g nakon čega slijedi .

Evo, na liniji 4, printf koristi se za ispis nizova TIMESTAMP i TEMP (degC) kao stupac fiksne širine.

Na liniji 5, koristio sam printf opet za ispis isprekidanog retka samo kako bi izlaz bio čitljiviji i privlačniji.

Na liniji 7-13 vodio sam beskonačnu petlju kako bih svake sekunde ispisivao podatke o temperaturi.

U retku 9 pohranio sam raščlanjene podatke o temperaturi na temp varijabilna.

U retku 10 pohranio sam podatke o vremenskoj oznaci koje sam dobio od datum naredba na vremenska oznaka varijabilna.

U retku 11 ispisao sam datum i vrijeme u formatu vremenske oznake, a podatke o temperaturi u formatu stupca fiksne širine.

U retku 12 upotrijebio sam naredbu sleep 1 da na trenutak zadržim izvršavanje skripte. Nakon toga, petlja će se nastaviti.

Sada napravite skriptu tempmon.sh izvršni sa sljedećom naredbom:

$ chmod + x tempmon.sh

Na kraju, pokrenite skriptu tempmon.sh sa sljedećom naredbom:

$ ./ tempmon.sh

Kao što vidite, skripta za nadzor temperature savršeno radi. Ispisuje podatke o temperaturi svake sekunde.

Kao što vidite, kako sam povećavao opterećenje sustava, temperatura se lagano povećavala.

Ako želite zaustaviti skriptu za nadzor temperature, pritisnite + c. Nadzor temperature više ne radi, kao što možete vidjeti na snimci zaslona u nastavku.

Sada kada skripta za nadzor temperature radi, kopirajmo je u / usr / bin imenik. Na taj ga način možete pokrenuti kao i bilo koje druge Linux naredbe.

Za kopiranje skripte tempmon.sh prema / usr / bin direktorija, pokrenite sljedeću naredbu:

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

Kao što vidite, mogu pokrenuti skriptu za nadzor temperature baš kao što pokrećem standardne Linux naredbe.

Modificiranje tempmon za ispis podataka o temperaturi u Fahrenheitu:

Jednostavno možete pretvoriti podatke o temperaturi iz Celzija u Fahrenheit.

Široko poznata formula za izračun Celzijevih temperatura u Fahrenheitu je,

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

Ali problem je u tome što bash ljuska nema potrebne funkcije za izvršavanje izračuna s pomičnim zarezom. Dakle, morate se osloniti na neke druge programe poput prije Krista.

prije Krista nije zadano instaliran na Raspbian. Ali možete ga jednostavno instalirati pomoću sljedeće naredbe:

$ sudo apt install bc

prije Krista treba instalirati.

Sada morate izmijeniti skriptu za nadzor temperature i izvršiti potrebne proračune kako biste temperaturu pretvorili u Celzijuseve fahrenheite s prije Krista.

Uredite tempmon.sh skripta sa sljedećom naredbom:

$ nano tempmon.sh

Sada izvršite izmjene kako su označene na snimci zaslona u nastavku.

Ovdje, u retku 4, tiskao sam TEMP (F) umjesto TEMP (° C).

U retku 9 promijenio sam varijablu iz temp do tempC.

U retku 10 dodao sam rezultat Celzijeve pretvorbe u Fahrenheit u varijablu tempF.

Napokon, ispisao sam vrijednost tempF varijabla umjesto temp na liniji 12.

Sada pokrenite skriptu na sljedeći način:

$ ./ tempmon

Kao što vidite, temperatura se ispisuje u Fahrenheitovim jedinicama.

Dakle, tako nadgledate temperaturu u Raspberry Pi. Hvala što ste pročitali ovaj članak.

Luke komercijalnih igara s otvorenim kodom
Besplatne igre s otvorenim kodom i više platformi mogu se koristiti za igranje starih, kao i nekih prilično nedavnih naslova igara. U ovom će se člank...
Najbolje igre naredbenog retka za Linux
Naredbeni redak nije samo vaš najveći saveznik pri korištenju Linuxa - on također može biti izvor zabave jer ga možete koristiti za igranje mnogih zab...
Najbolje aplikacije za mapiranje gamepada za Linux
Ako volite igrati igre na Linuxu s gamepadom umjesto tipičnim sustavom za unos tipkovnice i miša, za vas postoji nekoliko korisnih aplikacija. Mnoge r...