非接触温度センサアレイ・D6T-44L-06を試す
花岡ちゃんのウィークエンド
久々のウィークエンド、今回は非接触温度センサアレイ・D6T-44L-06を試してみます。このカメラのようなセンサは視野を4X4のマトリックスに分割し、それぞれのエリアの平均温度を計測します。分解能は低いですが、サーモグラフィのような使い方が出来ます。
このセンサを使うと、室内の人間や動物の位置を検出することが出来そうです。以前からサーモパイルで実験をしていたのですが、光学系の製作が難しく、思ったようなセンサが作れませんでした。これは光学系も組み込まれている二次元センサですから、その心配はありません。カメラのように取り扱うことが出来ます。しかも、処理系内蔵で摂氏温度がダイレクトに読み取れます。アマチュアにとっては申し分なしです。惜しむらくは少々お値段が高いことでしょうか。今回はスイッチサイエンスから専用ハーネスと一緒に購入しました。
今回実験した回路図です。
マイコンはおなじみのPIC24FJ64GA002、秋月で購入したものです。TX,RXはMAX232などのレベルコンバータを介してパソコンのシリアルポートと接続します。
マイコンの電源は3.3Vで、I2Cバスはこの電源にプルアップします。D6T-44L-06の電源は5Vです。これの精度はあまり気にしなくてもいいようです。この実験ではエネループ4本で4.8V程度を供給しています。
I2Cバスの電圧レベルは3.3V(4.7Kでプルアップ)で、センサの電源は5V。本来ならそのまま接続は具合が悪そうですが… まあなんとかなるだろうということで、何もせずに接続しています。問題なく動作していますが、あくまでも「アマチュア仕様」ですのでご注意ください。
センサは、このようにダイソーで買ったプラスチックの万力に軽く挿んで固定しました。
ネット上にはこのセンサの詳細な情報は無いようです。スイッチサイエンスのサイトにはアルディーノのサンプルがありますが、アルディーノは使ったことが無いので、あまり参考になりません。ようやくDigiKeyの通販ページで、一般的なサンプルプログラムを見つけました。今回はこれを下敷きにしています。
ソフトはMPLAB Xで作成しました。プロジェクトファイルを参考のため公開します。なお、このソースには、いままで実験してきた全てのI2Cドライブ関数が含まれています。
「pic24f_test_6.zip」をダウンロード
ソースコードを見てもらえば一目瞭然でしょう。センサから読み出した温度データを、4X4のマトリックスの形で、連続的にシリアル送信(9600bps)するだけの簡単なプログラムです。
センサからは35バイトのデータを読み出します。温度データは2バイトで、最初の2バイトはセンサ自体の温度か、視野の平均の温度のようです。調べた範囲ではわかりませんでした。その後32バイトがマトリックスの温度データです。最後の1バイトは、どうもCRCエラー訂正コードのようなので、今回は無視しています。
各温度データは、0.1度単位の摂氏温度のようです。つまり、231は23.1℃ということになります。データシートでは温度の分解能が0.14℃となっているので、0.1度の分解能に丸められているようです。なお、測定温度範囲は5から50℃です。
上の写真のように、センサから見て左側に手をかざした場合、シリアルターミナルにはこんな風に表示されます。
241 237 238 236
278 242 235 226
285 241 229 224
236 235 234 233
センサが手のひらの温度を感じて、左端の2行目、3行目の数値が大きくなっているのがわかると思います。
これを応用して簡易サーモグラフィを製作してみました。こちらです。
« roombaをゲームパッドで動かすパッケージを作る(3) | トップページ | D6T-44L-06でサーモグラフィを作る »
「花岡ちゃんのウィークエンド」カテゴリの記事
- レーザー距離センサVL53L0Xを複数使うには(2022.05.01)
- 【訂正!】PIC24Fでレーザー距離センサVL53L0Xを使う(2022.04.13)
- PIC24Fでレーザー距離センサVL53L0Xを使う(おしまい)(2022.04.14)
- PIC24Fでレーザー距離センサVL53L0Xを使う(その3)(2022.04.13)
- PIC24Fでレーザー距離センサVL53L0Xを使う(その2)(2022.04.12)
« roombaをゲームパッドで動かすパッケージを作る(3) | トップページ | D6T-44L-06でサーモグラフィを作る »
コメント