Scientific Journey

私の冒険記録。たまに回り道。

【Arduino】放射温度センサMLX90614を使ってみる(Galileo2についても解説)

手の温度を取得するために、放射温度センサMLX90614を使ってみる。

用意するもの

手順

  • 以下のサイトからライブラリをダウンロードして、Arduino > Libraries にコピーして入れる。

https://github.com/adafruit/Adafruit-MLX90614-Library

  • IDEを開き、ファイル→スケッチの例から「Adafruit MLX90614 Library」を選択して、mlxtest.ioを実行する。

結果

f:id:an-modoki:20160929114835p:plain

補足

  1. Galileo2の利用について

Galileo2で試してみたところ、どうしてもうまくいきませんでした。
I2Cのポートをうまく認識せず、クロック数の相性があるのでしょうか。
2日取り組みましたが、よくわからないままでした。

  1. 1つのボードによる複数利用について

以下のサイトから、データシートを読みます。
https://learn.sparkfun.com/tutorials/mlx90614-ir-thermometer-hookup-guide

Every MLX90614 has a default I2C address of 0x5A, but that address can be re-written – one of the major features supported by the device. By reconfiguring the address of an MLX90614, you can add multiple devices (up to 127!) to the same bus to get a larger temperature map.

One last bit to note about the SMBus interface – every read or write transmission should be completed with an 8-bit CRC (CRC-8-CCITT) check using a x8+x2+x1+x0 polynomial – handy for that extra bit of data-confidence.

複数つなげる事が可能みたいですね。