Thermal Array Sensor D6T-44L-06
オムロンの「MEMS非接触温度センサ D6T-44L-06」を入手したので、mbedで操作してみた。 http://www.omron.co.jp/ecb/products/sensor/
現時点(2012年末)では、Digikey、MOUSERでは取り扱っているが、日本の主な通販では載っていない。
接続は、5V電源とI2Cの合計4本。Board☆Orangeに接続した。
通信&換算部分は、こんなかんじ
I2C i2c(p9, p10); // sda, scl #define D6T_addr 0x14 #define D6T_cmd 0x4c int main() { char I2C_rd[64]; // 生データ short datr[16]; // 16点 温度データ(10倍整数) short PTAT; // センサ内部PTAT温度データ(10倍整数) double dt[16]; // 16点 温度データ(浮動) double d_PTAT; // センサ内部PTAT温度データ(浮動) int i,j; int itemp; while(1) { //// measure i2c.start(); i2c.write(D6T_addr); i2c.write(D6T_cmd); // Repeated Start condition i2c.read(D6T_addr,I2C_rd,35); if(check_PEC(I2C_rd) == -1) continue; // error for(i=0,j=0;i<17;i++){ itemp = (I2C_rd[j++] & 0xff); itemp += I2C_rd[j++] * 256; if(i == 0) PTAT = itemp; else datr[i-1] = itemp; } for(i=0;i<16;i++){ dt[i] = 0.1 * datr[i]; } d_PTAT = 0.1 * PTAT; ; wait(0.1); // Loop wait } }
LCDにとりあえず16点を棒グラフで表示してみた。4行表示できたらよかったんだけど。
Please log in to post comments.