サーモパイルセンサの応用

2023年技術ブログ集

サーモパイルセンサの応用

Acoustic_Cameraの調査報告に続いてThermal_Cameraを調査することにしました。
実際に評価したセンサは、紹介するセンサは2種類でMLX90614とAMG8833(アレイ)です。
まず、サーモパイルの原理を示します。このセンサのポイントは光学フィルターにあります。
-20℃~100℃の範囲(波長では5~14um)のBPFを使用し透過した赤外線を熱電対に当て電圧に変換するものです。

アナログのサーモパイル(10TP583T:\300)のデータシートを示します。BPFの特性と温度範囲の情報が示されています。また指向性は非常に鋭く±3°の範囲でないと温度が測れないようです。

変換テーブルを使ってアナログセンサで対象物の温度測定をすることも可能ですが、大変です。デジタルセンサとして環境温度と併せて対象温度を出力するセンサがMLX90614(\2500アナログセンサの10倍)です。マイコンとはI2C接続です。
ArduinoNanoと接続しました。製品メーカーによって微妙に使用が異なるようです。私の場合は、VCCは5VでOKですが信号線(SDA,SCL)は3.3Vで出力されるため10KΩで5Vにプルアップしないとだめでした。

100msecでサンプリングするコードとシリアルプロッタでの出力グラフを示します。

センサの応答速度はカタログ値では10msec程度まで対応可能なようです。
ちょっとした熱応答測定には使えそうです。次にMLX90614と加速度センサで装置のモニタ
するためのWindowsとマイコンの接続例を紹介します。振動センサ(3軸加速度センサ)とサーモパイルセンサをI2C接続した例を示します。

ADC0(アナログ)と加速度センサのGx,Gy,Gzとサーモパイルセンサの周辺温度,物体温度の6項目をコンマ区切りでシリアル出力します。115200bpsでサンプリングは100msecです。
Arduinoのコードを示します。MPU6050にはまともなライブラリがなく苦労しました。

Arduinoのシリアルプロッタで波形を確認しました。

次にWindowsーPCのUSBでマイコンからのシリアル信号を読み込み、csvファイル書き込む
pythonコードを示します。ファイル名と測定回数を聞いてきますので、任意に入力します。

csvファイルへの出力データを示します。タイムスタンプ,Gx,Gy,Gz,環境温度,物体温度
を2秒間隔で測定します。

サーモパイルセンサMLX90614については地味な応用例報告でした。次は、サーモパイルアレイ(AMG88)によるサーモカメラの製作報告です。その前にサーモカメラと2Dサーモセンサアレイの調査報告を行います。

画素数が大きくなるほど高価になります。今回は一番安価に入手できるサーモパイルアレイ(AMG88)
による製作報告です。オリジナルはパナソニック製で上位エアコン用に開発されたもののようです。
画素数は8×8です。秋月電子で\3,980で販売されています。秋月電子の製品データシートを示します。

マイコンと接続し出力されるシリアルデータを確認しました。
AdafruitからAMG88のライブラリが提供されていましたので利用しました。
各画素の出力をコンマ区切りに最後(65番目)にダミーのゼロを加え出力しました。

測定間隔を100msecに設定し、シリアルプロッタでデータを確認しました。応答速度はそこそこ
早いようです。(数十~数百msec)なので通信速度をArduino推奨最大値115200bpsにしました。

これだけではつまらないので、Acoustic_Cameraで使用した補完マップのコードを再利用して
2D画像をリアルタイム表示するGUIプログラムを作成しました。というかAcousitic_CameraのGUIプログラムではマイクアレイが3×2としょぼく、もう少しアレイ数が多いものを探していたら2Dサーモパイルに行きつき、今回のThermal_Camera制作に向かったという経緯です。pythonコードを示します。

ぼんやりと机に向かって作業している人の形が現れていると思います。

最後にPCカメラ画像とサーモカメラ画像を映すためノートPCカメラの傍に
サーモカメラ基板を並べて実験しました。

タイトルとURLをコピーしました