概要
購入はこちらから
SEMITEC社の超薄型サーミスタ 103JT-050を採用した温度計です。
仕様上、-50~125℃までの温度に対応します。
温度の数値データが、Grove互換端子(デフォルトで電源5V・信号線3.3VのM5Stack仕様)からI2C出力されます。はんだジャンパで信号線5Vに変更可能
I2Cアドレスは デフォルトで0x51。はんだジャンパで0x07,0x2A,0x34,0x4Dのいずれかに変更が可能
本体基板は透明収縮チューブで保護されています。
充電池パックやマイコン・MOSFETなどの発熱の計測に。M5Stackで計測器の作成に。
仕様
- 温度センサ: SEMITEC社の超薄型サーミスタ 103JT-050
- 測距範囲: -50℃ ~ 125℃
- 電源電圧5V 信号レベル3.3V(デフォルト。5Vに変更可能)Grove互換端子コネクタ
- I2C通信インターフェース(アドレス:0x51。変更可能)
- 制御マイコン: ATmega328P
- 表示: 動作確認用LED
基板の説明
- サーミスタ ・・・ 先端部分で温度を測ります。150℃以上になるとフィルム部分が溶ける事がありますので、ご注意ください。
- Working LED ・・・ 内蔵マイコンの準備が出来たら点灯します。I2C経由でアクセスがあり温度データを送っている時には一瞬消灯します。
- ICSP ・・・ ピッチは1.27mmで信号線は、▶側から5V・GND・RESET・SCK・MOSI・MISOです。
- FTDI Basic ・・・ ピッチは1.27mmで信号線は、▶側からRESET・TX・RX・5V・GND・GNDです。
- Logic level 5V ・・・ オープンで信号線(SDA・SCL)は3.3Vです。はんだジャンパでショートすると5Vになります。
- I2C Address ・・・ オープンでI2Cアドレスは0x51です。他のアドレスにしたい場合は、1か所のみにはんだジャンパーでショートします。
- ※はんだジャンパーは透明収縮チューブを剥がす必要があります。基板や部品を傷付けないように注意が必要です。
ギャラリー
プログラム
温度データの取得には、本ユニットのI2Cアドレス宛てに2Byteの要求をします。本ユニットは16Bit(8Bit×2)のデータを送信します。下位Byte、上位Byteの順番です。上位Byteの最上位Bitは0であればプラス値、1であればマイナス値です。マイナス値を求めるには、(上位Byte×0x100)+下位Byteして2の補数を求め、プラス1をして1/100します。
M5Stack用のArduinoIDEプログラムのサンプルを下に示します。
/* M5Stack用 */
#define I2C_NTC 0x51
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.setTextColor(YELLOW);
M5.Lcd.setTextSize(3);
M5.Lcd.fillScreen(BLACK);
}
void loop() {
M5.Lcd.clear(BLACK);
M5.Lcd.setCursor(0, 0);
M5.Lcd.println("NTC Thermistors-Grove");
Wire.requestFrom(I2C_NTC, 2);
float temperature = 0;
while(Wire.available()){
byte data00 = Wire.read();
byte data01 = Wire.read();
if((data01 & 0b10000000) == 0b10000000){
//マイナス値
int16_t ssss = (data00 + (data01 * 0x100));
temperature = (float)((~ssss + 1) * (-1)) / 100;
}else{
//プラス値
temperature = (float)(data00 + (data01 * 0x100)) / 100;
}
}
M5.Lcd.print(temperature,2);
M5.Lcd.println("");
delay(1000);
}
購入はこちらから