シングルボードコンピューターの温度を定期的に取得する
- IngaSakimori
- 2195
- 2
- 0
- 0
風邪で頭がふらふらで、くりえいてぃう゛なことができそうにないので、しんぐるぼーどこんぴーたーに温度取得スクリプトでも仕込むとしましょう
2018-02-18 19:23:17ラズベリーパイ3の温度を取得する方法は cat /sys/class/thermal/thermal_zone0/temp と vcgencmd measure_temp があるようです 前者は1000倍の値で出てきますが、後者は温度っぽい表記になりますね pic.twitter.com/SEucHIeeL7
2018-02-18 19:24:47ただ、後者はラズベリーパイでは使えますが、ROCK64などでは使えないっぽいですね……aptでインストールできればいいんですが、調べるのもめんどい(・∀・;) ではどっちも使える方法でいきましょうか pic.twitter.com/KGOiJ9SHam
2018-02-18 19:25:43cat /sys/class/thermal/thermal_zone0/temp では1000倍の値で温度が出てきますので、1000で割ってやればいいですよね 一応、温度に差がないことを確認します pic.twitter.com/gpY2sY7uVL
2018-02-18 19:26:52さて、これで温度が取得できました!!……みたいなことはQiitaとかにいくらでも書いてあるので、もうちょっとマシなことをやりましょう 温度を時系列のグラフで取得します。そこで既に環境を作ってある某下町ボブスレーが敗北した国のソフトウェアが出てきます pic.twitter.com/Ly0J4C7e3H
2018-02-18 19:28:27おっ!温度が取得できましたねー ROCK64の1号機はただいま43度です ではこの設定やスクリプトを他のしんぐるぼーどこんぴーたーにも突っ込んでいきます pic.twitter.com/FqH56z3NnK
2018-02-18 19:48:40温度取得は30秒ごとですので、こんなふうに数値の羅列もできますし、グラフ化も可能です pic.twitter.com/rsM2uVPYWw
2018-02-18 19:54:11さて、これで全7台のしんぐるぼーどこんぴーたーに温度が30ごとに送られてくるようになりました!! おっと!PINE64の値がなんか変ですね pic.twitter.com/ScbFI5UL8J
2018-02-18 20:07:13ほほー、どうやらPINE64は1000倍でない値がとれるようです。 では取得スクリプト側を修正してあげましょう。 awkで整形不要です pic.twitter.com/sv2bUkkFRT
2018-02-18 20:08:09普通の値になりました。 小数点以下が出ないですが、まあいいでしょう pic.twitter.com/eLnXWleqA7
2018-02-18 20:10:04これでこれから暖かくなってきても、熱で苦しいのかそうでないのか、簡単に判別できますね!! pic.twitter.com/E1052BZVyO
2018-02-18 20:11:07当たり前ですが、何もしなければほとんど温度変化もありませんので、ROCK64とラズパイZeroWでUNIX BENCHを回して温度の変化を見てみましょう pic.twitter.com/FovrAE8FrB
2018-02-18 20:42:26ROCK64はざっと15度上がって60度ちょいまで上がりました。サーマルスロットリング(まあ、熱いと勝手にCPU休ませる機能です)がかかる温度ではないと思いますし、UNIX BENCH程度ではこんなものなんでしょう。 ラズパイZERO Wは44度くらい。8度ほどの上昇です。 両者ともヒートシンク有りファン無しです pic.twitter.com/mk68xM4WR8
2018-02-18 20:57:39最終的にROCK64は75度くらいまで ラズパイZERO Wはほとんど変わらずでした pic.twitter.com/jTzlJjAXSn
2018-02-18 21:10:09