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 に変更
ラズパイ4BのCPU温度をcatとWhileで繰り返し取得
catによるデータ取得をWhileで繰り返します。約1秒間隔でCPU温度を取得してTeraTermのログ(テキストファイル)としてタイムスタンプとともに記録します。
下記のコマンドは改行しないで1行で入力します。
while true; do cat /sys/class/thermal/thermal_zone0/temp; sleep 1s; done
測定したCPU温度の推移をグラフ化
ハイレゾ連続再生時のラズパイ4BのCPU温度は、約20分ほどで約60℃となりました。測定時の室温は23℃、CPU使用率は3~5%程度でした。
現時点ではラズパイ4Bのサーマルスロットリング※)が起こる状況ではないですが、夏場に向けて温度上昇がみられるようであれば冷却ファンの実装を検討しようと思ってます。
コマンドのまとめ
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 |