中野島ロボット

小さなロボットの自作記事を書いています。

週間中ロボ114 RaspberryPi Model4B のファンについて

はじめに
ラズベリーパイとは小さなワンボードコンピュータですが、Model 4Bになってすごい演算パワーになっています。PCが無くてもこれ一つでロボットの設計から3Dプリンタでの機体の印刷、プログラム開発すべてが可能になるくらいの性能があります。

RaspberryPi  Model4Bにファンは必要?
f:id:nakarobo:20201103090226j:plain
RPi4にファンは必要です。RPi4の4つある全てのCPUを100%の高負荷状態で動かしていると、温度が15分程で上限温度まで上昇してしまいます。しかしRaspberry Pi OSの場合は80℃になると高温警告が表示され、85℃になると保護のために自動でクロックダウンするので壊れることはまずありません。

 

ではなぜ?
半導体の寿命は温度に依存する部分があり、85℃を超えると加速度的に短くなります。RPi4のOSやソフトは未だ最適化されておらず、負荷がかかりやすい状態です。またプログラミングしていて自作のプログラムが暴走したり、使い方によりものすごくCPUに負荷をかけてしまうかもしれません。RPi4を安全に長期間使用するためには冷却ファンが欠かせません。(そもそもRPi4を買った原因が、スティックPCのファンが壊れていたのにそのまま使っていて本体も壊れてからなのでした。)
それに、RPi4の熱問題はCPU以外のチップや電源、USB3.0コネクタ部分も相当熱くなることですが、OSはCPU温度しか計っていません。

f:id:nakarobo:20201103092228j:plain

赤外線センサで見ると、右下がCPUで、真ん中がメモリ、左下がLANコントローラ、左上がUSB3.0付近です。基板全体に熱を帯びているのがわかります。

ちょっと待て!
純正のRPi4ケースにはファンが付いていません。

www.raspberrypi.org

RPi4をプログラミングの授業で二時間程度しか使わないのであれば、寿命の問題は顕在化しません。また、万一プログラムが暴走してもOSにはサーマルスロットリング(高温になるとCPUの速度を下げて冷やすこと)があるので焼け死んでしまうことはそうはありません。
それに授業でCやC++言語で作るプログラムで、15分以上RPi4の4つあるCPUコアを全て使い切って、負荷をかけ続けることは簡単ではあません。(コアが一つなら簡単です。)
ただし、ウェブブラウザによるネットサーフィンやyoutubeでの動画視聴は、知らず知らずのうちにページを何枚も開く等すると簡単にこの状態を作り出せます。またJavaやPythonなどのインタープリンタやスクリプト言語も、パフォーマンスを上げるために(裏で何をやっているか分からないので)RPi4を危険な状態に追い込む可能性があります。
なのでRPi4を普通のディスクトップPCとして安全に使用するには、何らかの冷却機構が日本では必須です。(RPi4の純正ケースは、日本だったらクレーム回収レベルの品質だと思います。)


しかし
ファンは小さいながら音もするし、故障も心配なので、最初はファン無しでなんとか運用したいと思っていましたが、RPi4は基板が小さいのに最大で15Wほどの消費電力となります。つまり熱密度が高いのです。
これをファンなしで冷やすためにはRPi4と同じ程度の大きさのヒートシンクが必要になります。RPi4用として売られているICチップに貼るタイプのヒートシンクでは全く役にたちません。

f:id:nakarobo:20201104010058j:plain

大きなアルミのヒートシンクが自然空冷で5W程度、15Wなら3つくらい必要です。ちいさな3つのヒートシンクは怪しいケースに付いてきたものです。(一個足りない・・・)
また、ファンレスのアルミケースもありますが、CPU以外のチップやUSB3.0コネクタ付近の熱も取り除く必要がありますが、それぞれのチップの高さも違うのに対応したものが探せませんでした。それにせっかく小さくて軽いRPi4が大きく重くなってしまいます。


まとめ
サイズと重量、それに日本の夏の暑さを考えるとRPi4には冷却ファンが必要です。ファンはほんとに風がゆっくり流れている程度でも十分冷却できます。3.3Vでゆっくり回しても大丈夫です。
また、ファンをつけるのであれば、チップに小さなヒートシンクを貼り付ける必要ありません。あっても良いけど、無くても半導体の寿命が極端に短くなるほどではなく、おまじない程度です。
ファンを3.3Vで駆動した状態で実際に室温25℃で、4つのCPUに100%の負荷をかけるベンチマークを実行しても、CPUの温度は55℃に行かない程度でした。つまり温度上昇分は気温+30℃だったので、真夏に風が無い空間で、周囲温度が40℃になっても、70℃にしかならない計算です。
同じく室温25℃の状態で、RPi4を1.8GHzまでオーバクロックした状態でベンチマークを実行した時に、CPUの温度は最高で65℃に達しました。つまり温度上昇分は気温+40℃なので、真夏の冷房の無い状態でも温度警告の出る80℃にぎりぎり収まる計算です。


購入品情報
ファンは3010タイプ(30mm角の10mm厚)で、二個で¥800程。一個なら¥400です。

秋月電子なら一個250円で買えますが、1Pの2055コネクタを自分で付ける必要があるのと、3.3Vで起動するかちょっと心配です。これは電流も少なく、3Vでも起動すると書かれているのでちょっと安心です。


こっちは透明でアクリルケースに合いそうです。でもLEDは消費電力が増えるのでいらないかな。 

ふたつで¥900くらいなので、一個あたり¥450程です。 ただ3.3Vで駆動するにはコネクタを1Pタイプに付け替える必要があります。


せっかくなら透明のネジも良いかも