MEMS非接触温度センサD6T-44L-06をRaspberry Piに繋げて動かしてみる.

大学の研究でOmronのMEMS非接触温度センサD6T-44L-06をRaspberry Piに接続して使うことになったのでメモ

当センサをRaspberry Piに接続してデータを取りたいという方の参考になればと.

まずは,RaspberryPiでI2Cができるようにする.

Raspberry Piでi2cを有効にする方法は,Make.さんのI2Cを使う(設定編)を参考にしました.

MEMS非接触温度センサD6T-44L-06は電圧が5V必要な点は異なりますが,この記事の通りにすすめていけば,I2Cを有効にするところからセンサの接続確認までできるはずです.

ちなみに,当センサの配線は右から,

  • (黒) – GND
  • (白) – 5V
  • (青) – SDA
  • (黄) – SCL

になるはず.(括弧内は配線の色に対応)

センサからデータを読み取る

実は,I2C通信を簡単に行うことができる「python-smbus」というパッケージがあるのですが,smbusでは一度に読み取れる値が32 bytesという制限があります.MEMS非接触温度センサD6T-44L-06は一度に35 bytesのデータを送るので,今回はコチラを使うことはできません.

コチラのI2C通信の使い方に説明されているような流れで実装するのが良さそうだと判断しました.
(もっと簡単にできる方法をご存知の方がいましたら是非教えてください.)

すると,幸運にもすでにKrisjanis Rijnieksさんが当センサをRaspberry Piで動作確認するためのアプリケーションをC++で実装してくれていたので,こちらを使わせてい頂くことにしましょう.

https://github.com/kr15h/omron-d6t-44l-06-rpi-of-test

Krisjanis RijnieksさんはOpenFrameworksを使ったGUIアプリを開発したようなのですが,今回はGUIで視覚化するというよりもセンサの生データが欲しかったので,センサと通信する部分だけお借りし,受け取ったデータをCSVファイルに出力するプログラムを書いてみました.

ソースコード

ソースコードはGitHubにUPしてあります.改善点等ありましたらご指摘いただけると嬉しいです.

https://github.com/nobuyukioishi/Omron_D6T-44L-06_Test_with_RasPi

上にも既に書きましたが,今回はKrisjanis Rijnieksさんのhttps://github.com/kr15h/omron-d6t-44l-06-rpi-of-testを大いに参考にさせて頂きました.というより,大半は彼のコードで,僕が書いたのは実質main関数部分だけです.

参考資料

D6T-44L / D6T-8L サーマルセンサの使用方法

Arduinoに接続して使いたい方へ…

今回は,Raspberry Piに接続してD6T-44L-06のテストを行いましたが,Arduinoに接続したいというかたは,スイッチサイエンスさんのMEMS温度センサを使おうを参考にすると良いと思われます.

ArduinoとProcessingを組み合わせて,以下の画像の様な感じで動作確認をすることができます.かなり解像度が粗いサーモグラフィといったところでしょうか.
(Krisjanis Rijnieksさんが作ったRaspberry Piで動かすGUIアプリもおそらくこんな感じの出力が得られる)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です