[D6T] Application Note No.MDMK-12-0274

[D6T]
Application Note No.MDMK-12-0274
Application Note 01
サーマルセンサ D6T の使用方法
Copyright © 2012 OMRON Corporation. All Rights Reserved.
1
[D6T]
Application Note No.MDMK-12-0274
1.はじめに
本アプリケーション・ノートでは、弊社の MEMS サーマルセンサをご使用になる場合の MCU との通信
方法と、サーマルセンサによる温度検出・人検出について説明しています。
2.サーマルセンサ計測原理
オムロンの MEMS サーマルセンサは 2 種類の金属接点間の温度差に応じた熱起電力が
発生するゼーベック効果を利用したものです。
構造は n 型 Poly Si、p 型 Poly Si と Al を材料とする熱電対を直列につないでサーモパイ
ル(熱電対列)を形成します。熱絶縁性の良い誘電体薄膜上に温接点、熱伝導性の良いシ
リコン上に冷接点を形成することにより高速応答で高いエネルギー変換効率(赤外線ー温
度ー熱起電力)を得る事ができます。(図1)
(図1)
Copyright © 2012 OMRON Corporation. All Rights Reserved.
2
[D6T]
Application Note No.MDMK-12-0274
3.通信方法
この章では通信方法について説明します。
外観図
I/O ピン
GND
Ground
VCC
5V +/-10%
SDA
I2C(5V) Data line
SCL
I2C(5V) Clock line
Copyright © 2012 OMRON Corporation. All Rights Reserved.
3
[D6T]
Application Note No.MDMK-12-0274
電気接続 1
5V および 3V 電源を使用した場合の接続例
ケース 1:
5V MCU (Direct)
ケース 2:
3V MCU (5V tolerant I2C port)
Copyright © 2012 OMRON Corporation. All Rights Reserved.
4
[D6T]
Application Note No.MDMK-12-0274
電気接続 2
ケース 3: I2C コンバータを使用した場合の接続例
(not 5V tolerant port)
(other LV device is exist)
I2C ポートの設定
Address bit width
7bit (0001_010b)
Data bit width
8bit (MSB-first)
Clock Frequency
max 100kHz
Control for Clock-stretching
On (Auto waiting)
I2C:(Inter-Integrated Circuit)はフィリップス社で開発された周辺デバイスとのシリアル通
信の方式
Copyright © 2012 OMRON Corporation. All Rights Reserved.
5
[D6T]
Application Note No.MDMK-12-0274
測定値の取得例
// I2C communication functions
extern
void
I2C_start();
extern
void
I2C_repeatstart();
extern
void
I2C_stop();
extern
void
I2C_send1( char addr8 , char cmd );
extern
void
I2C_getx( char addr8 , char buff[] , int length );
extern
int
D6T_checkPEC( char buf , int pPEC );
// Global var.
extern
char
readbuff[35];
extern
int
tPTAT;
extern
int
tP[16];
extern
int
tPEC;
int
{
D6T_getvalue()
I2C_start();
I2C_send1( 0x14 , 0x4C ); // 14h = { 0Ah(Addr7) : Write(0b) }
I2C_repeatstart();
I2C_getx( 0x15 , readbuff , 35 ); // 15h = { 0Ah(Addr7) : Read(1b) } ,
35 = 2*(1+16)+1
I2C_stop();
If(!D6T_checkPEC(readbuff,34)){
return -1; // error
}
tPTAT = 256*readbuff[1] + readbuff[0];
tP[0] = 256*readbuff[3] + readbuff[2];
tP[1] = 256*readbuff[5] + readbuff[4];
tP[2] = 256*readbuff[7] + readbuff[6];
tP[3] = 256*readbuff[9] + readbuff[8];
tP[4] = 256*readbuff[11] + readbuff[10];
tP[5] = 256*readbuff[13] + readbuff[12];
tP[6] = 256*readbuff[15] + readbuff[14];
tP[7] = 256*readbuff[17] + readbuff[16];
tP[8] = 256*readbuff[19] + readbuff[18];
tP[9] = 256*readbuff[21] + readbuff[20];
tP[10] = 256*readbuff[23] + readbuff[22];
tP[11] = 256*readbuff[25] + readbuff[24];
tP[12] = 256*readbuff[27] + readbuff[26];
tP[13] = 256*readbuff[29] + readbuff[28];
tP[14] = 256*readbuff[31] + readbuff[30];
tP[15] = 256*readbuff[33] + readbuff[32];
tPEC = readbuff[34];
return 1;
}
Copyright © 2012 OMRON Corporation. All Rights Reserved.
6
[D6T]
Application Note No.MDMK-12-0274
measure()
{
n = 0;
do{
status = D6T_getvalue();
n++;
}while(status < 0 && n < LOOPLIMIT);
If(status < 0){
// error operation.
}
printf(“ %d, %d,%d,%d,%d,%d,%d,%d,%d ,%d,%d,%d,%d,%d,%d,%d,%d ,%d\n” ,
tPTAT,tP[0],tP[1],tP[2],tP[3],tP[4],tP[5],tP[6],tP[7]
,tP[8],tP[9],tP[10],tP[11],tP[12],tP[13],tP[14],tP[15],tPEC);
Output Example:
223 ,224,224,273,335,239,221,240,297 ,264,232,221,254,299,258,229,233 ,80
223 ,271,261,265,304,284,270,264,274 ,302,285,271,260,319,304,286,269 ,193
223 ,296,273,285,311,306,291,281,301 ,311,310,293,296,312,322,311,302 ,83
Signal chart
“S/Sr”
“P”
“W/R”
: Start Condition / Repeat Start Condition
: Stop Condition
: Write (Lo) / Read (Hi)
Copyright © 2012 OMRON Corporation. All Rights Reserved.
7
[D6T]
Application Note No.MDMK-12-0274
PEC チェックルーチン例
PEC 値を使用して、ユーザーがデータの妥当性を確認することができます。(SMBus 仕様を
参照してください。)
PEC:Packet Error Checking
unsigned char calc_crc( unsigned char data )
{
int index;
unsigned char temp;
for(index=0;index<8;index++){
temp = data;
data <<= 1;
if(temp & 0x80) data ^= 0x07;
}
return data;
}
int D6T_checkPEC( char buf , int pPEC );
{
unsigned char crc;
int i;
crc = calc_crc( 0x14 );
crc = calc_crc( 0x4C ^ crc );
crc = calc_crc( 0x15 ^ crc );
for(i=0;i<pPEC;i++){
crc = calc_crc( readbuff[i] ^ crc );
}
return (crc == readbuff[pPEC]);
}
PEC:Packet Error Checking
Copyright © 2012 OMRON Corporation. All Rights Reserved.
8
[D6T]
Application Note No.MDMK-12-0274
待ち状態のルーチン検出例(クロックストレッチ)
スレーブ(センサ)からマスター(MCU)への要求待ち
マスター
a)
スレーブ (センサ)
SCL drive to Lo for Ack.
Checking SCL status.(Lo)
b)
c)
SCL output change to Hi-Z.
d)
Checking SCL status.(Hi)
f)
g)
SCL drive to Lo for Wait.
Wait...
e)
SCL output change to Hi-Z.(Wait finish)
Finish Detected.
Next operation.
Copyright © 2012 OMRON Corporation. All Rights Reserved.
9
[D6T]
Application Note No.MDMK-12-0274
4. サーマルセンサの視野角
視野角はセンサの角度を変化させた場合の最大センサ出力を基準として、その 50%以上
のセンサ出力が得られる角度範囲をその Pixel の視野角と定義します。
中心角は各 Pixel の最大センサ出力時の角度と光軸の角度差と定義します。
Direction X
Direction Y
D6T-44L
(4x4)
D6T-8L
1x8
Copyright © 2012 OMRON Corporation. All Rights Reserved.
10
[D6T]
Application Note No.MDMK-12-0274
5.温度検出の距離と範囲
センサはターゲットエリアの平均温度を検出するため、検出温度は対象物の近さに応じて
高くなります。
Copyright © 2012 OMRON Corporation. All Rights Reserved.
11
[D6T]
Application Note No.MDMK-12-0274
6.人体の温度検出イメージ (1x8 array)
床温度と人物の温度を性格に検知する事ができます。
人が存在する場合でも床温度を正しく検出する事ができます。
7.人体の温度検出イメージ (4x4 array)
4x4 array センサは各要素の 16 の温度値の合計を出力します。人間が存在する場合に高
い温度が観測されています。
Copyright © 2012 OMRON Corporation. All Rights Reserved.
12
[D6T]
Application Note No.MDMK-12-0274
8.人検知イメージ (4x4 素子)
熱画像は、より正確な人物検出に使用することができます。
右下の図は、4x4 素子の 16 の温度出力から計算された熱画像の例を示します。
Copyright © 2012 OMRON Corporation. All Rights Reserved.
13
[D6T]
Application Note No.MDMK-12-0274
9.人検知の違い
オムロンのサーマルセンサは従来の焦電センサと比べて人検出に大きな利点があります。
オムロンのサーマルセンサは人間(物質)の存在を検出することができるのに対して焦電セ
ンサは、温度変化を検出します。よって人間が静止している場合、焦電センサは信号を失
いますが、オムロンのサーマルセンサは、人見地状態を保持します。
Copyright © 2012 OMRON Corporation. All Rights Reserved.
14
[D6T]
Application Note No.MDMK-12-0274
More Information
z オムロン電子部品情報サイト
http://www.omron.co.jp/ecb/index.html
z お問い合わせ
商品の納期、価格、サンプル、仕様書については、貴社のお取引先、または貴社担当オムロン
営業員までご相談ください。
¾
営業拠点
http://www.omron.co.jp/ecb/service/network.html
¾
メールでのお問合せ
http://www.omron.co.jp/ecb/contact/index.html
¾
電話でのお問い合わせ
マイクロデバイス事業部
Tel: 077-588-9200
〒520-2326 滋賀県市野洲市市三宅 686-1
Revision
DATE
Note
Rev 1.0
July 1,2012
New Released
Notice; Data and specifications are subjected to change without notice.
Copyright © 2012 OMRON Corporation. All Rights Reserved.
15