非接触で対象の温度を計測するには赤外線センサを用います。Melexis社のMLX90614ESF、MLX90615が,I2C対応でArduinoにも直結でき使用しやすいです。いずれも,物体温度と環境温度を計測できます。
・MLX90614のサンプルコード
MLX90614ライブラリ:https://github.com/sparkfun/SparkFun_MLX90614_Arduino_Library
#include <Wire.h> // I2C library, required for MLX90614
#include <SparkFunMLX90614.h> // SparkFunMLX90614 Arduino library
IRTherm therm; // Create an IRTherm object to interact with throughout
void setup() {
Serial.begin(9600); // Initialize Serial to log output
therm.begin(); // Initialize thermal IR sensor
therm.setUnit(TEMP_C); // Set the library's units to Farenheit
}
void loop() {
if (therm.read()) {
Serial.print("Ambient = ");
Serial.print(therm.ambient());
Serial.print(" *C\tObject = ");
Serial.print(therm.object());
Serial.println(" *C");
}
}・MLX90615のサンプルコード
MLX90615ライブラリ:https://github.com/skiselev/MLX90615
#include <Wire.h>
#include <mlx90615.h>
MLX90615 mlx = MLX90615();
void setup() {
Serial.begin(9600);
mlx.begin();
}
void loop() {
Serial.print("Ambient = ");
Serial.print(mlx.get_ambient_temp());
Serial.print(" *C\tObject = ");
Serial.print(mlx.get_object_temp());
Serial.println(" *C");
delay(500);
}



コメント