迷走の果て・Tiny Objects

迷走する日々の覚え書きです。自分で分かってることは省略してますので、念のため。

非接触温度センサMLX90614を試す(2)パッケージの違い

私が買ったGY-906にはMLX90614ESF-BCCが乗っかってます。

AliExpressで"GY-906"で検索するとMLX90614ESF-BAAを使ったタイプがヒットします、私が買ったのより安いです。

理由はMLX90614ESF-BAAとMLX90614ESF-BCCの違いです。

こちらはBAAタイプ
BAAタイプ

こちらはBCCタイプ
BCCタイプ

いずれもAliExpressの商品ページから引用しました。

データシート1ページ目から引用します。(データシートはこちらにあります)


型番の最後が"A"だとStandard packageですが、"C"だと35°FOV(視野角)です。

視野角の違いをデータシート36ページから引用します。
MLX90614_FOV_PDFpage36.jpg
MLX90614_FOV2_PDFpage36.jpg

BCCタイプはStandard packageタイプに視野角を狭めるためのケースがついています。その分値が張るというわけでしょう。
データシート47ページから引用。
MLX90614_package_PDFpage47.jpg

前に実験していたTMP007は視野角が広いので対象に相当近づけないといけませんでしたが、これなら先の実験からして5センチ程度離しても大丈夫なようです、もう少し実験をしないとはっきりしたことは言えませんが。

TMP007がダメということではなくて、開発理由が違うのでしょう。
以前の記事でも引用しましたが、何かに組み込んで使うのがTMP007向きというわけです。
赤外線サーモパイル・センサTMP007を使って、筐体(ケース)温度を測定!
スポンサーサイト

非接触温度センサMLX90614を試す(1)

AliExpressから非接触温度センサMLX90614を使ったモジュールGY-906を購入しました。
MelexisのMLX90614を使ったモジュールです。
裏面を見ると、10KΩ二個、I2Cバスのプルアップ抵抗でしょう.
コンデンサ二個、それと三端子レギュレーターと思しき部品なのですが、よく知ってる7805タイプとはピン接続が違うようで7805だと左からIN-COM-OUTなのですが、これはCOM-IN-OUTになってます。実測では3.3V出てました。
GY906裏面

接続は簡単。
GY906とArduino接続

一応回路図。
NANO_GY906_2.jpg


スケッチです。
Adafruit_MLX90614ライブラリーにあるサンプルスケッチをちょっといじりました。


机の上に置き(センサーは天井を向いてます)手のひらをかざしてみました。
距離を20センチから3センチまで変えて出力をシリアルプロッタで見ました。
手のひらの距離と出力



非接触温度センサTMP007を試す(6)LCDをつける

スイッチサイエンスさんの小型LCDボード(3.3V版)があったので、取り付けてみました。
コントラストを調整する必要がありますし、取り付ける向きもよくないんですが、これで電池動作できます。
上が対象温度、下がダイ温度。とりあえず単位は表示してません。


スケッチは後ほど・・・。
スケッチです。
ControlEverything.comのスケッチスイッチサイエンスさんのスケッチを合わせました。小数を表示する部分は逆引きArduinoを参考にしました。
ほとんど他力本願^^;;;

先の写真では小数点以下2桁ですが、このスケッチでは1桁にしてます。
40行はコメントアウトしてますが、Transient Correctionをオフにする場合はコメントアウトを外し、代わりに39行をコメントアウトします。
スイッチで切り替えてTransient Correctionをオン・オフさせて違いを見られるようにするつもりです。

非接触温度センサTMP007を試す(5)覚え書き

自分のための覚え書きです。TMP007の解説ではありません、そんなこと出来ません^^;;

変換時間についてはTMP007データシート13ページにあるように250mS。
conversionCycle.jpg

”Bits CR2 to CR0”についてはTMP007データシート28ページ、Configuration Registerのbit12からbit10。
ConfigurationRegister.jpg

Configuration Registerのbit6 "TC"についてはTMP007データシート23ページ。
TransientCorrection.jpg
過渡応答を改善するためのようで、周辺温度変化が1.5度/分以上ならTCをオンにしておけ、とあります。

実験していて分からなかったのが読み出しのタイミング。
実のところ、変換終了を待ってから読み出してるんだろうと思ってましたが、どうも違うようです。
確認のためcontroleverything.comのサンプルスケッチを改造しました。
Adafruitのサンプルスケッチはライブラリーを使ってるので何をやってるのかよくわからんのです。
ちゃんとライブラリーを読めばいいのでしょうが、探したらライブラリーを使用していない上記のスケッチが見つかったのでそれを使ったわけです。読んでみると変換終了を待ってはいないようです。

テストスケッチです。41行目で CR=4 としてますので、変換に約1秒かかります。


実験では71行目のディレイを
delay(100);
として約0.1秒ごとに読みだしてCPLTでグラフ化してみました。
横軸は10sample/divとしましたので約1秒/divということになります。

TMP007_CPLT.jpg

約1div間、読み出し値は変化してません。どうやら変換終了を待つ必要はなく、読み出した時点での最新データが出てくるようです。

LCR-T4(MTester)を試す(3)リンクとケース入れ

LCR-T4(MTester)関係のリンクを張っておきます。

エアーバリアブルさん
格安なのに高性能「部品アナライザー」購入
コントラスト調整と校正の方法が述べられてます。

さらにこの記事のコメントから知ったのが、
nobuさん
トランジスタテスターを作ろう
最初は16x2行のキャラクタディスプレイを使っていたようです。
リンクをたどっていくと回路図からソースコードまであります。

おんにょさん
マルチテスターLCR-T4をケースに入れる
PMC-115HのDC重畳インダクタンス
マルチテスターLCR-T4を試してみる
トランジスタやFETを多数測定されてまして、大変参考になります。


以下はあんまり参考にならない記事です(汗

手持ちに秋月のABS樹脂ケース(蝶番式・大)があったので、ゴム足を付けて置いてみました。
穴あけせずに置いただけです。
Mtesterケース入れ

最初は基盤にある穴にゴム足をねじ止めしていたのですが、それだとスイッチを押したり部品を交換したりすると基盤の奥が浮き上がってしまうので、下の写真のように手前のゴム足を両面テープで付け直しました。穴あけが面倒なので^^;;
ABS樹脂ケース(蝶番式・中)でも入るでしょう、たぶん(念のため、未確認)
Mtesterゴム足


LCR-T4(MTester)を試す(2)

前の記事で、電圧6.5V以下で警告が出てシャットダウンすると書きましたが、5Vにしてみると下のような表示になりました。
測定もそれらしい表示が出てしまいます。
今のところ自作電源で試してるのですが、006Pで使ってればこのようになる前に電池がへたってしまうでしょうから、問題にならないでしょう。でも単三電池6本だったらどうなるんでしょうか。試す気はありませんが。


温度センサーLM35をつないでみました、当然ながら無理でした^^;;
MTester_LM35.jpg

マイクロインダクタ3.3μH。インダクタの測定下限が10μHのようで、それ以下だと抵抗とみなされてしまうようです。
MTester_3u3h.jpg


LCR-T4(MTester)を試す(1)

アマゾンでLCR-T4(MTester)を購入しました。
昨年の12月29日に注文、1月7日には郵便受けに投函されてました。
手持ちに006Pが無かったので、自作電源から9Vつないで見ました、バッテリ電圧を表示するのがいいですね。
Mtester表

ATMega328Pが使われてます。三端子レギュレーターは78L05です。
Mtester裏

手持ちの古いダーリントントランジスタ2SC982の測定、さすがにhFEが大きい。
2SC982.jpg

これは2SC2500C、ストロボフラッシュ用、飽和電圧が低いのが特徴。このテスターではそこまで判りませんが。
2SC2500C.jpg

以前、某ショップで安売りしていた2SC2320、hFE低めですね。
2SC2320.jpg

電圧が6.5V以下だと警告が出てシャットダウンします。なかなかよく出来てます。
消費電流ですが、9Vで約20mA、7Vで約18mAでした。
MtesterLowBatt.jpg

コントラスト調整や、校正も出来るようです。
詳しくはこちら



非接触温度センサTMP007を試す(4)ひとまず終了

TMP007は5Vで動かしてたのですが、スケッチを読んでみると3.3Vで使え、とあるので変更しました。
スケッチのコメントには
// Connect VCC to +3V (its a quieter supply than the 5V supply on an Arduino
とあります。
今回のスケッチ、オリジナルをちょっと変更しただけです。

/*************************************************** 
 This is an example for the TMP007 Barometric Pressure & Temp Sensor

 Designed specifically to work with the Adafruit TMP007 Breakout
 ----> https://www.adafruit.com/products/2023
 
 These displays use I2C to communicate, 2 pins are required to  
 interface
 Adafruit invests time and resources providing this open source code,
 please support Adafruit and open-source hardware by purchasing
 products from Adafruit!

 Written by Limor Fried/Ladyada for Adafruit Industries.  
 BSD license, all text above must be included in any redistribution
****************************************************/

#include <Wire.h>
#include "Adafruit_TMP007.h"

// Connect VCC to +3V (its a quieter supply than the 5V supply on an Arduino
// Gnd -> Gnd
// SCL connects to the I2C clock pin. On newer boards this is labeled with SCL
// otherwise, on the Uno, this is A5 on the Mega it is 21 and on the Leonardo/Micro digital 3
// SDA connects to the I2C data pin. On newer boards this is labeled with SDA
// otherwise, on the Uno, this is A4 on the Mega it is 20 and on the Leonardo/Micro digital 2

Adafruit_TMP007 tmp007;
//Adafruit_TMP007 tmp007(0x41);  // start with a diferent i2c address!

void setup() {
 Serial.begin(9600);
 Serial.println("Adafruit TMP007 example");

 // you can also use tmp007.begin(TMP007_CFG_1SAMPLE) or 2SAMPLE/4SAMPLE/8SAMPLE to have
 // lower precision, higher rate sampling. default is TMP007_CFG_16SAMPLE which takes
 // 4 seconds per reading (16 samples)
 tmp007.begin(TMP007_CFG_16SAMPLE);
 if (! tmp007.begin()) {
   Serial.println("No sensor found");
   while (1);
 }
}

void loop() {
  float obj_temp = tmp007.readObjTempC();
  Serial.print(obj_temp);Serial.print(",");
  float die_temp = tmp007.readDieTempC();
   Serial.println(die_temp);
  
  delay(4000); // 4 seconds per reading for 16 samples per reading
}

続きを読む »

非接触温度センサTMP007を試す(3)

ブレッドボードのままでは扱いづらいのでユニバーサル基盤の切れ端に作り直しました。
TMP007_arduino作り直し
次のような実験をしてみました。直径約10センチの金属缶に60度ほどの湯を入れ、TMP007モジュールで缶の温度を測ります。
TMP007湯温の測定1

湯温は自作のサーミスタ温度計で測ります。
TMP007湯温の測定2

缶との間隔をあれこれ変えて測ってみたのですが、1センチより5ミリのほうが温度が低く測定されてしまいます。
わかりにくいグラフですが、上の数字は間隔です。縦軸は温度、横軸は秒です。ここでは1秒間隔で測定するようにスケッチを変更しました。
湯温は測定開始時約50度、終了時約39度でした。
90秒から130秒と280秒にある落ち込みは缶とTMP007の間に遮蔽物(本)を挟んでみたからです。
間隔を5ミリとした時の落ち込みの理由がわかりません。
TMP007湯温の測定グラフVCC5V

 | HOME | 

文字サイズの変更

プロフィール

edy

最新記事一覧(サムネイル画像付き)

脈拍センサーMAX30100を試す(5) May 20, 2017
MT3608モジュールを使ったDSO Shell用電源 May 16, 2017
脈拍センサー MAX30100を試す(4)MAX30100_Registers.h を調べる。 May 13, 2017
脈拍センサー MAX30100を試す(3)正常動作?? May 12, 2017
脈拍センサー MAX30100を試す(2)スケッチとライブラリー May 10, 2017
脈拍センサー MAX30100を試す(1) May 08, 2017
Studuino用電池ボックスを作る(2) May 06, 2017
Studuino用電池ボックスを作る May 05, 2017
MT3608モジュールのテスト Apr 30, 2017
BME280モジュールを使った温度・湿度・気圧計(2)DSO Shellを使って動作電流を測る Apr 23, 2017

全記事表示リンク

全ての記事を表示する

ブログリンク

リンク

このブログをリンクに追加する

月別アーカイブ

05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  12  11  10  09  07  05  04  03  04  03  01  12  11  10  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  02  01  12  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  10  09  08  07  06  05  04  03  02  01 

カテゴリ

プログラミング (0)
freescale (1)
AVR (3)
テルミン (16)
緊急警報放送 (3)
78K (1)
PSoC (295)
地上デジタル放送 (2)
電子工作 (399)
HX711 (2)
ACS712 (6)
数学 (6)
パソコン (12)
PLC (14)
未分類 (39)
ブログ関係 (20)
スカイプ (37)
ロボット (1)
LTSpice (8)
OCXO (0)
arduino (28)
maxima (1)
フランクリン発振回路 (3)
GPS (3)
DTMF (1)
Linux (1)
KOMAINO (7)

タグリスト

最近のコメント

最近のトラックバック

メールフォーム

名前:
メール:
件名:
本文:

検索フォーム

アクセス

RSSリンクの表示

フリーエリア

FC2Ad

まとめ

Template by たけやん