Malinový koláč

Monitor teploty Raspberry Pi

Monitor teploty Raspberry Pi
Raspberry Pi je výkonný jednodeskový počítač (SBC). Môže byť použitý na vykonávanie mnohých zložitých úloh. Tým sa ale zvýši teplota procesora zariadení Raspberry Pi. Čo nie je dobré. Výkon Raspberry Pi SBC bude trpieť kvôli teplote. Toto sa nazýva aj tepelné škrtenie.

Ak je teplota procesora vášho Raspberry Pi nad 80 stupňov Celzia, v pravom hornom rohu obrazovky sa zobrazí ikona teplomeru. Oficiálne nadácia Raspberry Pi odporúča, aby teplota vášho zariadenia Raspberry Pi bola nižšia ako 85 stupňov Celzia, aby správne fungoval. To je maximálna hranica. Začalo by to však škrtiť pri 82 stupňoch Celzia.

V tomto článku vám ukážem, ako sledovať teplotu vášho Raspberry Pi. Na svojom zariadení Raspberry Pi 3 Model B budem používať operačný systém Raspbian. Malo by to však fungovať na akomkoľvek Raspberry Pi SBC s nainštalovaným operačným systémom Raspbian.

Meranie teploty Raspberry Pi SBC:

Teplotu jadra vášho zariadenia Raspberry Pi môžete merať pomocou nasledujúceho príkazu:

$ vcgencmd measure_temp

Aktuálna teplota jadra je 48.3 stupne Celzia, ako vidíte na vyznačenej časti snímky obrazovky nižšie.

Ako vidíte, pri každom spustení príkaz zobrazuje inú hodnotu teploty.

Analýza údajov o teplote:

Údaje o teplote, ktoré dostaneme z vcgencmd príkaz je reťazec. Nemôžete na ňom vykonať žiadny výpočet. Pomocou Regulárneho výrazu môžeme ľahko extrahovať iba údaje o teplote a vykonať na ňom akýkoľvek typ výpočtu.

Ak chcete použiť údaje o teplote v skripte Bash shell, môžete údaje o teplote extrahovať pomocou egrep príkaz takto:

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

Ako vidíte, tlačia sa iba údaje o teplote. Pred ním ani po ňom nič nie je.

Môžete ho použiť na svojom shell skripte (povedzme print_temp.š) nasledovne:

$ nano print_temp.š

Tu na riadok 3 som nastavil tepl premenná na analyzované údaje o teplote, ktoré získam z vcgencmd a grep príkaz.

Na linke 5 som použil ozvena vytlačiť obsah súboru tepl premenná na obrazovke.

Prvý riadok slúži na informovanie systému Linux, že skript by sa mal vykonať pomocou / bin / bash predvolene.

Teraz urobte skript spustiteľný pomocou nasledujúceho príkazu:

$ chmod + x print_temp.š

Teraz spustite skript nasledovne:

$ ./ print_temp.š

Ako vidíte, požadovaný výstup sa vytlačí na obrazovku.

Písanie skriptu na monitorovanie teploty Raspberry Pi:

Teraz, keď môžeme analyzovať údaje o teplote, ktoré sme získali z vcgencmd príkaz, môžeme ľahko napísať skript na sledovanie teploty pre Raspberry Pi. Skript na sledovanie teploty vytlačí aktuálnu časovú pečiatku a teplotu jadra každú sekundu na obrazovku v pekne formátovanom formáte.

Najskôr vytvorte nový skript tempmon.š nasledujúcim príkazom:

$ dotykový tempmon.š

Teraz upravte tempmon.š skript s nasledujúcim príkazom:

$ nano tempmon.š

Teraz zadajte nasledujúce riadky kódov a uložte súbor s + X a potom stlačte r nasledovaný .

Tu, na riadku 4, printf sa používa na tlač reťazcov TIMESTAMP a TEMP (degC) ako stĺpca s pevnou šírkou.

Na linke 5 som použil printf znova vytlačiť prerušovanú čiaru, len aby bol výstup čitateľnejší a príťažlivejší.

Na riadku 7-13 som bežal nekonečnou slučkou, aby som každú sekundu tlačil údaje o teplote.

Na riadku 9 som uložil analyzované údaje o teplote do tepl premenná.

Na riadku 10 som uložil údaje časovej pečiatky, ktoré som získal z dátum príkaz na časová značka premenná.

Na riadku 11 som vytlačil dátum a čas vo formáte časovej pečiatky a údaje o teplote vo formáte stĺpca s pevnou šírkou.

Na riadku 12 som pomocou príkazu sleep 1 na chvíľu zadržal vykonávanie skriptu. Potom bude slučka pokračovať.

Teraz vytvorte scenár tempmon.š spustiteľný nasledujúcim príkazom:

$ chmod + x tempmon.š

Nakoniec spustite skript tempmon.š nasledujúcim príkazom:

$ ./ tempmon.š

Ako vidíte, skript monitora teploty funguje perfektne. Každú sekundu tlačí údaje o teplote.

Ako vidíte, keď som zvýšil zaťaženie systému, teplota sa mierne zvýšila.

Ak chcete skript na sledovanie teploty zastaviť, stlačte + c. Monitorovanie teploty už nefunguje, ako vidíte na snímke obrazovky nižšie.

Teraz, keď skript na sledovanie teploty funguje, skopírujme ho do / usr / bin adresár. Týmto spôsobom ho môžete spustiť ako akékoľvek iné príkazy systému Linux.

Ak chcete skopírovať skript tempmon.š do / usr / bin adresára, spustite nasledujúci príkaz:

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

Ako vidíte, môžem spustiť skript na sledovanie teploty rovnako, ako spúšťam štandardné príkazy systému Linux.

Úpravy tempmon pre tlač údajov o teplote vo stupňoch Fahrenheita:

Údaje o teplote môžete ľahko previesť z Celzia na Fahrenheita.

Všeobecne známy vzorec na výpočet teplôt vo stupňoch Fahrenheita z Celzia je,

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

Problém však je, že bash shell nemá potrebné funkcie na vykonávanie výpočtov s pohyblivou rádovou čiarkou. Musíte sa teda spoľahnúť na niektoré ďalšie programy, ako napr pred n. l.

pred n. l nie je predvolene nainštalovaný na Raspbian. Môžete ho však ľahko nainštalovať pomocou nasledujúceho príkazu:

$ sudo apt nainštalovať bc

pred n. l by mali byť nainštalované.

Teraz musíte upraviť skript na sledovanie teploty a vykonať potrebné výpočty na prevod teploty na Fahrenheita z Celzia pomocou pred n. l.

Upravte tempmon.š skript s nasledujúcim príkazom:

$ nano tempmon.š

Teraz urobte úpravy tak, ako sú označené na snímke obrazovky nižšie.

Tu, na riadok 4, som tlačil TEPLOTA (F) namiesto TEMP (degC).

Na riadku 9 som zmenil premennú z tepl do tepl.

Na riadku 10 som pridal výsledok premeny Celzia na Fahrenheita do premennej tempF.

Nakoniec som vytlačil hodnotu tempF premenná namiesto tepl na linke 12.

Teraz spustite skript nasledovne:

$ ./ tempmon

Ako vidíte, teplota je vytlačená v jednotkách Fahrenheita.

Takto teda monitorujete teplotu v Raspberry Pi. Ďakujeme, že ste si prečítali tento článok.

Hry Ako nainštalovať League Of Legends na Ubuntu 14.04
Ako nainštalovať League Of Legends na Ubuntu 14.04
Ak ste fanúšikom League of Legends, potom je to pre vás príležitosť otestovať spustenie League of Legends. Upozorňujeme, že program PlayOnLinux podpor...
Hry Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
OpenRA je herný engine Libre / Free Real Time Strategy, ktorý obnovuje rané hry z Westwoodu, ako napríklad klasické Command & Conquer: Red Alert. Dist...
Hry Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Emulátor Dolphin vám umožní hrať vybrané hry Gamecube a Wii na osobných počítačoch Linux (PC). Emulátor Dolphin, ktorý je voľne dostupným emulátorom ...