ハイレゾ連続再生時のRaspberry Pi 4BのCPU温度推移をTera Termで記録、よく利用するコマンド

Volumio2でハイレゾ音源(FLAC音源(24bit、96KHz))を連続再生中のRaspberry Pi 4B(以下、ラズパイ4B)のCPU温度の推移をTeraTermで取得しました。

目次

測定手順(catによるデータ取得をWhileで繰り返し取得)

液晶ディスプレイケースには、ラズパイ4B基板の上にDAC(SB32+PRO DoP)を重ねて縦置きで内蔵されており、ケース上部には通気口が開いています(煙突(チムニー)構造?)。

CPU温度データの取得は、下記手順で効率化しました。

ケース上部にフィン状の通気口がある
ケース上部にフィン状の通気口がある

Tera TermでVolumio2にSSH接続(ログイン)

(a)ログ出力はメニューで「ログ(L)」を選択します。
※初回接続時にログの出力先とファイル名を指定します。

(b)ログに時刻(タイムスタンプ)を加える設定を行います。
※既に設定済であれば下記は不要です。
C:\Program Files (x86)\teraterm フォルダ内のTERATERM.INI を編集します。
・358行付近にある
LogTimestamp= を on に変更
下記で日付形式を変更(デフォルトは日時、今回時刻のみ)。
・565行付近にある
LogTimestampFormat= を %H:%M:%S.%N に変更

TeraTermでVolumio2にSSH接続
TeraTermでVolumio2にSSH接続。接続先IPアドレスはVolumio2のネットワーク設定で確認できます。

ラズパイ4BのCPU温度をcatとWhileで繰り返し取得

catによるデータ取得をWhileで繰り返します。約1秒間隔でCPU温度を取得してTeraTermのログ(テキストファイル)としてタイムスタンプとともに記録します。

下記のコマンドは改行しないで1行で入力します。

while true; do cat /sys/class/thermal/thermal_zone0/temp; sleep 1s; done


WhileでCPU温度を繰り返し取得(温度は1/1000で℃)
WhileでCPU温度を繰り返し取得(温度は1/1000で℃)

測定したCPU温度の推移をグラフ化

ハイレゾ連続再生時のラズパイ4BのCPU温度は、約20分ほどで約60℃となりました。測定時の室温は23℃、CPU使用率は3~5%程度でした。
現時点ではラズパイ4Bのサーマルスロットリング※)が起こる状況ではないですが、夏場に向けて温度上昇がみられるようであれば冷却ファンの実装を検討しようと思ってます。

不要文字の削除、スペースをカンマに置換後の測定データ(温度は1/1000で℃)
不要文字の削除、スペースをカンマに置換後の測定データ(温度は1/1000で℃)
測定データをEXCELでグラフ化
測定データをEXCELでグラフ化。最初の1分間は電源ON後のOS起動やTera Term接続のため測定できなかった。室温は23℃。

※)ラズパイ4BはCPU温度が85℃でCPUを保護するためにサーマルスロットリングが働いてクロック周波数を下げるので、4コア フルの長時間稼働にはヒートシンクや冷却ファンの設置がよいようです。

コマンドのまとめ

TeraTermでSSH接続してモニタする際、よく利用するコマンドをまとめました。

項目コマンド
CPU使用率top
CPU温度cat /sys/class/thermal/thermal_zone0/temp
CPU温度コマンド実行→スリープを1秒ごとに繰り返す場合
while true; do cat /sys/class/thermal/thermal_zone0/temp; sleep 1s; done
CPUクロックcat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
よかったらシェアしてね!
  • URLをコピーしました!
目次