M5Stackで始めるセンサ・インターフェーシング (4) 赤外線温度センサMLX90640
例えば、溶鉱炉から出てくる銑鉄の温度を測るとか、近寄れない場所の温度を測るときに赤外線放射温度計を使います。伝染病が広がるのを未然に防ぐため、空港で人の頭部の温度を測るのにも使われたぐらい、分解能が高い製品もあります。
センサ部分をライン、もしくはマトリクスで構成すれば、人がどの方向から入ってきたかなどの検知に使えます。
本Webでは次のデバイスを使ってきました。
型番 | 構成 | 確度[℃] | 分解能[℃] | 測定範囲[℃] | 記事 |
---|---|---|---|---|---|
MLX90614ESF-BAA | 1 | ±0.5 | 0.02 | -40~85 | ラズパイ |
D6T-44L-06 | 4×4 | ±1.5 | - | 5~50 | ラズパイ |
AMG8833 | 8×8 | ±2.5 | 0.25 | 0~80 | ラズパイ Spresense UNO |
ここでは、32×24マトリクスをもつMLX90640を利用します。
●MLX90640のおもなスペック
- 構成 32×24配列
- 測定範囲 -40〜300℃
- 分解能 ±1.5℃
- 動作電圧 3〜3.6V
- I2Cスレーブ・アドレス 0x33
●接続
Sparkfunのブレークアウト・ボードを利用しました。スイッチサイエンスから購入できます。I2Cのピンヘッダ、1mmピッチの4ピンコネクタがついています。同社はQwiicと呼んでいます。Qwiic-Grove変換ケーブルを用いてM5Stackとつなぎました。この変換ケーブルのGrove側のコネクタはロック機構がついていてM5Stackに挿せないので、Grove - I2Cハブを仲介しています。
視野の広さによって2種類の製品があります。利用したのは広角タイプ(110×75°)です。もう一つは視野55×35°です。
●サンプル・スケッチを動かす
M5Stackを導入した時点で、MLX90640のサンプル・スケッチが入っています。
スケッチ例->M5Stack->Unit->MLX90640
コンパイルして実行します。ゾンビのようなものが見えています。レンズを自分の顔に向けていて、目が黒く(眼鏡をしていて温度が低い)、口が赤い(温度が高い)のが、はっきりとわかります。
(※)UNOではメモリが少なくて動きません。執筆時点では、MKRZEROではSparkFunのライブラリがコンパイルでエラーが出て動きません。