PC修理でショート箇所を見つけるにあたり、発熱箇所がサーモグラフィーで見えると便利だな、と思い、ESP32とユニバーサル基盤もろもろを取り付けて、ポータブル式のカメラを作成しました。
仕様ポイント
- リチウムイオンバッテリ搭載で、ケーブル不要。USB Type-Cで充電可能。
※バッテリは、以前使っていたゲームコントローラから抜き取りましたw - スライドスイッチでON/OFF切り替え。
- カメラには、Panasonic製 AMG8833 GridEyeを使用。
外観
部品一式
部品 | IC名 | メーカー | 価格 |
---|---|---|---|
マイコン | ESP32-WROOM-32 | ACEIRMC | ¥1,099 |
熱感知カメラ | AMG8833 | Conta | ¥4,950 |
液晶ディスプレイ | ILI9431 | KKHMF | ¥1,999 |
LDO レギュレータ(to 3.3v) | AMS1117-3.3 DC | VKLSVAN | ¥59 |
リチウム電池充電器モジュール | TP4056(Type-C) | Aideepen | ¥95 |
リチウムイオンバッテリ | 不明 3.7V 800mAh | 不明 | (不良Controllerから拝借) |
配線
配線ポイント
カメラと液晶への電圧は、LDOを経由して3.3Vに降圧した状態で入力する。
3.7VバッテリからESP32(電圧3.6V迄)への入力も、本来降圧して行うべきだが、降圧するとESP32がうまく起動しない(電圧不足?)ため、そのまま入力。
結線ルートは回路図のとおりだが、実際はエナメル線を使って下図のとおりつないでいるため、ぐちゃぐちゃにw
(配線図ではわかりませんが)ESP32、カメラ、ディスプレイの3つは、基盤に直付けせず、ピンソケットのうえに差し込むようにする。
制御プログラム
ESP32のプログラムは、今回は手抜きで、AMG8833のスケッチ例をそのまま使いました。
インポートライブラリ
Arduino IDEを起動して、ライブラリの管理から、以下のライブラリを追加でインストールする - Adafruit_AMG88xx_Library - Adafruit_ILI9341
スケッチ
[ファイル]-[スケッチ例]-[Adafruits AMG88xx Library]-[thermal_cam_interpolate]
反省
なんとか実装することができましたが、エナメル線がぐちゃぐちゃで、手直しが難しくなっています。
機会があれば、次はプリント基板の設計で実装したいと思います!
また、ESP32の電源まわりはまだ謎が多くて、3.3V降圧だとうまく動かないのもよくわからない…。